练习2-12 输出华氏-摄氏温度转换表 (15分)
浙大版《C语言程序设计(第3版)》题目集
输入2个正整数lower和upper(lower≤upper≤100),请输出一张取值范围为[lower,upper]、且每次增加2华氏度的华氏-摄氏温度转换表。
温度转换的计算公式:C=5×(F−32)/9,其中:C表示摄氏温度,F表示华氏温度。
输入格式:
在一行中输入2个整数,分别表示lower和upper的值,中间用空格分开。
输出格式:
第一行输出:“fahr celsius”
接着每行输出一个华氏温度fahr(整型)与一个摄氏温度celsius(占据6个字符宽度,靠右对齐,保留1位小数)。
若输入的范围不合法,则输出"Invalid."。
输入样例1:
32 35
输出样例1:
fahr celsius
32 0.0
34 1.1
输入样例2:
40 30
输出样例2:
Invalid.
#include<stdio.h>
int main(void)
{
int lower,upper;
float c;
scanf("%d %d",&lower,&upper);
if(lower>upper || upper>100)
printf("Invalid.\n");
else{
printf("fahr celsius\n");
for(;lower<=upper;lower+=2){
c=5.0*(lower-32)/9;
printf("%d%6.1f\n",lower,c);
}
}
return 0;
}
注意:
1.要通读完题目再开始思考,printf(“fahr celsius\n”);,这里因为看到后面占据6个字符宽度,以为fahr也占据6个,导致一个通不过。
2.每次增加2华氏度的转换表,而不是只输出lower和upper的转换表。
3.if(lower>upper || upper>100),这个upper>100,没写也可以通过,但我觉得还是要的叭。
4.虽然这次注意了但我觉得下次会忘记的,c=5.0(lower-32)/9;,不把一个写成浮点的,c会取整哟。*
本文提供了一道浙大版《C语言程序设计(第3版)》的练习题,要求根据输入的两个正整数lower和upper(100以内)生成一张华氏-摄氏温度转换表,每次增加2华氏度。计算公式为C=5×(F−32)/9。题目中强调了输出格式的要求,并给出了输入样例及对应的输出样例。
2287

被折叠的 条评论
为什么被折叠?



