4个回答
展开全部
一个问题是case少了break,另一个问题是while语句中=的优先级比!=低,ch是得不到正确的输入值的。试试下面的代码:
int main()
{
int c1 = 0, c2 = 0;
char ch;
while ((ch=getchar())!='#')
switch (ch)
{
case 'a':
case 'h':
c1++;
break;
default:
c2++;
}
printf("c1=%d,c2=%d\n", c1, c2);
return 0;
}
int main()
{
int c1 = 0, c2 = 0;
char ch;
while ((ch=getchar())!='#')
switch (ch)
{
case 'a':
case 'h':
c1++;
break;
default:
c2++;
}
printf("c1=%d,c2=%d\n", c1, c2);
return 0;
}
追问
getchar not declared
有问题
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
case关键字要和break配对使用,当然如果多个case用一个程序块,那也可以只用一个break。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个问题实在是太难了,同情你。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以在相关论坛去询问,哪里大佬挺多的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询