while((ch=getchar())!='\n')是什么意思

RT。

while((ch=getchar())!='\n')意思就是输入的字符不是换行符,则为真,执行while里的语句块。

ch=getchar(),输入一个字符且将该值赋予给变量ch;ch=getchar())!='\n'意思是ch不等于换行符。

()圆括号的优先级>不等于。

getchar是读入函数的一种。它从标准输入里读取下一个字符,相当于getc(stdin)。返回类型为int型,为用户输入的ASCII码或EOF。

扩展资料:

基本的优先级需要记住:

优先级从上到下依次递减,最上面具有最高的优先级,逗号操作符具有最低的优先级。

指针最优,单目运算优于双目运算。如正负号

先算术运算,后移位运算,最后位运算。请特别注意:1 << 3 + 2 & 7等价于 (1 << (3 + 2))&7.

逻辑运算最后结合。

简单记就是:括号> ! > 算术运算符 > 关系运算符 > && > || > 赋值运算符。

参考资料:

百度百科-运算符优先级

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2018-02-27
这样就表示你输入回车就跳出循环
这段代码解析为
将getchar()读取键盘输入的值赋给ch,然后在判断ch !='\n'
你看一下括号配对也可以理解了本回答被提问者采纳
第2个回答  2010-11-08
循环读取一个字符,直到读取到'\n'结束('\n'也就是回车)本回答被网友采纳
第3个回答  2010-11-08
ch应该是前边定义的一个char型变量,
getchar()是一个从缓冲区获取字符的函数,
\n是换行的转义字符,
相对完整的程序块应该是:
char ch;
while( ( ch=getchar() ) != '\n' ) {
//your code here
………… //用A代表这条语句
}
翻译一下你的句子就是:
当你从键盘输入的字符不是换行(回车)时,执行A代码。
第4个回答  2010-11-08
重复读入一个字符,将读入的字符赋给ch,若读到回车符'\n',就结束循环。
相似回答