qingchen 发表于 2013-12-26 18:29:31

来人帮看看!!

#include<stdio.h>
void main()
{
char c,ch;
      printf("输入第一个字母:");
      scanf("%c",&c);
      if(c=='m'||c=='M')
            printf("星期一\n");
      else if(c=='t'||c=='T')
      {
            printf("输入第二个字母:");
            scanf("%c",&c);
            if(c=='u'||c=='U')
                  printf("星期二\n");
            else if(c=='h'||c=='H')
                  printf("星期四\n");
      }
      else if(c=='w'||c=='W')
            printf("星期三\n");
      else if(c=='f'||c=='F')
            printf("星期五\n");
      else if(c=='s'||c=='S')
      {
            printf("输入第二个字母:");
            scanf("%c",&c);
            if(c=='a'||c=='A')
                  printf("星期六\n");
            else if(c=='u'||c=='U')
                  printf("星期天\n");
      }
      else
            printf("输入错误!\n");
}

题目是输入英文单词的第一个字母来判断星期几如果第一个一样就判断第二个!!
我发现第二个scanf不能输入,星期一、星期三、星期五都可以弄出来就是星期二、四。六、天不能弄出,请广大鱼友看看出啥问题了!!十分感谢!!

向往青莲 发表于 2013-12-26 18:29:32

本帖最后由 向往青莲 于 2013-12-26 19:13 编辑

因为你输入第一个字母时会按空格。。。也就是enter键。。。所以只需要过滤掉enter键就行
我给你改了一下的程序吧。。#include<stdio.h>
void main()
{
      char c,ch;
      printf("输入第一个字母:");
      scanf("%c",&c);
      c = getchar(); //过滤空格(enter)键
      if(c=='m'||c=='M')
                printf("星期一\n");
      else if(c=='t'||c=='T')
      {
                printf("输入第二个字母:");
                scanf("%c",&c);
                c = getchar();//过滤掉Enter键
                if(c=='u'||c=='U')
                        printf("星期二\n");
                else if(c=='h'||c=='H')
                        printf("星期四\n");
      }
      else if(c=='w'||c=='W')
                printf("星期三\n");
      else if(c=='f'||c=='F')
                printf("星期五\n");
      else if(c=='s'||c=='S')
      {
                printf("输入第二个字母:");
                scanf("%c",&c);
                c = getchar();//过滤掉Enter键
                if(c=='a'||c=='A')
                        printf("星期六\n");
                else if(c=='u'||c=='U')
                        printf("星期天\n");
      }
      else
                printf("输入错误!\n");
}

qingchen 发表于 2013-12-26 20:52:28

向往青莲 发表于 2013-12-26 18:29 static/image/common/back.gif
因为你输入第一个字母时会按空格。。。也就是enter键。。。所以只需要过滤掉enter键就行
我给你改了一下的 ...

嗯发帖后突然我就想到了这个,不过还是十分感谢!
页: [1]
查看完整版本: 来人帮看看!!