‹ 上一题 下一题 ›

g1-08660. scanf 用 %f 读 double 变量 未做

1000 ms 256 MB 测试点 ? 知识点题GESP-11级·输入输出与顺序结构客观题单选

有同学想读一个小数存进 x,写出了下面的代码:

double x;
scanf("%f", &x);

对这两行代码的评价,正确的是?

  • A. 不对:scanf 里 %f 对应的是 float 不是 double,%f 只按 float 的尺寸写内存,x 里的内容不可信,要用 %lf
  • B. 没问题:float 和 double 反正差不多,%f 读哪个都一样
  • C. 没问题:scanf 会自动把按 %f 读的结果转成 double 存好
  • D. 编译一定报错,这行 scanf 生成不了程序
未选择
输入
输出

            
答案