第六章循环结构程序设计.pdf

  1. 1、本文档共19页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

第六章循环结构程序设计

许多问题的求解归结为重复执行的操作,比如数值计算中的方程迭代求根,非数值计算

中的对象遍历。重复执行就是循环。重复工作是计算机特别擅长工作之一。

重复执行不是简单地重复,每次重复,操作的数据(状态、条件)都可能发生变化。

重复的动作是受控制的,比如满足一定条件继续做,一直做直到某个条件满足,做多少

次结束。也就是说重复工作需要进行控制-循环控制。C语言提供了三种循环控制语句(不

考虑goto/if构成的循环),构成了三种基本的循环结构:

(1)while语句构成的循环结构(“当型循环”)

(2)do-while语句构成的循环结构(“直到型循环”)

(3)for语句构成的循环结构(“当型循环”)

6、1while语句(当型循环)

while语句的一般形式是:

while(表达式)语句;

或:

循环体

while(表达式)

{循环条件

语句序列;

}

其中:表达式称为“循环条件”,语句称为“循环体”。为便于初学者理解,可以读

做“当条件(循环条件)成立(为真),循环执行语句(循环体)”

执行过程是:

1)先计算while后面的表达式的值,如果其值为“真”则执行循环体,

2)在执行完循环体后,再次计算while后面的表达式的值,如果其值为“真”则继续执行

循环体,如果表达式的值为假,退出此循环结构。

while循环的执行流程:

当表达式为“真”

循环体

假/n/0

表达式

真/y/非0

循环体

使用while语句需要注意以下几点:

(1)while语句的特点是先计算表达式的值,然后根据表达式的值决定是否执行循环体中

的语句。因此,如果表达式的值一开始就为“假”,那么循环体一次也不执行。

(2)当循环体为多个语句组成,必须用{}括起来,形成复合语句。

(3)在循环体中应有使循环趋于结束的语句,以避免“死循环”的发生。

例6-1:利用while语句,编写程序计算1+2+3+…+100。

解:

算法1:直接写出算式

S1:result=1+2+3+4+5+…+100

很简单。但是写都写得累死了。

算法2:

考虑到1+2+3+…+100可以改写为:(((1+2)+3)+…+100),

S1:p1=1+2

S2:p2=p1+3

S3:p3=p2+4

S99:p99=p98+100结果在p100里。

此算法也一样麻烦,要写99步,同时要使用99个变量。本算法同样不适合编程。

但是可以从本算法看出一个规律。即:每一步都是两个数相加,加数总是比上一步加数

增加1后参与本次加法运算,被加数总是上一步加法运算的和。可以考虑用一个变量i存放

加数,一个变量p存放上一步的和。那么每一步都可以写成:p+i,然后让p+i的和存入p,

即:每一步都是p=p+i。也就是说p既代表被加数又代表和。这样可以得到算法3。执行完

步骤S99后,结果在p中。

算法3:

S0:p=0,i=1

S1:p=p+i,i=i+1

S2:p=p+i,i=i+1

S3:p=p+i,i=i+1

S99:p=p+i,i=i+1

从算法3表面上看与算法2差不多,同样要写99步。但是从算法3可以看出S1-S99

步骤实际上是一样的,也就是说S1-S99同样的操作重复做了99次。计算机对同样的操作可

以用循环完成,循环是计算机工作的强项(计算机高速度运算)。算法4就是在算法3的基

础上采用循环功能的算法实现。

算法4:

S0:p=0,i=1(循环

文档评论(0)

***** + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档