一.刷题.1

一.刷题 .1

题目:使用公式℃=(5/9)(℉-32)打印下列华式温度与摄氏温度对照表:

0-17
20-6
404
6015
…………
300148

思路:表格有最大值和最小值限制所以要设置温度上限和下限,以及限制了步数;
要用到华氏度,摄氏度两个变量,和一个算术表达式,加入循环和格式化输出;

#include<stdio.h>
main()
{
float fahr,celsius;
int lower,upper,step;
lower = 0;
upper = 300;
step  = 20;
fahr = lower;
while(fahr<=upper){
celsius = (5.0/9.0) * (fahr -32.0);
printf("%3.0f%6.1f\n",fahr,celsius);
fahr = fahr + step;
}
}

在这里插入图片描述
遇到的一些问题:
1.没有将温度定义成浮点型并直接将题目中给的运算式打出来。如果用整形,则先将表达式乘5在除以9,而不是直接写成5/9.
2.打出的表格没有对齐,需要在输出的地方设置字宽。
3.使用整形运算导致计算结果不精确,所以需要设置成浮点型。

扩展:经过查阅资料学到了更简单的代码

#include<stdio.h>
main()
{
int fahr;
for(fahr = 0;fahr<=300;fahr = fahr + 20)
printf("%3d%6.1f\n",fahr,(5.0/9.0)*(fahr-32));
}

这个代码去掉了大部分变量,引入了for。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值