我用 C 编写了一个程序来计算从标准输入输入的字符。我想使用一个循环来允许多个条目。(注意:我是编程新手。)
main()
{
long nc;
int c;
int kc=1;
for (kc=1;kc<=5;kc=kc+1)
{
nc=0;
c= getchar();
while(c != '0')
{
++nc;
c=getchar();
}
printf("%1d\n",nc);
}
return 0;
}
所以基本上正如你所猜测的那样,循环接受 5 个条目。
问题:当我输入Sky0
第一个结果时,3。但从那时起,计数中增加了一个。即输入dame0
导致计数5
,sit0
导致计数4
等。
在尝试在各个阶段使用 prinf 调试问题时,我意识到在第一个结果之后,代码找到了输入的结尾,但进入 for 循环 NEVERTHELESS 并使用as0
等待下一个条目。这会导致相应输出中的错误。nc
1
请告诉我哪里出错了?为什么它在感应后仍进入循环0
?
非常感谢您的帮助和时间:)