mifugu 发表于 2023-8-30 21:13:27

s1e8的课后作业

#include<stdio.h>
int main()
{
double fahrenheit,temperature;

printf("请输入华氏度:");
scanf("%f,&fahrenheit");
temperature=(fahrenheit-32)*5/9;
printf("转换为摄氏度是:%.2f\n",temperature);

return 0;
}
为啥输入华氏度45的结果是-17.78

isdkz 发表于 2023-8-30 21:16:06

你的双引号放错地方了:

#include<stdio.h>
int main()
{
double fahrenheit,temperature;

printf("请输入华氏度:");
scanf("%f",&fahrenheit);                     // 注意这行
temperature=(fahrenheit-32)*5/9;
printf("转换为摄氏度是:%.2f\n",temperature);

return 0;
}

mifugu 发表于 2023-8-30 21:19:06

isdkz 发表于 2023-8-30 21:16
你的双引号放错地方了:

#include


我改了一下数值类型就好了,就是double改float你知道啥情况吗

isdkz 发表于 2023-8-30 21:23:43

mifugu 发表于 2023-8-30 21:19
我改了一下数值类型就好了,就是double改float你知道啥情况吗

因为 double 需要用 %lf,float 才是用 %f:

#include<stdio.h>
int main()
{
    double fahrenheit, temperature;

    printf("请输入华氏度:");
    scanf("%lf", &fahrenheit);
    temperature = (fahrenheit - 32) * 5 / 9;
    printf("转换为摄氏度是:%.2f\n", temperature);

    return 0;
}

mifugu 发表于 2023-8-30 21:27:05

isdkz 发表于 2023-8-30 21:23
因为 double 需要用 %lf,float 才是用 %f:

#include


感谢
页: [1]
查看完整版本: s1e8的课后作业