4 温度转换
作者: Turbo时间限制: 1S章节: 顺序结构
问题描述 :
从键盘输入一个摄氏温度,要求转换成华氏温度输出。摄氏温度转换为华氏温度的公式为(其中c表示摄氏温度,f表示华氏温度): f=(9/5)*c+32
输入说明 :
输入一个摄氏温度
输出说明 :
输出对应的华氏温度。注意,输出结果保留两位小数,小数点后第三位四舍五入到小数点后第二位,但小数点后总共输出6位(即最后需要输出4个0)。
输入范例 :
26.67
输出范例 :
80.010000
笔记
这题主要是做一个四舍五入的整理(参考)
1. 四舍五入,保留整数:round(x)
参数时double型,返回小数对整数部分的四舍五入值
比如 round(3.623); 返回4
2. 使用0.5的技巧
float a = 3.456; //保留到小数点后两位
float b =(int)((a * 100) + 0.5) / 100.0;
输出结果为3.46
精度比较高
注:若原值为负数,加号要改为减号。
3. 使用输出控制符
float a = 23.456789;
printf(“%.2f”,a); //输出为23.45
代码
#include<stdio.h>
int main(){
double f,c;
scanf("%lf",&c);
f=(9.0/5.0)*c+32.0;
//四舍五入
if(f>0)
double ff = (int)(f*100.0+0.5)/100.0;
else
double ff = (int)(f*100.0-0.5)/100.0;
printf("%.6f\n",ff);
return 0;
}