C语言中定义浮点型时为什么表达式中的常量必须是XX.0?

float FtoC(float f)
{
float c;
c = (5.0 / 9.0) * (f - 32.0);
return c;
}
如果不写5.0 9.0 32.0,结果就无法计算,全部是0.。。。怎么这么变态的规定?
C语言中两个整数相除,结果也是一个整数
5/9=0因为是整除,所以是0
如没碧果是5.0/9则代表一个浮点数与整数相除,结果是浮闷察洞点数,就可以正确的显示了
大蚂枯多数编程语言中,/符号都表示整除
整除的效率是浮点除法的十倍,而且在C语言刚产生的年代浮点数的规范还不凯乱扮完善,那么为陪陵什么要选择默认使用效率低盯灶的方式……
5在c中默认为整数,5.0是一个强制类型转换,将整形转为实型若写成5/9将得到0
5在c语言中默认是整形 5.0早C中默认为浮点型 你闷衡早也可以(double)拦前5/9 这样是强制转换类型
这样到后面你学的深入啦就会发现用父类指针可以强制转换为子类的指针 就是由父类找到当前类
这样很方便 但是也蚂雀很危险