问题 单项选择题

设有定义:int a; float b;执行scanf("%2d%f",&a,&b);语句时,若从键盘输入876 543.0<回车>, a和b的值分别是______。

A.876和543.000000

B.87和6.000000

C.87和543.000000

D.76和543.000000

答案

参考答案:B

解析:评析:对于unsigned型数据可以指定数据的输入域宽w,系统秒将自动按w值截取所需长度的数据,此题中指定输入域宽为2,所以把前两个数送给a,即a=87.后面的数值应送给变量b,由于6后面是空格分隔符,所以系统认为该数据到此结束,即将6赋给了b,所以答案选B。

填空题
单项选择题