懂c语言的人近来~

来源:百度知道 编辑:UC知道 时间:2024/05/26 20:06:17
若 输入字符A 执行
while ( ch=getchar()=='A');
此时 ch的值是:

楼上二三楼说的有道理,但是我感觉好像还有一点解释不通,就是在while的()中应该是一个判断语句,首先执行geuchar() == 'A',然后判断如果用户输入的字符时A则返回Ture,否则返回False。那么接下来就是
while(ch = True或False);这样就变成赋值语句了。如意楼说述我认为或许这样更合理些:
while((ch = getch()) == 'A');

需要理解符号优先级问题,=的优先级比==低,所以先判断输入字符是否是'A',如果是,则返回1给ch,如果不是,则返回0
所以,就是判断输入是否为'A'的一段程序

ps:
to sunny_ghm:
在c语言中,真就返回为1,假则返回为0,
输入时,非0为真,0为假

这个句子难道不是这样的吗?
执行顺序1:getchar()
3:ch=getchar() 将输入的赋值给ch
4: while(ch=='A') 判断ch是否为A
如果输入的不管是不是A,ch的值都会是等于输入的字符

对吗?

楼上的是对的
==优先级比=高
所以先执行getchar()=='A'