有以下程序
#include
main()
{ char b[3][10]; int i;
for (i=0; i<2; i++)
scanf("%s", b[i]);
gets(b[2]);
printf("%s%s%s\n", b[0],b[1],b[2]);
}
执行时若从第一列输入:Fig flower is red. <回车>
则输出结果是
A.Figflower is red.
B.Figfloweris red.
C.Figflowerisred.
D.Fig flower is red.
热度🔥842
参考答案:A
解析:
【解析】scanf()函数从输入设备按照指定的类型输入对应类型的若干个数据,遇到空格、制表符和回车时,读取结束。gets()函数从标准输入设备键盘上读取1个字符串(可以包含空格),并将其存储到字符数组中去。此函数的读取结束符是换行符,即当遇到一个换行符时,就停止读操作,并且换行符不能够作为字符串的内容来存储,系统会自动用“\0”来代替。可知读到第一个空格时b[0]赋值结束,为Fig,读到第二个空格时b[1]赋值结束,为flower,退出for循环执行gets()函数,空格为有效字符,b[2]=“ is red.” ,之后打印三个字符串,A选项正确。