qsc250 发表于 2020-2-26 18:17:17

运行公式地点不一样导致结果不一样

我写的:                                                                              

#include<stdio.h>                                                                           
int main()

{

      float fa,ce;
      ce=(fa - 32) * 9;
      prin请输入华氏度:");
      scanf("%f",&fa);
        printf("转换为摄氏度是:%.2f\n",ce);
        return;
}


正确答案:
#include <stdio.h>

int main()
{
      float fah, cel;

      printf("请输入华氏度:");
      scanf("%f", &fah);

      cel = (fah - 32) * 5 / 9;
      printf("转换为摄氏度是:%.2f\n", cel);

      return 0;
}



请问为什么公式 ce=(fa - 32) * 9;写在上面和下面,运行出来的结果不一样呢

最后的魁拔 发表于 2020-2-26 18:20:57

写在上面,fa还没有初始化,默认是垃圾值

zltzlt 发表于 2020-2-26 18:21:24

如果写在上面,用户还没输入你就先计算出来了,这显然不对,程序还不知道用户会输入什么

qsc250 发表于 2020-2-26 18:24:27

zltzlt 发表于 2020-2-26 18:21
如果写在上面,用户还没输入你就先计算出来了,这显然不对,程序还不知道用户会输入什么

谢谢,理解了

一个账号 发表于 2020-2-26 18:24:59

fa, ce 这两个变量还没有被赋值呢!
页: [1]
查看完整版本: 运行公式地点不一样导致结果不一样