初学C语言,请问为什么下列代码中5、9、32在遇到浮点型变量后没有和浮点型变量一起转换为double型?
代码:
#include<stdio.h>
int main()
{
float F,C;
printf("请输入华氏温度:");
scanf("%f",&F);
C=(5/9)*(F-32);
printf("对应摄氏温度为:%.2f",C);
return 0;
}
上文代码输出:
请输入华氏温度:96
对应摄氏温度为:0.00
尝试过的方法:
将5、9、32转换为5.0、9.0、32.0后可输出期望结果;
将5、9、32分别赋给三个声明为float的变量可以输出期望结果;
将5、9、32分别赋给三个声明为int的变量不可以输出期望结果。
期望输出:
输入96返回35.56