问题
单项选择题
执行下列程序时输入:123<空格>456<空格>789<回车>,输出结果是 ______。
main()
char s[100];int c,i;
scanf("%c",&c);
scanf("%d",&i);
scanf("%s",s);
printf("%c,%d,%s\n",c,i,s);
A) 123,456,789
B) 1,456,789
C) 1,23,456,789
D) 1,23,456
答案
参考答案:D
解析: 根据给定的数据输入格式:123<空格>456<空格>789<回车>,第一个scanf语句中,格式字符为“%c”,只能得到一个字符'1',第二个scanf语句中格式字符为“%d”,变量i得到的数值为23,第三个scanf语句中格式字符为“%s”,遇到空格就自动结束,因此字符数组s得到的是"456\0”。因而正确答案为选项D。