请写出与以下for语句等价的while语句。 for (fahr = Lower; fahr<= upper; fahr++){ celsius = (5.日 / 9.0) * (fahr - 32); printf("%40%6.1fIn”, fahr, celsius);
时间: 2024-01-24 21:01:38 浏览: 69
下面是与给定for循环等价的while循环语句:
```c
fahr = Lower;
while (fahr <= upper) {
celsius = (5.0 / 9.0) * (fahr - 32);
printf("%40%6.1fIn", fahr, celsius);
fahr++;
}
```
解释:将变量fahr初始化为Lower,然后检查fahr是否小于或等于upper。如果是,则计算摄氏温度并打印输出。最后,将fahr增加1,以使下一次循环中的fahr值不同。重复这个过程,直到fahr的值大于upper为止。
相关问题
请写出与以下for语句等价的while语句。 for (fahr = lower; fahr<= upper; fahr++){ celsius = (5.0 / 9.0) * (fahr - 32); printf("%4d%6.1f\n", fahr, celsius); }
以下是与给定for语句等价的while语句:
```c++
fahr = lower;
while (fahr <= upper) {
celsius = (5.0 / 9.0) * (fahr - 32);
printf("%4d%6.1f\n", fahr, celsius);
fahr++;
}
```
这段while循环的实现与for循环的实现等价,都是对温度变量fahr从lower到upper进行遍历,计算对应的摄氏温度并输出。在while循环中,变量fahr的初始值为lower,每次循环时先执行计算和输出操作,再将fahr加1,直到fahr的值大于upper时退出循环。
输入2个正整数lower和upper(-20<=lower<=upper<=50),表示摄氏范围。请输出一张取值范围为[lower,upper]、 且每次增加2摄氏度的摄氏-华氏温度转换表。温度转换的计算公式: F=C×1.8+32 其中:C表示摄氏温度,F表示华氏温度。 输入格式: 在一行中输入2个整数,分别表示lower和upper的值,中间用空格分开。 输出格式: 第一行输出:"celsius□□□□fahr" 接着每行输出一个摄氏温度celsius(整数)与一个华氏温度fahr(占据14个字符宽度,靠右对齐,保留1位小数)。 若输入的范围不合法,则输出"Invalid."。
好的,根据你的要求,我编写了以下代码:
```python
lower, upper = map(int, input().split())
if lower > upper or lower < -20 or upper > 50:
print("Invalid.")
else:
print("celsius{0:>7s}fahr".format(""))
for celsius in range(lower, upper+1, 2):
fahrenheit = celsius * 1.8 + 32
print("{0:>7d}{1:>14.1f}".format(celsius, fahrenheit))
```
你可以直接复制粘贴到Python环境中运行,输入lower和upper的值即可得到相应的温度转换表。注意,lower和upper的值需要在-20到50之间。如果范围不合法,则会输出"Invalid."。