若有以下程序 #include main() { char a[20], b[ ]="The sky is blue."; int i; for (i=0; i

admin2020-05-19  26

问题 若有以下程序
#include
main()
{ char a[20], b[ ]="The sky is blue."; int i;
for (i=0; i<7; i++) scanf("%c", &b);
gets(a); printf("%s%s\n", a,b);
}
执行时若输入: (其中表示回车符)
Fig flower is red.
则输出结果是( )。

选项 A、wer is red.Fig flo is blue.
B、wer is red.Fig flo
C、wer is red.The sky is blue.
D、Fig flower is red.The sky is blue.

答案A

解析 该程序段中,输入函数scanf()读入共7个字符,分别是Fig flo,这些字符覆盖掉数组b中的前7个字符,所以for循环结束后,b中元素为"Fig flo is blue."。gets()函数则会将剩余的字符串读入到字符数组a中,所以a中存入的字符串为"wer is red."。所以答案选A。
转载请注明原文地址:https://kaotiyun.com/show/oNCp777K
0

最新回复(0)