C语言问题,求大神解决,谢谢拉。。我是小白,解释下原因

若变量c定义为float类型,当从终端输入283.1900<CR> (<CR>代表回车键),能给变量c赋以283.19的输入语句是

A)scanf(“%f”,c); B)scanf(“%8.4f”,&c);

C)scanf(“%6.2f”,&c); D)scanf(“%8f”,&c);

答案:D)

第1个回答  2013-03-12
你好,应该选择C。答案是错误的吧【我也无语,这些资料编写者不够负责。正在备战二级,反正以程序执行结果为准吧~】
你可以看书的【谭浩强 第四版《c程序设计》76页 格式字符】%6.2f的意思是取一个实数,实数的小数部分有两位,符合要求。

祝你好运~_~
第2个回答  2013-03-12
你好,应该选择C
%6.2f的意思是取一个6位数值的实数(小数点也算一个),实数的小数部分有两位,c符合要求本回答被提问者采纳
第3个回答  2013-03-12
答案都不对啊,如果是d的话应该在printf("%.2f",c)才会输出只有两位尾数的浮点数。这是基本的。
第4个回答  2018-01-08
scanf没有精度bc排除
第5个回答  2013-03-12
答案D