下面是我的代码,请大神说一下哪里错了,在输入TtSs这四个字母时,继续输入第二个字母,程序分辨不了星期四和星期六
#include<stdio.h>
#include<conio.h>
void main()
{ char c;
printf("请输入第一个字母");
while((c=getche())!=0)
{ printf("\n");
switch(c)
{ case 'M':printf("星期一\n");break;
case 'm':printf("星期一y\n");break;
case 'T':printf("请输入第二个字母");
if((c=getche())=='u'||'U') printf("星期二\n");
else if((c=getche())=='h'||'H') printf("\n星期四\n");
else printf("data error\n");
break;
case 't':printf("请输入第二个字母");
if((c=getche())=='u'||'U') printf("\n星期二\n");
else if((c=getche())=='h'||'H') printf("\n星期四\n");
else printf("data error\n");
break;
case 'W':printf("\n星期三");break;
case 'w':printf("星期三");break;
case 'F':printf("星期五\n");break;
case 'f':printf("星期五\n");break;
case 'S':printf("请输入第二个字母");
if((c=getche())=='U'||'u') printf("\n星期天\n");
else if((c=getche())=='a'||'A') printf("\n星期六\n");
else printf("输入错误\n");
break;
case 's':printf("请输入第二个字母");
if((c=getche())=='u'||'U') printf("\n星期天\n");
else if((c=getche())=='a'||'A') printf("\n星期六\n");
else printf("输入错误\n");
break;
default:printf("输入错误");break;
}
}
}
#include<stdio.h>
#include<conio.h>
main()
{ char c;
printf("请输入第一个字母");
while((c=getche())!=0)
{ printf("\n");
switch(c)
{ case 'M':case 'm':printf("星期一\n");break;
case 'T':case 't':printf("请输入第二个字母");
if((c=getche())=='u'||c=='U') printf("\n星期二\n",c);
else if(c=='h'||c=='H') printf("\n星期四\n");
else printf("data error\n");
break;
case 'W':case 'w':printf("星期三");break;
case 'F':case 'f':printf("星期五\n");break;
case 'S':case 's':printf("请输入第二个字母");
if((c=getche())=='U'||c=='u') printf("\n星期天\n");
else if(c=='a'||c=='A') printf("\n星期六\n");
else printf("输入错误\n");
break;
default:printf("输入错误");break;
}
}
}
dic1 = {"星期一": "mo", "星期二": "tu", "星期三": "we", "星期四": "th", "星期五": "fr", "星期六": "sa", "星期日": "su"}
s1 = input("请输入第一个字母:")
li = []
for i in dic1.items():
if s1 == i[1][0]:
li.append(i[0])
if len(li) == 1:
print(li[0])
elif len(li) == 2:
s2 = input("请输入第二个字母:")
for i in li:
if s2 == dic1[i][1]:
print(i)本回答被网友采纳