问题 单项选择题

有以下程序

#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。

阅读理解与欣赏
单项选择题