gpt4 book ai didi

c - 为什么 float 和 int 相加结果是 float?

转载 作者:行者123 更新时间:2023-11-30 18:10:51 26 4
gpt4 key购买 nike

我目前正在阅读“C 编程语言 - 第二版”。在第一章中,解释了 float 与 int 的运算结果是 int。有这个程序:

#include <stdio.h>

int main()
{
float fahr, celsius;
int lower, upper, step;

lower = 0;
upper = 300;
step = 20;

fahr = lower;
while (fahr <= upper)
{
celsius = (5.0/9.0) * (fahr-32.0);
printf("%3.0f\t%6.1f\n", fahr, celsius);
fahr = fahr + step;
}
}

当执行 fahr = fahr + step 行时,fahr 不应该变成 int 吗?它是否因为我被声明为 float 而保持 float ?

最佳答案

是的,如果您将变量声明为浮点型,那么它在代码中不会改变。如果您在 int 和 float 之间进行运算并将其放入 float 变量中,您将得到 float 结果,反之亦然,如果您将变量放入 int var 中,您将丢失数字的小数部分.

您无法更改 C 中的变量类型。

关于c - 为什么 float 和 int 相加结果是 float?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54699194/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com