C primer plus 第5章 运算符、表达式和语句 5.1循环简价
2016-05-17 00:00
162 查看
摘要: 在本章中您将学习到如下内容:
*关键字while,typedef
*运算符
=-*/
%++ --(type)
*C的各种各样的运算符,其中包括用于普通数学运算的运算符
*运算符的优先级以及术语“语句”和“表达式”的含义
*简单的while循环
*复合语句、自动类型转换和类型指派
*如何编写带有参数的函数
5.1 循环简介
程序清单5.1显示了一个示例程序,该程序做了一点运算来计算穿9码鞋(男人的)脚用英寸表示的长度。为了增加您对循环的理解,程序的第1版演示了不使用循环编程的局限性。
程序清单5.1
该程序假设您穿9码鞋,然后告诉您用英寸表示您的脚是多长。
程序清单5.2给出了使用while循环改进后的方法。
解释一下while循环是如何工作的?
当程序第一次到达while语句时,检查圆括号内的条件是否为真。在这例子中,条件表达式是shoe<18.5。
shoe被初始化为3.0,它当然为真。最后一个语句shoe增加1.0,使shoe变成4.0.
此时,程序返回while部分去检查条件。为什么在这点呢?因为后面是一个结束花括号(}),而代码使用一对花括号来标出while循环的范围。在两个花括号之间的语句是被重复执行的语句。花括号和花括号里的程序部分被称为一个代码块。现在回到程序,值4小于18.5,所以跟在while后的被括起来的全部命令(代码块)将被重复执行(在计算机语句中,称程序“循环”执行这些语句),这个重复过程一直继续,直到shoe的值达到19.
因为此时19不再小18.5,所以shoe<18.5现在就变成了假。
因面控制转到紧跟while循环的第一个语句。在此例中,转到最后的printf()语句。
*关键字while,typedef
*运算符
=-*/
%++ --(type)
*C的各种各样的运算符,其中包括用于普通数学运算的运算符
*运算符的优先级以及术语“语句”和“表达式”的含义
*简单的while循环
*复合语句、自动类型转换和类型指派
*如何编写带有参数的函数
5.1 循环简介
程序清单5.1显示了一个示例程序,该程序做了一点运算来计算穿9码鞋(男人的)脚用英寸表示的长度。为了增加您对循环的理解,程序的第1版演示了不使用循环编程的局限性。
程序清单5.1
[code=plain]/*shoes.c--把一双鞋的鞋码转换成英寸*/ #include <stdio.h> #define ADJUST 7.64 #define SCALE 0.325 int main() { double shoe,foot; shoe=9.0; foot=SCALE*shoe+ADJUST; printf("Shoe size(men's) foot length\n"); printf("%10.1f %15.2f inches\n",shoe,foot); return 0; }
该程序假设您穿9码鞋,然后告诉您用英寸表示您的脚是多长。
程序清单5.2给出了使用while循环改进后的方法。
[code=plain]/*shoes2.c--计算多个鞋码对的英寸长度*/ #include <stdio.h> #define ADJUST 7.64 #define SCALE 0.325 int main() { double shoe,foot; printf("Shoe size(men's)foot length\n"); shoe=3.0; while(shoe<18.5) //while循环开始 { //代码块开始 foot=SCALE*shoe+ADJUST; printf("%10.1f %15.2f inches\n",shoe,foot); shoe=shoe+1.0; } //代码块结束 printf("If the shoe fits,wear it.\n); return 0; }
解释一下while循环是如何工作的?
当程序第一次到达while语句时,检查圆括号内的条件是否为真。在这例子中,条件表达式是shoe<18.5。
shoe被初始化为3.0,它当然为真。最后一个语句shoe增加1.0,使shoe变成4.0.
此时,程序返回while部分去检查条件。为什么在这点呢?因为后面是一个结束花括号(}),而代码使用一对花括号来标出while循环的范围。在两个花括号之间的语句是被重复执行的语句。花括号和花括号里的程序部分被称为一个代码块。现在回到程序,值4小于18.5,所以跟在while后的被括起来的全部命令(代码块)将被重复执行(在计算机语句中,称程序“循环”执行这些语句),这个重复过程一直继续,直到shoe的值达到19.
因为此时19不再小18.5,所以shoe<18.5现在就变成了假。
因面控制转到紧跟while循环的第一个语句。在此例中,转到最后的printf()语句。
相关文章推荐
- On Error Resume Next 语句
- Lua中关系运算符的使用教程
- Lua学习笔记之运算符和表达式
- Lua教程(三):表达式和语句
- Lua基础教程之赋值语句、表达式、流程控制、函数学习笔记
- SQL语句实现查询SQL Server服务器名称和IP地址
- SQL Server的基本功能性语句介绍
- MySQL循环语句之while循环测试
- Ruby中case表达式详解
- C#运算符重载用法实例分析
- SQL语句实现查询并自动创建Missing Index
- 如何在SQL Server 2008下轻松调试T-SQL语句和存储过程
- SQL语句实现查询SQL Server内存使用状况
- sql server 2008中的apply运算符使用方法
- C#中38个常用运算符的优先级的划分和理解
- 讲解C++编程中Address-of运算符&的作用及用法
- SQL语句性能优化(续)
- SQL语句优化提高数据库性能
- 条件控制语句