有以下程序:
#include< stdio.h >
void main()
{
char a,b,c,d;
scanf("%c%c",&a,&b);
C=getchar();
d=getchar();
printf("%c%c%c%c\n",a,b,c,d);
}
当执行程序时,按下列方式输入数据(从第一列开始,< CR >代表回车,注意:回车是一个字符):
12< CR >
34< CR >
则输出结果是( )。
【正确答案】 C
【答案解析】scanf()函数的一般调用形式为:scanf(格式控制,输入地址列表)。其中,格式控制是用双引号括起来的字符串,包括格式字符和普通字符,格式是是由“%”和格式字符组成。getchar()函数的功能是从标准输入设备上读入一个字符。根据程序中的格式控制可知,接收输入时分别把1赋给了a,2赋给了b,然后getchar()函数提取一个换行符赋给c,再提取一个字符3赋给d。所以程序的输出结果为:12< CR >3。