浮点只显示零(C)

时间:2015-06-04 09:43:32

标签: c floating-point

我对编程非常陌生,所以对我来说很容易。

作为课程作业的一部分,我需要使用浮动变量。
但是,我无法让它发挥作用。

以下是我的代码摘录(其余部分不相关)。

main()
{
    int x = 37.5;
    printf("%f",x);
    return 0;
}

当我运行它时,(顺便说一句,我正在使用code :: blocks)它只打印0.000000

这里出了什么问题?它应该不起作用吗?

如果我用%d替换%f(有点儿,它会截断小数点),它会起作用 我完全失去了,所有的帮助都表示赞赏。

1 个答案:

答案 0 :(得分:1)

因为你写了int x = 37.5; C编译器对程序员几乎绝对有信心。你说x应该是一个int:它是,你把它初始化为37.5:编译器做得最好,取37.5的int值为37。

如果你想让x成为一个浮点数,请将其声明为float:

float x = 37.5;

注意:在发布这个答案之后,我意识到Gosu已经在评论中给出了它,所以应该归功于他。