为什么C语言的ch会为负数?

如题所述

第1个回答  2023-12-27
这个考的比较综合。答案中ch值为0是正确的。
知识点1,==优先级高于=,所以语句优先执行后面的getchar()=='A',输入A后,第一次判断结果是相等的,此时ch=1。但是此时还没有结束。
知识点2,注意到这个while语句只有条件,没有{}括号中的循环体了吗?while()之后直接分号结尾,说明他的循环体是一个空语句。如果while()括号中的值非零,他会一直循环到0才会停止。
回到这个题目,刚才说到第一次ch=1,()条件非零,继续循环。第二次他会取回车符(ASCII码值为13)进行判断,显然第二次getchar()=='A'不成立,值为0。所以,while循环完毕之后,ch的值最终为0。

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网