程序基本结构

程序基本结构

ID:37268540

大小:158.00 KB

页数:9页

时间:2019-05-20

程序基本结构_第1页
程序基本结构_第2页
程序基本结构_第3页
程序基本结构_第4页
程序基本结构_第5页
资源描述:

《程序基本结构》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第四章程序基本结构4.6循环结构的程序设计循环结构又称作重复结构。重复是计算机解题的一个重要特征,计算机运算速度快,最善于进行重复型的工作。在程序设计时,许多问题的求解也都归结为重复执行某一动作或计算。例如输入全班学生的成绩;求若干数之和;迭代求根等。因此循环结构在程序设计中十分重要。有两种循环结构:“当”型和“直到”型。C语言中提供3种语句:while,do-while,for语句来实现循环结构。4.6.1while语句while语句用于实现“当”型循环结构。1、一般形式:while(表达式)循环语句;其中:表达式为控制循环是否继续执行的条件,循环语句为需要重复执行的部分,称

2、为循环体。非00表达式循环语句2、执行过程:先计算表达式的值,若表达式的值为真(非0)时,则执行循环体,并不断重复直到表达式的值为假(0)时,停止执行循环体,转向循环体外的第一条语句。执行过程如图所示。while语句执行过程while语句特点:先判断,后执行。例4-41:用while语句求:1+2+3+……+100的值。main(){inti,sum;/*i为循环变量,sum为累加和变量*/i=1;sum=0;/*循环变量i赋初值1*/while(i<=100)/*i的终值为100*/{sum+=i;i++;/*i加1*/}printf(“1+2+3+…+100=%d”,s

3、um);}运行结果为:1+2+3+…+100=5050循环程序的几个要点:(1)定义循环变量。(2)确定循环变量的初值、终值、增量(步长)。(3)每执行一次循环体,循环控制变量要按增量变化一次,使循环变量的值趋向终值,即循环为有限次数循环。如上例中,变量i为循环控制变量,i的初值为1,步长为1,循环结束的条件为i>100,循环次数为100次。4.6.2do—while语句do-while语句用来实现“直到”型循环结构。1.一般形式:do循环语句;while(表达式);其中表达式、循环语句含义同while语句。非00表达式循环语句2、执行过程:先执行循环语句一次,再判别表达式的值

4、,若表达式的值为真,则继续循环,否则终止循环。执行过程如图所示。do-while语句执行过程其特点:先执行,后判断。例4-42:用do-while语句求:n!=1*2*3*…*(n-1)*n。main(){inti,n;longs;/*i为循环变量,s为累乘变量*/s=1;i=1;/*循环变量i赋初值1*/scanf(“%d”,&n);do{s*=i;i++;/*i加1*/}while(i<=n);/*i的终值为n*/printf(“%d!=%ld”,n,s);}4.6.3for语句for语句几乎是所有高级语言都提供的循环控制结构。但C语言中的for语句使用最为灵活,它不仅

5、可以用于循环次数确定的情况,而且可以用于循环次数不能确定而只能给出循环条件的情况,因而完全可以代替while语句和do-while语句。1、一般形式:for(表达式1;表达式2;表达式3)循环语句其中:(1)表达式1一般为赋值表达式,用于在进入循环之前给循环变量赋初值。(2)表达式2一般为关系表达式或逻辑表达式,用于执行循环条件的判定,它与while、do-while循环中的表达式作用完全相同。(3)表达式3一般为赋值表达式或自增、自减表达式,用于修改循环变量的值。2、执行过程:(1)、先计算表达式1的值;(2)、再计算表达式2的值,若其值为真(非0),则执行循环语句(即循环体

6、)一次,然后执行第3步。若其值为假(0),则结束循环,转到第5步。(3)、计算表达式3的值(一般为对循环变量进行改变)。(4)、转回第2步继续执行。(5)、执行for语句下面的语句。0非0退出循环表达式2计算表达式1计算表达式3循环语句for语句的执行流程如图所示。for语句的执行流程图例4-43:用for语句求:1+2+3+……+100的值。main(){inti,sum=0;for(i=1;i<=100;i++)sum+=i;printf(“sum=%d”,sum);}说明:for循环的三个表达式可以省略一个,省略两个,甚至省略三个,但分号间隔不能少。如上例中程序段:s

7、um=0;for(i=1;i<=100;i++)sum=sum+i;可以有以下几种等价表达方式:表达方式1(省略表达式1):i=1;sum=0;for(;i<=100;i++)sum=sum+i;表达方式2(省略表达式3):sum=0;for(i=1;i<=100;){sum=sum+i;i++;}表达方式3(省略表达式1和表达式3):i=1;sbum=0;for(;i<=100;){sum=sum+i;i++;}当然,这里所谓的“省略”,只是在for语句中省略。实际上是把所需表达式挪到fo

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。