解题思路:

注意事项:

参考代码:

#include<stdio.h>
int main()
{
    double a,b;         //有小数输出,直接定义double类型
  scanf("%lf",&a);     //输入格式不要写错
  b=5*(a-32)/9;          //转换 算法
  printf("%.2lf",b);       //输出格式!
    return 0;
}

点赞(8)
 

0.0分

9 人评分

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

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

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

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

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

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

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

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

评论列表 共有 19 条评论

虎鲸 2年前 回复TA
@213100916 float使用%f,而double使用%lf。
213100916 3年前 回复TA
%f前面为什么要加一个l,求教
秋清深 3年前 回复TA
@正男 没问题啊·。跑了是正确的
秋清深 3年前 回复TA
@holy 也有可能算5/9的结果存放在int里,就是0*,我觉得这种的可能性更大
秋清深 3年前 回复TA
@holy 好像乘除并不是都是从左到右,可能他先算了9*(n-32)
permotcat 3年前 回复TA
@努力c 因为 == 是判断相等(结果为0或1),= 是赋值,i用于打印输出了
holy 3年前 回复TA
//输入一个华氏温度,要求输出摄氏温度。公式为
//c=5/9(f-32) 
//保留两位小数
#include<stdio.h>
int main()
{
    double n;
    scanf("%lf",&n);
    printf("%.2lf",5/9*(n-32));
    return 0;
}
这个为什么不行呢
la不甜 3年前 回复TA
@H2030819026 /是整除
白色枫叶 3年前 回复TA
@努力c 我也是这样,把5改成5.00就通过了
努力c 3年前 回复TA
#include<stdio.h>
int main()
{double i;
scanf("%lf",&i);
i==5*(i-32)/9;
printf("%.2lf",i); 
return 0;
}
请问为什么只通过50%呢?还有把==换成=为啥不行呢?