C语言练习题(不知道哪里错了)
标题输入2个正整数lower和upper(lower≤upper≤100),请输出一张取值范围为、且每次增加2华氏度的华氏-摄氏温度转换表。
温度转换的计算公式:C=5×(F−32)/9,其中:C表示摄氏温度,F表示华氏温度。
输入格式:
在一行中输入2个整数,分别表示lower和upper的值,中间用空格分开。
输出格式:
第一行输出:"fahr celsius"
接着每行输出一个华氏温度fahr(整型)与一个摄氏温度celsius(占据6个字符宽度,靠右对齐,保留1位小数)。
若输入的范围不合法,则输出"Invalid."。
求大佬们指点一下C语言第一节课的作业,真的不是很懂┭┮﹏┭┮
代码:
#include<stdio.h>
#include<math.h>
int main(void)
{
int lower,upper,fahr;
float celsius;
scanf("%d %d",&lower,&upper);
if(lower>upper||lower>100||upper>100)
{
printf("Invalid.");
}
else
{
printf("fahr celsius\n")
for (int fahr = lower;fahr <= upper;fahr += 2)
{
float celsius = 5.0 * (fahr - 32) / 9;
printf("%d%6.1f\n", fahr, celsius);
}
}
return 0; 你提供的代码片段存在些小问题,我来指正并给你一份完整的范例代码:
#include <stdio.h>
int main(void) {
int lower, upper;
scanf("%d %d", &lower, &upper);
if (lower > upper || lower > 100 || upper > 100) {
printf("Invalid.");
} else {
printf("fahr celsius\n");
for (int fahr = lower; fahr <= upper; fahr += 2) {
float celsius = 5 * (fahr - 32) / 9.0;
printf("%d %6.1f\n", fahr, celsius);
}
}
return 0;
}
### 注意事项:
1. **`#include`部分**:确保`#include <stdio.h>`行正确无误,其它`#include`行必须清晰明确。
2. **if判断条件**:条件中应为`lower > upper || lower > 100 || upper > 100`以确保合法性。
3. **`printf`函数**:在输出标头时需要分号,`printf("fahr celsius\n");`。
4. **浮点数计算**:在计算摄氏温度时,要确保除法是浮点数计算,`5 * (fahr - 32) / 9.0`确保除数为浮点数。
5. **格式化输出**:`printf("%d %6.1f\n", fahr, celsius);` 这行代码确保摄氏温度右对齐6个字符,且保留小数点后1位。
希望这段代码能帮你完成作业!如有进一步疑问,随时提问哦!
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
页:
[1]