您的位置:首页 > 其它

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

[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()语句。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息