解题思路以及注意事项:

  1. 注意scanf("%lf",&f);或者scanf("%f",&f);如果你前面定义的f是用double类型的话,就应该用%lf格式,如果f是float类型的话,就应该用%f,不然会有意想不到的结果。

  2. 注意printf("%lf",c);或者printf("%f",c);这里面的格式%lf或者%f与c的类型相同,c为double类型的,就用%lf,c为float类型就用%f。

  3. 注意分号和引号千万不要错,还有中英文的书写问题。

实例代码:

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

还有什么不懂的请在下面评论区留言

点赞(71)
 

0.0分

248 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 478 条评论

一二三 4年前 回复TA
#include<stdio.h>
int main()
}
    doule f,c;
    scanf("%lf",&f);
    c=5*(f-32)/9;
    printf("c=%0.21f",c);
    return 0;
}编译错误,这是咋了,大佬求解
jjking 4年前 回复TA
@jjking 他说我答案啊错误
jjking 4年前 回复TA
#include<stdio.h>
int main()
{
   float f,C;
   f=-40.0;
   scanf("%f",&F);
   C=(5.0/9)*(f-32);
   printf("f=%f\nC=%f\n",f,C);
   return 0;
   
   
   
}哪里错了呀。
让你到最后一小时 4年前 回复TA
请问一定保留小数时一定要打c=吗我没打一直给我答案错误、。
小桐 4年前 回复TA
@MusicGeek #define 的功能是将标识符定义为其后的常量,如果你想实现你所想表达的功能需要定义一个函数
CC 4年前 回复TA
@CC 谢谢
4年前 回复TA
@CC 5和9都是整型,5/9=0
CC 4年前 回复TA
这是我打的一个类似的题目,要求直接给f赋值,然后求c值,正确代码如下:
#include<stdio.h>
int main()
{
   float c,f;
   f=64.0;
   c=(5.0/9)*(f-32);
   printf("f=%f\nc=%f\n",f,c);
    return 0;
}
可是为什么c=(5.0/9)*(f-32);中的九分之五在表达时,分子和分母至少有一个带小数点呢?比如写为c=(5/9)*(f-32);这样没有报错,但是结果却不正确?
MusicGeek 4年前 回复TA
求教我这样提交上去为什么是错的
#define C(F) 5*(F-32/9)
    float F;
    printf("请输入华氏温度:");
    scanf("%f",&F);
    printf("华氏%0.2f℉所对应的摄氏温度为:%0.2f℃",F,C(F));
Nice丶天才陈伟霆 4年前 回复TA
666666666666666666666