问题 单项选择题

有以下程序段 int j; float y; char name[50]; scanf("%2d%f%s",&j,&y,name); 当执行上述程序段,从键盘上输入55566 7777abc后,y的值为

A.55566.0

B.566.0

C.7777.0

D.566777.0

答案

参考答案:B

解析: 本题考查的知识点是:输入格式化控制串。 本题scanf()函数的格式化控制串中,"%2d"表示输入一个2位的整数:"%f"表示输入一个浮点数;"%s"表示输入一个字符串。因此,从键盘上输入"55566 7777abc"后,前两位"55"被当作2位整数输入给j;"566"被当作浮点数输入给y;跳过空格后,剩下的字符串"7777abc"全部输入给name;故本题应该选择B。

单项选择题
单项选择题