美文网首页
C 笔记三 基于 for 循环的温度转换程序

C 笔记三 基于 for 循环的温度转换程序

作者: 吃柠檬的鸮 | 来源:发表于2019-03-18 16:56 被阅读0次

编写程序,打印华氏温度到摄氏温度的转换表,要求按照从 300 度到 0 度逆序打印。

/* fahr2Celsius_for_1.c */
#include <stdio.h>

int main() {
    float fahr;
    
    for (fahr = 300; fahr >= 0; fahr -= 20) {
        printf("%3.0f\t%6.1f\n", fahr, (5.0 / 9.0) * (fahr - 32));
    }
    
    return 0;
}

for 也是 C 语言的一种循环语句,它是对 while 的一种推广,相比 whilefor 语句更加直观。for 语句比较适合初始化和增加步长都是单条语句并且逻辑相关的情形。

上述程序中 printf 的第三个参数是计算摄氏温度的表达式,C 语言允许使用复杂的表达式来替代同类型变量值:

printf("%3.0f\t%6.1f\n", fahr, (5.0 / 9.0) * (fahr - 32));

/* 等价于 */
celsius = (5.0 / 9.0) * (fahr - 32);
printf("%3.0f\t%6.1f\n", fahr, celsius);

上述程序的编译运行结果:

300  148.9
280  137.8
260  126.7
240  115.6
220  104.4
200   93.3
180   82.2
160   71.1
140   60.0
120   48.9
100   37.8
 80   26.7
 60   15.6
 40    4.4
 20   -6.7
  0  -17.8

上面的程序在 for 循环里使用了 300、20 这样的常量,C 语言中把直接使用的常数称之为 “幻数”。在程序中大量使用幻数会使得程序的修改变得更加困难,也降低了程序的可读性。

for (fahr = 300; fahr >= 0; fahr -= 20) {
    printf("%3.0f\t%6.1f\n", fahr, (5.0 / 9.0) * (fahr - 32));
 }

使用 #define 可以把一个符号名定义为一个特定的字符序列(包括数字),注意 define 语句不需要分号:

#define name replacement-list

符号常量名通常用大写字母拼写,以便于与小写字母拼写的变量名区分。符号常量不是变量,因此不需要再进行声明。所以上述的程序可以改写成:

/* fahr2Celsius_for_2.c */
#include <stdio.h>

#define  LOWER  0
#define  UPPER  300
#define STEP    20

int main() {
    float fahr;
    
    for (fahr = UPPER; fahr >= LOWER; fahr -= STEP) {
        printf("%3.0f\t%6.1f\n", fahr, (5.0 / 9.0) * (fahr - 32));
    }
    
    return 0;
}

相关文章

  • C 笔记三 基于 for 循环的温度转换程序

    编写程序,打印华氏温度到摄氏温度的转换表,要求按照从 300 度到 0 度逆序打印。 for 也是 C 语言的一种...

  • Java 计算 编程练习题

    1、温度转换 题目内容: 写一个将华氏温度转换成摄氏温度的程序,转换的公式是: °F = (9/5)*°C + 3...

  • Java第一周编程题

    1 温度转换(5分) 题目内容: 写一个将华氏温度转换成摄氏温度的程序,转换的公式是: 其中C表示摄氏温度,F表示...

  • 1.温度转换

    1.温度转换(3分) 题目内容: 写一个将华氏温度转换成摄氏温度的程序,转换的公式是: °F = (9/5)*°C...

  • JAVA作业1

    1温度转换(5分) 题目内容: 写一个将华氏温度转换成摄氏温度的程序,转换的公式是: 其中C表示摄氏温度,F表示华...

  • 1温度转换(5分)

    题目内容:写一个将华氏温度转换成摄氏温度的程序,转换的公式是:°F = (9/5)*°C + 32其中C表示摄氏温...

  • MOOC-U《Python语言程序设计》week2

    2.1 语法元素入门 程序元素 注释、缩进、变量、常量、表达式、输入、输出、分支、循环 温度转换程序 代码块在ch...

  • 0002-温度转换

    问题描述 已知道华氏温度与摄氏温度转换公式C=(5/9)(F-32),其中C为摄氏温度,F为华氏温度。请写一个程序...

  • 全国计算机等级考试C语言十六个选择题类高频知识点

    1.C程序 C语言程序结构有三种: 顺序结构 , 循环结构(三个循环结构), 选择结构(if 和switch) 2...

  • C++循环与决策

    Tags:C++,《C++ Primer Plus》笔记 一、循环## 语法### C++中有三种循环语句,语法与...

网友评论

      本文标题:C 笔记三 基于 for 循环的温度转换程序

      本文链接:https://www.haomeiwen.com/subject/zcfbmqtx.html