C语言中的FOR循环问题

2025-03-06 18:57:35
推荐回答(5个)
回答1:

一楼的回答错了。

楼主,你理解的是对的,最后那个分号相当于空语句,而且你所要操作的内容已经在FOR的小括号里了。只要你不输入回车符,那就会一直在等着你输入,输入的不是回车,就加到I中,当然,I如果是字符型数据,肯定会溢出的。以上语句解析出来相当于:

for (i=0; ; )
{
c=getchar();
if(c!='\n')
continue;
else
break;
i=i+c;
}

回答2:

它是判断你输入地是否是回车键,你输入回车键时实际是以字符形式输入,是不回停的。键盘上每个键位的字符已经预先经过编码,因为你接收时是以字符char格式接收,所以输入什么字符它直接就是什么字符并以相应的ASCLL码值存储。这是一种函数对应关系。希望对你有所帮助。

回答3:

把最后的分号去掉就不会循环了

回答4:

只要不输入回车,就会一直循环!

回答5:

\n就是回车,只要不输入回车,它们就把ASCII码相加。