华氏度=摄氏度×1.8+32 或 华氏度=摄氏度×9/5+32 摄氏度=(华氏度-32)÷1.8 现请你用C语言写一段摄氏温度与华氏温度转换的程序。 注意:输出时的空格 输入格式: 只有一行,为一个浮点数f和一个字符c,两者之间由一个空格分隔。其中-10000<f<10000,c只可能是”C”或”F”。 输出格式: 只有一行,如果输入的温度低于零下273.15摄氏度时,直接输出Invalid。否则输出该温度。要求,如果输入的是摄氏度则转换为华氏度,如果输入的为华氏度,转换为摄氏度。数值保留2位小数,同时在数值后输出温度单位(”C”或”F”)。具体格式见输出样例。。
时间: 2024-03-14 21:43:53 浏览: 59
以下是一个C语言的示例程序,可以实现摄氏温度与华氏温度的转换:
```c
#include <stdio.h>
int main()
{
float temp;
char unit;
scanf("%f %c", &temp, &unit); // 获取输入的温度和温度单位
if (unit == 'C') { // 如果输入的是摄氏度
float f_temp = temp * 1.8 + 32; // 转换为华氏度
if (f_temp < -459.67) { // 判断是否低于绝对零度
printf("Invalid\n");
} else {
printf("%.2f F\n", f_temp); // 输出华氏度,并带有单位
}
} else if (unit == 'F') { // 如果输入的是华氏度
float c_temp = (temp - 32) / 1.8; // 转换为摄氏度
if (c_temp < -273.15) { // 判断是否低于绝对零度
printf("Invalid\n");
} else {
printf("%.2f C\n", c_temp); // 输出摄氏度,并带有单位
}
} else { // 如果输入的温度单位不是C或F
printf("Invalid\n");
}
return 0;
}
```
示例输入:
```
32 F
```
示例输出:
```
0.00 C
```
示例输入:
```
-40 C
```
示例输出:
```
-40.00 F
```
示例输入:
```
-500 C
```
示例输出:
```
Invalid
```
阅读全文