求大神C语言 输入星期几的第一个字母来判断一下是星期几 ,如果第一个字母一样,则继续判断第二个字母
我编的程序怎么错了该怎么做不要复制别人的#include<stdio.h>main(){chairch;scanf("%c",&ch);if(ch=='m')print(...
我编的程序怎么错了 该怎么做 不要复制别人的
#include<stdio.h>
main()
{
chair ch;
scanf("%c",&ch);
if(ch=='m')print("%c",monday);
if(ch=='t')
scanf("%c",&ch);
{if(ch=='u')printf("%c",tuesday);}
else printf("%c",thursday;
if(ch=='w')printf("%c",wednesday);
if(ch=='f')printf("%c",friday);
if(ch=='s')
scanf("%c",&ch);
{if(ch=='a')printf("%c",satday);}
else printf("%c",sunday);
} 展开
#include<stdio.h>
main()
{
chair ch;
scanf("%c",&ch);
if(ch=='m')print("%c",monday);
if(ch=='t')
scanf("%c",&ch);
{if(ch=='u')printf("%c",tuesday);}
else printf("%c",thursday;
if(ch=='w')printf("%c",wednesday);
if(ch=='f')printf("%c",friday);
if(ch=='s')
scanf("%c",&ch);
{if(ch=='a')printf("%c",satday);}
else printf("%c",sunday);
} 展开
4个回答
展开全部
输入时,为了确保程序正确运行,应该输入一个字母就按一次回车,这样才能保证当首字母唯一确定星期几时,直接输出结果并退出
完整修改如下:
#include<stdio.h>
main()
{
char ch; //不是chair!
scanf("%c%*c",&ch);
if(ch=='m')printf("Monday"); //注意少了个f
else
if(ch=='w')printf("Wednesday");
else
if(ch=='f')printf("Friday");
else
if(ch=='t')
{
scanf("%c%*c",&ch); //%*c意思是输入的字符不存储到任何变量中,也可以起到过滤回车的功效
if(ch=='u') printf("TUesday");
else printf("THursday");
}
else
if(ch=='s')
{
scanf("%c%*c",&ch);
if(ch=='a')printf("SAturday");
else printf("SUnday");
}
printf("\n");
}
完整修改如下:
#include<stdio.h>
main()
{
char ch; //不是chair!
scanf("%c%*c",&ch);
if(ch=='m')printf("Monday"); //注意少了个f
else
if(ch=='w')printf("Wednesday");
else
if(ch=='f')printf("Friday");
else
if(ch=='t')
{
scanf("%c%*c",&ch); //%*c意思是输入的字符不存储到任何变量中,也可以起到过滤回车的功效
if(ch=='u') printf("TUesday");
else printf("THursday");
}
else
if(ch=='s')
{
scanf("%c%*c",&ch);
if(ch=='a')printf("SAturday");
else printf("SUnday");
}
printf("\n");
}
追问
运行出错了 = =
展开全部
把需要输入第二个字符的地方写两次scanf(),可能是因为第一次的回车符被第二次scanf()获取。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
几乎每行都有错误,帮你改正了,错误之处用//表示了:
char ch; //
scanf("%c",&ch);
if(ch=='m')print("%s","monday"); //
if(ch=='t')
{ scanf("%c",&ch); scanf("%c",&ch); //
if(ch=='u')printf("%s","tuesday"); //
else printf("%c","thursday"); //
}
if(ch=='w')printf("%s","wednesday"); //
if(ch=='f')printf("%s", "friday"); //
if(ch=='s')
{ scanf("%c",&ch); scanf("%c",&ch); //
if(ch=='a')printf("%s","satday"); //
else printf("%s","sunday"); //
}
char ch; //
scanf("%c",&ch);
if(ch=='m')print("%s","monday"); //
if(ch=='t')
{ scanf("%c",&ch); scanf("%c",&ch); //
if(ch=='u')printf("%s","tuesday"); //
else printf("%c","thursday"); //
}
if(ch=='w')printf("%s","wednesday"); //
if(ch=='f')printf("%s", "friday"); //
if(ch=='s')
{ scanf("%c",&ch); scanf("%c",&ch); //
if(ch=='a')printf("%s","satday"); //
else printf("%s","sunday"); //
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <stdio.h>
int main()
{
char ch;
scanf("%c",&ch);
if(ch=='m') printf("monday");
if(ch=='t'){
getchar();
scanf("%c",&ch);
if(ch=='u')printf("tuesday");
else printf("thursday");
}
if(ch=='w')printf("wednesday");
if(ch=='f')printf("friday");
if(ch=='s'){
getchar();
scanf("%c",&ch);
if(ch=='a')printf("saturday");
else printf("sunday");
}
}
int main()
{
char ch;
scanf("%c",&ch);
if(ch=='m') printf("monday");
if(ch=='t'){
getchar();
scanf("%c",&ch);
if(ch=='u')printf("tuesday");
else printf("thursday");
}
if(ch=='w')printf("wednesday");
if(ch=='f')printf("friday");
if(ch=='s'){
getchar();
scanf("%c",&ch);
if(ch=='a')printf("saturday");
else printf("sunday");
}
}
追问
我运行了 怎么不对劲
追答
用回车换行,不要加别的符号
如果连续输入两个字母的话 用这个
#include
int main()
{
char ch;
scanf("%c",&ch);
if(ch=='m') printf("monday");
if(ch=='t'){
//getchar();
scanf("%c",&ch);
if(ch=='u')printf("tuesday");
else printf("thursday");
}
if(ch=='w')printf("wednesday");
if(ch=='f')printf("friday");
if(ch=='s'){
//getchar();
scanf("%c",&ch);
if(ch=='a')printf("saturday");
else printf("sunday");
}
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询