c语言的题,求大神解答

如题所述

解:1、A项错误:有些不可见字符可放入缓冲区,例如:回车、空格。
B项错误:有些输入函数有缓冲区,有些没有,例如:getchar() 有缓冲区,getch() 无缓冲区,getche() 无缓冲区。
C项错误:缓冲区不需要定义。
所以选D。
2、getchar()函数有缓冲区。getchar函数的返回值是用户输入的字符的ASCII码,若文件结尾则返回-1(EOF),且将用户输入的字符回显到屏幕。如用户在按回车之前输入了不止一个字符,其他字符会保留在键盘缓存区中,等待后续getchar调用读取。也就是说,后续的getchar调用不会等待用户按键,而直接读取缓冲区中的字符,直到缓冲区中的字符读完后,才等待用户按键。
该程序调用getchar()函数三次,所以getchar()函数依次读取前三个输入的数据,空格也算,所以选B。
3、回车是用\n表示,且((c=getchar())!='\n')注意这里的圆括号不能丢,因为!=的优先级比=高,如果去掉了外面的括号就等价于 c = (getchar()!='\n')。所以选C。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-10-16
答案是BBC,有什么不懂的可以问,第三道题目要在c=getchar()多加一个括号,因为不这样子做的话getchar()!='\n'判断结果赋值给c然后在输出这样子,getchar()
读取任何字符,不懂的再问哦追问

能说一下第二个的思路吗?

本回答被提问者采纳
第2个回答  2019-10-16
我觉得
B,C,A
相似回答