练习1-5  修改温度转换程序,要求以逆序(即按照从300度到0度的顺序)打印温度转换表。

代码如下:

#include <stdio.h>    //    包含标准库的信息。

int main()    //    定义名为main的函数,它不接受参数值。
{
float fahr; // 华氏度。
float celsius; // 摄氏度。 int lower, upper, step;
lower = ; // 温度表的下限。
upper = ; // 温度表的上限。
step = ; // 步长。 // 在顶部打印标题。
printf("%3s %6s\n", "c", "f");
// 从温度表的上限开始转换。
for (celsius = upper; celsius >= ; celsius = celsius - step)
{
// 转换算法,摄氏度专为华氏度。
fahr = (9.0 / 5.0) * celsius + 32.0;
// 摄氏度显示时占至少3个字符宽,并省略小数部分;
// 华氏度显示时占至少6个字符宽,并取一位小数;
printf("%3.0f %6.1f\n", celsius, fahr);
} getch(); // 防止控制台一闪而过,需要接受任意字符后在关闭控制台。
return ; // 向执行环境返回一个整形,0代表执行成功。
}

个人理解:

练习的目的在于掌握for循环的用法。

在实际编程过程中,可以选择while与for中的任意一种循环语句,主要要看使用哪一种更庆喜。

for语句比较适合初始化和增加步长都是单条语句并且逻辑相关的情形,因为它将循环控制语句集中放在一起,且比hile语句更紧凑。

C程序设计语言练习题1-5的更多相关文章

  1. C程序设计语言练习题1-23

    练习1-23 编写一个删除C语言程序中所有的注释语句.要正确处理带引号的字符串与字符常量.在C语言中,注释不能嵌套. 代码如下: #include <stdio.h> // 包含标准库的信 ...

  2. C程序设计语言练习题1-10

    练习1-10 编写一个将输入复制到输出的程序,并将起重的制表符替换为\t,把回退符替换成\b,把反斜杠替换为\\.这样可以将制表符和回退符以可见的方式显示出来. 代码如下: #include < ...

  3. C程序设计语言练习题1-16

    练习1-16 修改打印最长文本行的程序的主程序main,使之可以打印任意长度的输入行的长度,并尽可能多地打印文本. 代码如下: #include <stdio.h> // 包含标准库的信息 ...

  4. C程序设计语言练习题1-22

    练习1-22 编写一个程序,把较长的输入行”折“成短一些的两行或多行,折行的位置在输入行的第n列之前的最后一个非空格之后.要保证程序能够智能地处理输入行很长以及在制定的列前没有空格或制表符时的情况. ...

  5. C程序设计语言练习题1-21

    练习1-21 编写程序entab,将空格串替换为最少数量的制表符和空格,但要保持单词之间的间隔不变.假设制表符终止的位置与练习1-20的detab程序的情况相同.当使用一个制表符或者一个空格都可以打到 ...

  6. C程序设计语言练习题1-20

    练习1-20 编写程序detab,将输入中的制表符替换成适当数目的空格,使空格充满到下一个制表符终止位的地方.假设制表符终止位的位置是固定的,比如每隔n列就会出现一个制表符终止位.n应该是变量还是符号 ...

  7. C程序设计语言练习题1-19

    练习1-19 编写函数reverse(s),将字符串s中的字符顺序颠倒过来.使用该函数编写一个程序,每次颠倒一个输入行中的字符顺序.代码如下: #include <stdio.h> // ...

  8. C程序设计语言练习题1-18

    练习1-18 编写一个程序,删除每个输入行末尾的空格及制表符,并删除完全是空格的行. 代码如下: #include <stdio.h> // 包含标准库的信息. #define MAXLI ...

  9. C程序设计语言练习题1-17

    练习1-17 编写一个程序,打印长度大于80个字符的所有输入行. 代码如下: #include <stdio.h> // 包含标准库的信息. #define MAXROW 10 // 最大 ...

  10. C程序设计语言练习题1-15

    练习1-15 重新编写1.2节中的温度转换程序,使用函数实现温度转换计算. 代码如下: #include <stdio.h> // 包含标准库的信息. float fahrToCelsiu ...

随机推荐

  1. 关于Layouts的分类

    ViewGroup ---------------------------------LinearLayout.Relative Layout. AdapterView --------------- ...

  2. PHP and java

    问题补充: 为什么不选用优秀的ASP.NET,京东做的不是很成功嘛?-----------------------------------------------------------------首 ...

  3. Entity Framewor 学习笔记 (Enum)

    EF 6 支持Enum 的处理 首先说一下 mysql 和 sql server 的区别 mysql 是有 Enum 这个类型的 , insert 时是放入 int , 出来的时候它会是 string ...

  4. angularjs 1.3 综合学习 (one way bind , ng-if , ng-switch , ng-messages, ng-form ,ng-model )

    主要讲解1.3后的一些新功能,和一些以前没有介绍的小功能 (ng-if,ng-switch). 1.one way bind 这个之前的版本已经有人自己实现了,但是在1.3之后,angularjs 有 ...

  5. Altium Designer summer 9 布线 - 差分对布线

    差分信号系统是采用双绞线进行信号传输的,双绞线中的一条信号线传送原信号,另一条传送的是与原信号反相的信号.差分信号是为了解决信号源和负载之间没有良好的参考地连接而采用的方法,它对电子产品的干扰起到固有 ...

  6. AcitonBar 自定义布局

    Android系统中ActionBar默认的布局不美观且难于控制,通过为ActionBar自定义布局的方式可以灵活控制ActionBar. 自定义Activity主题和ActionBar样式 在新建的 ...

  7. Android录音服务

    MediaRecorder Mediarecorder=new MediaRecorder();//创建一个MediaRecorder对象 Mediarecorder.setAudioSource(M ...

  8. Codeforces Round #277.5 (Div. 2) --E. Hiking (01分数规划)

    http://codeforces.com/contest/489/problem/E E. Hiking time limit per test 1 second memory limit per ...

  9. The Black Tux | IT桔子

    The Black Tux | IT桔子 The Black Tux theblacktux.com

  10. struts2.1.3之后使用自定义Filter

    struts2中 ActionContextCleanUp, StrutsPrepareAndExecuteFilter, StrutsPrepareFilter,StrutsExecuteFilte ...