问题
单项选择题
有如下程序:
#include <stdio.h>
main()
char c1, c2, c3, c4, c5, c6;
scanf("%c%c%c%c", &c1, &c2, &c3, &c4);
c5=getchar(); c6=getchar();
putchar(c1); putchar(c2);
printf("%c%c\n", c5, c6);
程序运行后,若从键盘输入(从第1列开始) :
123<回车>
45678<回车>
则输出结果是( )。
A) 1267
B) 1256
C) 1278
D) 1245
答案
参考答案:D
解析: 本题考查的是字符输入输出函数的应用。getchar()函数只能接收一个字符,即使输入多个字符后再按回车还是只能将第一个字符读入。scanf()和printf()是按格式输入输出的函数,当输入123<回车>,scanf()分别读入字符“1”“2”“3”“<回车>”;接下来输入45678<回车>,则getchar()读入字符“4”赋值给c5,字符“5”赋值给c6,所以输出语句输出结果为1245。故本题答案为D)。