为什么scanf没有存储用户输入?

时间:2018-01-27 04:01:14

标签: c printing floating-point scanf

float a;
printf("Enter a floating point number:\n");
scanf("%f", &a);
printf("%f", &a);

我正在尝试提示用户输入一个数字,该数字将存储为浮点数,但是当我运行代码时,所有输出的数字都是0.0000。任何人都可以告诉我为什么,以及我需要更改输入的数字在这里打印?

2 个答案:

答案 0 :(得分:1)

您正在打印a的地址,因此您无法获得正确答案。它应该是printf("%f", a);

答案 1 :(得分:1)

& - 运算符仅用于存储地址的scanf个参数。

尝试printf("%f", a);