作业帮 > 综合 > 作业

华氏温度转换为摄氏温度

来源:学生作业帮 编辑:搜搜考试网作业帮 分类:综合作业 时间:2024/04/30 22:18:36
华氏温度转换为摄氏温度
#include
void main(void)
{
float c,F;
printf("请输入华氏温度:");
scanf("%f",F);
c=5/9*(F-32);
printf("对应摄氏温度为%.2f",c); //取2位小数
} 问:5除以9不是等于0吗?怎么能转换呢?应该怎么写?为什么了?
华氏温度转换为摄氏温度
应该写成
5.0/9
这样5.0就是浮点数了,之后会按浮点数运算
或是
(double)5/9
强制转换成浮点数
再问: c=5*(F-32)/9; 在程序中这样写对吗,为什么?c的结果为0吗? 5.0/9 5.0就是浮点数了,之后会按浮点数怎么运算?运算结果会是什么呢,会不会仍是0?
再答: 可以这么写,c不是0,因为中间会按浮点数技术。 但是不推荐这么写。写程序不仅要写对,还要靠谱。 不会是0. 所谓按浮点数计算就是结果都是浮点数,5.0/9得0.55,不会是0.
再问: 这次明白了,非常感谢!!!!
再答: 记得采纳~
再问: 不过遇到这类问题,怎么能首先想到要用浮点数呢?大侠能总结下嘛?
再答: 就是精度不损失。 如果你的算式要出现分数的情况,就一定要按浮点数计算。我现在也偶尔犯这种错误,不过都能很快看出来。