C语言程序设计循环结构程序设计

C语言程序设计循环结构程序设计

ID:38553187

大小:1.49 MB

页数:42页

时间:2019-06-14

C语言程序设计循环结构程序设计_第1页
C语言程序设计循环结构程序设计_第2页
C语言程序设计循环结构程序设计_第3页
C语言程序设计循环结构程序设计_第4页
C语言程序设计循环结构程序设计_第5页
资源描述:

《C语言程序设计循环结构程序设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第5章循环结构程序设计C语言程序设计北京航空航天大学交通科学与工程学院徐国艳2021/7/152循环的基本概念不同形式的循环控制多重循环问题2021/7/153什么是循环?为什么要使用循环??5.1循环的基本概念循环是有规律的重复操作。将复杂问题分解为简单的操作过程,程序只对简单过程描述,这些过程的多次重复就可完成对问题的求解。重复的频繁性决定了循环在程序设计中必不可少!一、循环问题问题1:问题2:求学生平均成绩分数相加后除以课程数做99次加法问题3:找出数集x中能同时被3和7整除的数找数问题分解循环控制2021/7/1545.1循环的基本概念while循环(5.2节)dowh

2、ile循环(5.3节)for循环(5.4节)if--goto循环(一般不用)难点:循环嵌套C提供四种循环控制语句:2021/7/1555.1循环的基本概念(续)二、循环结构循环结构有两种形式:当型循环结构直到型循环结构循环体N条件Y当型循环直到型循环条件NY循环体先判断后循环先循环后判断入口出口区别?循环体中是一个过程,该过程的复杂程度取决于问题及对问题的分解2021/7/1565.1循环的基本概念(续)循环体N条件Y当型循环条件循环次数Y循环体?Y执行1Y执行3Y执行2N结束循环体Y?循环体Y??N3次在循环入口处判断当条件为真时执行循环2021/7/1575.1循环的基本概

3、念(完)直到型循环在循环出口处判断,当条件为真时继续执行循环,直到条件为假时为止。条件NY循环体条件循环次数执行1Y执行3Y执行2N结束3次Y条件循环体Y条件循环体Y条件循环体Y执行4条件循环体N4次循环至少执行一次2021/7/1585.2while循环控制语句一般格式while(表达式){语句组}一般为关系表达式或逻辑表达式,也可以是C语言其他类型的合法表达式用来控制循环体是否被执行称为内嵌语句,可以是基本语句、控制语句,也可以是复合语句是循环重复执行的部分当条件为真时执行循环体2021/7/159语句一般格式while(表达式){语句组}功能:计算“表达式”的值,为非0(

4、逻辑真)时,重复执行内嵌语句,每执行一次,就判断一次表达式的值,直到表达式的值为0时结束循环,转去执行while后面的语句。2021/7/1510当表达式为真语句N-S结构图NY流程图表达式非0?语句循环控制条件循环体语句一般格式while(表达式){语句组}2021/7/1511例如:【例5.1】编写程序,求100个自然数的和即:s=1+2+3+…+100思路:寻找加数与求和的规律加数i——从1变到100,每循环一次,使i增1,直到i的值超过100。i的初值设为1。求和——设变量sum存放和,循环求sum=sum+i,直至i超过100。2021/7/1512算法和程序:#in

5、clude"stdio.h"voidmain(){inti,sum;i=1;sum=0;while(i<=100){sum=sum+i;i++;}printf("sum=%d",sum);}程序输出结果:sum=5050i:循环控制变量sum:累加器i=1,sum=0当i<=100sum=sum+ii++输出sum2021/7/1513注意:如果while的(表达式)值为0,则循环体一次也不执行(例如当i的初值=101)。在循环体中必须有使循环趋向结束的操作,否则循环将无限进行(死循环)。在循环体中,语句的先后位置必须符合逻辑,否则会影响运算结果。思考程序段的输出?……i=

6、1;sum=0;while(i<=100){i++;sum=sum+i;}运行后,输出:sum=5150原因是什么?2021/7/1514注意(续):总结:为了保证循环正常运行,应该特别注意:循环控制条件的描述控制条件的初始状态(初始值)循环体内部对控制条件的影响2021/7/15155.3do-while语句语句一般格式do{语句组}while(表达式);功能:先执行内嵌语句(循环体),之后计算表达式的值,不为0(逻辑真)时,再执行循环体并判断条件,直到表达式的值为0结束循环,转去执行while下面的语句。直到条件为假时结束循环2021/7/1516do-while循环的算法

7、循环体当表达式为真N-S结构图NY循环体表达式非0?流程图#include"stdio.h"voidmain(){inti=1,sum=0;do{sum=sum+i;i++;}while(i<=100);printf("%d",sum);}用do-while语句求100个自然数的和2021/7/1517voidmain(){intn=1,s=0,x;scanf("%d",&x);printf("s=%d",s);}求:流程图n<=xs=s+nYn加1开始初始化n,s,x输入xdo{s

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

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

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