为什么输出的是0哪里写错了吗?

  1. include<stdio.h>

int main()
{
double f ,c;
scanf("%lf",&f);
c=5/9*(f-32);
printf("%.3lf",c);
return 0;
}

因为5/9是整数/整数得到的结果也是整数,5/9结果是0
应该改成 c=5.0/9*(f-32);
或者 c=5/9.0*(f-32);
把其中一个整数改成小数结果才能是小数

#include<stdio.h>
int main()
{
    double f ,c;
    scanf("%lf",&f);
    c=5.0/9*(f-32);
    printf("%.3lf",c);
    return 0;
}

如有帮助,望采纳!谢谢!

img

修改为:c=5.0/9*(f-32);
因为5/9是整除,结果为0

include<stdio.h>
int main()
{
double f ,c;
scanf("%lf",&f);
c=5.0/9*(f-32);
printf("%.3lf",c);
return 0;
}

img