请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续判断第二个字母。
程序是正确的,但是运行的时候总是出问题,麻烦大神把看看哈。#include<stdio.h>intmain(){charletter;printf("pleaseinpu...
程序是正确的,但是运行的时候总是出问题,麻烦大神把看看哈。
#include<stdio.h>
int main()
{
char letter;
printf("please input first English letter:\n");
while((letter=getchar())!='Y')
{ switch (letter)
{
case 'S':printf("please input second English letter:\n");
if((letter=getchar())=='a')
printf("the day is Saturday\n");
else if((letter=getchar())=='u')
printf("the day is Sunday\n");
else printf("data error\n");
break;
}
}
}
由于字数限制我删减了一些,但就是这个case ‘S’和另一个case‘T’,两个问题是一样的,所以我删了。麻烦啦。。。 展开
#include<stdio.h>
int main()
{
char letter;
printf("please input first English letter:\n");
while((letter=getchar())!='Y')
{ switch (letter)
{
case 'S':printf("please input second English letter:\n");
if((letter=getchar())=='a')
printf("the day is Saturday\n");
else if((letter=getchar())=='u')
printf("the day is Sunday\n");
else printf("data error\n");
break;
}
}
}
由于字数限制我删减了一些,但就是这个case ‘S’和另一个case‘T’,两个问题是一样的,所以我删了。麻烦啦。。。 展开
展开全部
/*经测试,没有问题,希望能帮到你!*/
#include<stdio.h>
int main()
{
char letter = '\0';
char let = '\0'; //用一个变量来储存另外一个字符;
printf("please input first English letter:\n");
while((letter=getchar())!='Y')
{
switch (letter)
{
case 'S':
printf("please input second English letter:\n");
fflush(stdin); //清除键盘缓存;
if((let = getchar())== 'a')
printf("the day is Saturday\n");
else if(let == 'u') //let已经有值了,不需要再赋值了;
printf("the day is Sunday\n");
break;
}
}
return 0;
}
追问
谢谢,我试了,杠杆滴。
我发现我的代码加了fflush(stdin); //清除键盘缓存; 也可以,结果一样一样的。
可以问下,这是为什么吗?
非常感谢。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询