问题
单项选择题
设有定义:char s[81]; int i=10;,以下不能将一行(不超过80个字符)带有空格的字符串正确读入的语句或语句组是
A.gets(s);
B.while((s[i++]=getchar())!='\n'); s[i]='\0';
C.scanf("%s", s);
D.do{ scanf("%C", &s[i]);} while(s[i++]!='\n'); s='\0';
答案
参考答案:C
解析: 在scanf中,采用“%s”格式符将整个字符串一次输入,直到遇到空格或制表符为止。对于选项C,不能正确读入带有空格的字符串。