单选题
设有定义: char s[10];int i=0;,以下不能将一行(不超过100个字符)带有空格的字符串正确读入的语句或语句组是( )。
A、
gets(s);
B、
scanf("%s",s);
C、
while((s[i++]=getchar())!='/n'); s[i]='/0';
D、
do{ scanf("%c",&s[i]);}while(s[i++]!='/n'); s[i]='/0';
【正确答案】
B
【答案解析】
解析:本题考查标准输入输出函数和循环语句。gets(s)函数的作用是将输入的字符读入字符串s,直到遇到回车。而scanf()函数接收字符串时的结束标志为回车或者空格。因此选项B)不能,选项C)和选项D)中按字符逐个读入字符串s中,直到读入的字符是换行符为止,因此正确。
提交答案
关闭