while ((c=getchar())!=' ')什么意思
意思是输入的字符c不为空时执行while的循环语句。
WHILE <条件>
<语句体>
end while
do while <条件>
<语句体>
loop
扩展资料:
语法
1、Pascal
while <条件> do <语句>
意为当条件符合时,接着做下面的语句;不符合时,退出循环。
2、C
do <语句> while(<条件>);
while(<条件>) <语句>;
3、C++
while(<条件>) <语句>;
do <语句> while(<条件>);
4、Java
while(<条件>) {<语句;>}
do {<语句;>} while(<条件>);
二者的区别是do-while最少会被执行一次。
循环中可以使用continue结束当前循环,回到循环开始处开始下一次循环。也可以用break跳出整个循环。
参考资料:百度百科-while
(c=getchar())!=' ')如果c的值不等于空格,执行while循环 ,不断把键盘的值存给c,当从键盘输入的值是空格,c的值就是空格的ASCII码值,此时while循环终止,不再从键盘取得字符赋给c。
相当于:
从键盘输入一个字符 :getchar()
然后把字符的值赋给c :c=getchar()
然后判断c是否等于‘ ’ ,' '代表空格。
扩展资料:
用法注意事项
利用while循环和getchar()读取缓存中的数据时,在while(c = getchar() != ‘\n’)这个语句中,由于运算符的优先级不同,我们先执行“!=”这个判断,在判断结束之后,程序返回0或者1,将其赋值给c。
在ascii码表中,1代表的图案就是笑脸,发现这个优先级顺序的问题也是由于我打印了每一次while语句之后的所有c的值。
而在这个语句中,由于括号有最高的优先级,我们必定先执行括号中的内容,再去判断c是否等于回车,这样肯定已经是吧我们想要的值复制给了c。
从键盘输入一个字符 :getchar()
然后把字符的值赋给c :c=getchar()
然后判断c是否等于‘ ’ ,' '代表空格。 (c=getchar())!=' ')
如果 c的值不等于空格 执行while循环 ,不断把键盘的值存给c,当从键盘输入的值是空格,c的值就是空格的ASCII码值,此时while循环终止,不再从键盘取得字符赋给c。
输入一个字符getchar()
然后把字符的值赋给c c=getchar()
然后判断c是否等于‘ ’ (c=getchar())!=' '
如果 不等于空 执行while循环 否则退出