C语言求解!!!谢谢!!!
#include<stdio.h>intmain(void){charletter;printf("Pleaseinput:");letter=getchar();swi...
#include <stdio.h>
int main(void)
{
char letter;
printf("Please input:");
letter = getchar();
switch(letter)
{
case 'M':
{
printf("Monday!\n");break;
}
case 'T':
{
printf("Please input the second letter:");
if((letter=getchar())=='h')
printf("Thursday!\n");
else if((letter=getchar())=='u')//为什么输入'u'没有输出,输出的是‘Error’
printf("Tuesday!\n");
else
printf("Error!\n");
break;
}
case 'W':
{
printf("Wednesday!\n");break;
}
case 'F':
{
printf("Friday!\n");break;
}
case 'S':
{
printf("Please input the second letter:");
if((letter=getchar())=='u')
printf("Sunday!\n");
else if((letter=getchar())=='a')//为什么输入'a'没有输出,输出的是‘Error’
printf("Satuaday!\n");
else
printf("Error!\n");
break;
}
default :
printf("Error!");
break;
}
return 0;
}
程序的功能是:输入星期的首字母,判断是星期几,如果第一个字母相同,则输入第二个字母,判断是星期几,为题请见注释行!还请详解,谢谢! 展开
int main(void)
{
char letter;
printf("Please input:");
letter = getchar();
switch(letter)
{
case 'M':
{
printf("Monday!\n");break;
}
case 'T':
{
printf("Please input the second letter:");
if((letter=getchar())=='h')
printf("Thursday!\n");
else if((letter=getchar())=='u')//为什么输入'u'没有输出,输出的是‘Error’
printf("Tuesday!\n");
else
printf("Error!\n");
break;
}
case 'W':
{
printf("Wednesday!\n");break;
}
case 'F':
{
printf("Friday!\n");break;
}
case 'S':
{
printf("Please input the second letter:");
if((letter=getchar())=='u')
printf("Sunday!\n");
else if((letter=getchar())=='a')//为什么输入'a'没有输出,输出的是‘Error’
printf("Satuaday!\n");
else
printf("Error!\n");
break;
}
default :
printf("Error!");
break;
}
return 0;
}
程序的功能是:输入星期的首字母,判断是星期几,如果第一个字母相同,则输入第二个字母,判断是星期几,为题请见注释行!还请详解,谢谢! 展开
2个回答
展开全部
#include <stdio.h>
int main(void)
{
char letter;
printf("Please input:\n");
letter = getchar();
switch(letter)
{
case 'M':
case 'm':
{
printf("Monday!\n");break;
}
case 'T':
case 't':
{
printf("Please input the second letter:\n");
getchar();
letter = getchar();
if(letter=='h'||letter=='H')
printf("Thursday!\n");
else if(letter=='u'||letter=='U')
printf("Tuesday!\n");
else
printf("Error!\n");
break;
}
case 'W':
case 'w':
{
printf("Wednesday!\n");break;
}
case 'F':
case 'f':
{
printf("Friday!\n");break;
}
case 'S':
case 's':
{
printf("Please input the second letter:\n");
getchar();
letter = getchar();
if(letter=='u'||letter=='U')
printf("Sunday!\n");
else if(letter=='a'||letter=='A')
printf("Satuaday!\n");
else
printf("Error!\n");
break;
}
default :
printf("Error!\n");
break;
}
return 0;
}
不懂请追问,满意请采纳,谢谢
int main(void)
{
char letter;
printf("Please input:\n");
letter = getchar();
switch(letter)
{
case 'M':
case 'm':
{
printf("Monday!\n");break;
}
case 'T':
case 't':
{
printf("Please input the second letter:\n");
getchar();
letter = getchar();
if(letter=='h'||letter=='H')
printf("Thursday!\n");
else if(letter=='u'||letter=='U')
printf("Tuesday!\n");
else
printf("Error!\n");
break;
}
case 'W':
case 'w':
{
printf("Wednesday!\n");break;
}
case 'F':
case 'f':
{
printf("Friday!\n");break;
}
case 'S':
case 's':
{
printf("Please input the second letter:\n");
getchar();
letter = getchar();
if(letter=='u'||letter=='U')
printf("Sunday!\n");
else if(letter=='a'||letter=='A')
printf("Satuaday!\n");
else
printf("Error!\n");
break;
}
default :
printf("Error!\n");
break;
}
return 0;
}
不懂请追问,满意请采纳,谢谢
追问
case 'T':
case 't':
{
printf("Please input the second letter:\n");
getchar();//为什么需要这行代码?
letter = getchar();
if(letter=='h'||letter=='H')
printf("Thursday!\n");
else if(letter=='u'||letter=='U')
printf("Tuesday!\n");
else
printf("Error!\n");
break;
}
您好,请问下上面注释行是什么意思?
追答
因为你输入了一个英文后,会按一个回车吧。。getchar();//为什么需要这行代码?
这行代码就是把回车冲掉,不然回车符就被letter截取了,然后程序就出错,对用getchar函数进行输入是都要注意到这个情况,还有就是要把条件考虑的细致一点,像
case 'T':
case 't':
这个一样。。。。不懂还可以追问,满意请采纳赞同,谢谢
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询