Exercise 1-3. Modify the temperature conversion program to print a heading above the table.
习题要求我们给华氏-摄氏温度转换表增加一个heading。
笔者不清楚作者的意思是让读者增加一个“华氏-摄氏转换表”这样的图表标题,还是给表的每一列再列顶端加上列标题。笔者索性就按照后者来进行解题。
当然了,如果是第一种情况,只需要在 main() 函数进入循环之前添加下面的语句即可:
printf("Fahr-Celsius Table\n");
对于后一种情况,我们给华氏度那一列命名为 Fahr ,给摄氏度那一列命名为 Celsius 。考虑到标题和列的内容需要对其,对于华氏度那一列,Fahr 一共是4个字符,温度则是由1-3个字符组成,所以需要控制华氏度输出的格式宽度(笔者设置为4)。同理摄氏度那一列也需要考虑,Celsius 一共是7个字符,所以笔者控制摄氏度输出格式宽度为7,并且小数点后有1位小数。然后华氏度和摄氏度之间用 tab 隔开(列标题也要记得隔开)。
完整代码如下:
main() {
float fahr, celsius;
float lower, upper, step;
lower = 0;
upper = 300;
step = 20;
fahr = lower;
printf("Fahr\tCelsius\n");
while (fahr <= upper) {
celsius =