C primer plus 第5章 运算符、表达式和语句 5.1循环简价

5.1 循环简介

程序清单5.1显示了一个示例程序,该程序做了一点运算来计算穿9码鞋(男人的)脚用英寸表示的长度。为了增加您对循环的理解,程序的第1版演示了不使用循环编程的局限性。

程序清单5.1

/*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循环改进后的方法。

/*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()语句。

转载于:https://my.oschina.net/idreamo/blog/676065

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值