问题 单项选择题

若输入12345、abc,程序的输出结果为______。
main()
int a;
char ch;
scanf("%3d,%3c",&a,&ch);
printf("%d,%c",a,ch);

A) 123,abc
B) 123,4
C) 123,a
D) 12345,abc

答案

参考答案:B

解析: 指定输入数据所占列数之后,系统自动按它截取所需数据,无须分界符。程序中指定整型变量a占3列,输入12345、abc后,系统自动将数据前3列123赋给变量a,而剩余的数据则根据具体情况赋给其他变量或作为多余数据处理。因程序中还需对字符变量ch输入数据,虽然指定输入3列字符,但字符型数据只能有一个字符,因此把剩余的“45、abc”中第1个数据4赋给变量ch,故正确答案为选项B。

解答题
单项选择题