for(i=0;(c=getchar())!='\n';i+=c);
来源:百度知道 编辑:UC知道 时间:2024/06/06 15:20:47
这句谁能帮我解释一下啊?
for(i=0;(c=getchar())!='\n';i+=c);
1.i=0; //i初始为0
2.(c=getchar())!='\n'; //从标准输入获取一个字符,并赋值给c,如果该字符不为'\n'[<CR>],执行循环(此处循环为空),如果获取到'\n',跳出循环.
3.i+=c; // i = i+c;,继续第2步
这是一个for循环,只是循环条件有点怪而已,执行步骤:一、i赋值为0二、等待用户输入,并把获得的键盘扫描码赋值给变量c,然后检测c是否是回车换行(回车换行也是字符),如果是就结束循环,如果不是就继续三、i+=c这句也就是i=c+i;这个循环的功能也就是把所有的键盘输入的字符的ASCII码值相加存入变量i直到回车换行为止
相当于下面的:
int i = 0;
char c = getchar();
if( c != '\n' )
{
i = i + c;
}
else
{
//循环结束
}
能解释下for(i=0,(c=chars;c;++i),++c)是什么原理吗?;
for(i=0;(c=getchar())!='\n';i+=c);
这个c程序中为什么要加for(i=0;i<4;i++)这句
五子棋的 C程序中,for(i=0;i<textnum*2+1;i++)是什么意思啊
for(i=0;i<fl_length1;i++
请问,在C语言中,FOR循环可不可以这么写 for(i=0, j=0 ; i<5, j<6 ; i++, j++ ;)
javascript中的for(i=0;i<5;i++)和for(i=0;i<5;++i)区别
for(i=0;i<5;i++) {...} 和 for(i=0;i<5;++i) {...}有区别吗?
c语言里 for(i=1;i<=n;i++)和for(i=1;i<=n;++i)结果一样吗?
c语言中 for(i=0;i<> 是什么意思? 有时还会出现<p>