以下不能将键盘输入的字符串:This is a string<回车>读入到str中的程序段是

admin2021-06-15  37

问题 以下不能将键盘输入的字符串:This is a string<回车>读入到str中的程序段是

选项 A、char str[80];  scanf("%s",str) ;
B、char str[80];  int i=0;  while((str[i++]=getchar())!=’\n’);  str=0;
C、char str[80];  gets(str);
D、char str[80], *ps=str;  do{ scanf("%c",ps); } while(*ps++ !=’\n’); *(ps)=0;

答案A

解析 在使用scanf函数时要注意,在输入数据时,遇到空格,或按"回车"键或按"跳格"(Tab)键时该数据认为结束。A选项中输入This后有一个空格,认为数据输入结束,以后的数据不能再读入到str中,故选择A选项。B选项用getchar读入字符,键盘输入的所有字符均被认为是有效字符读入,用while循环控制读入,当读入字符为回车时结束读入,字符串被正确的读入到str中。C选项用gets函数读入字符串,它读入键盘输入的所有字符,遇到回车自动结束读入,所以也能正确读入字符串到str中。D选项用do…while和指针循环控制字符输入,依次判断输入字符是否为回车,若不是回车放入字符数组中,直到读入回车符,结束循环,数组str中正确存放入指定的字符串。
转载请注明原文地址:https://kaotiyun.com/show/80tp777K
0

最新回复(0)