这段程序哪里错了?

来源:百度知道 编辑:UC知道 时间:2024/09/22 19:47:12
float f,c;
printf("请输入摄氏温度:");
scanf("%f",&f);
c=5/9*(f-32);
printf("对应的华氏温度为%.2f",c);

结果为0。00,是不是表达式太复杂了?该怎么写呢?

c=5/9*(f-32);
执行这一句时, 5/9 计算完会返回整型,也就是0,导致整个结果为0.
把5给成5.0就可以:
c=5.0/9*(f-32);

c=5/9*(f-32);
改为
c=5.0/9*(f-32);

你那样写,5/9当成int来计算了,结果为0