输入 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.”。
我的答案:
#include <stdio.h> int main() { int lower, upper; int fahr; double celsius; scanf("%d %d", &lower, &upper); if (lower > upper && upper > 100) { printf("Invalid."); } else { printf("fahr celsiusn"); for (fahr = lower; fahr <= upper; fahr+= 2) { celsius = 5 * (fahr*1.0 - 32) / 9; printf("%d%6.1lfn", fahr, celsius); } } return 0; }
scanf("%d %d", &lower, &upper);
当时写这句写成了scanf("%d %d",fahr ,celsius );
提交报错
我以为是for写错了
找了半天
才发现又又又又又忘记加&
提交
还是报错
又去找for的错误
结果发现还是这句写错了
我真是个笨蛋
关于 for
语法: for ( init; condition; increment )
{
statement(s);
}
1) init; condition; increment 三个表达式之间是用分号;隔开的,千万不要写成逗号。
2) for (init; condition; increment) 的后面千万不要加分号
- 版权声明:文章来源于网络采集,版权归原创者所有,均已注明来源,如未注明可能来源未知,如有侵权请联系管理员删除。