问题
单项选择题
有以下程序:
#include <stdio.h>
main( )
ehar c1,c2,c3,c4,c5,c6;
scanf( "% c% c% c% c", &c1, &c2, &c3, &c4);
c5 = getehar( ); c6 = getchar( );
putehar(c1); putehar(c2);
printf("%c%c\n", c5, c6);
23 <回车>
45678 <回车>
A.1267
B.1256
C.1278
D.1245
答案
参考答案:D
解析: getchar函数只能接收一个字符,即使输入多个字符也只能将第一个字符读入。当输入123<回车>时:seanf函数分别读人字符’1’、’2’、’3’、’<回车>’;再输入45678<回车>,则getehar读人字符’4’赋值给c5,字符’5’赋值给c6,所以输出结果为1245。