《流程控制语句》PPT课件

上传人:xt****7 文档编号:177261336 上传时间:2022-12-25 格式:PPT 页数:40 大小:360KB
收藏 版权申诉 举报 下载
《流程控制语句》PPT课件_第1页
第1页 / 共40页
《流程控制语句》PPT课件_第2页
第2页 / 共40页
《流程控制语句》PPT课件_第3页
第3页 / 共40页
资源描述:

《《流程控制语句》PPT课件》由会员分享,可在线阅读,更多相关《《流程控制语句》PPT课件(40页珍藏版)》请在装配图网上搜索。

1、第四章 流程控制语句(2)2011-3-29王卫红王卫红/曹玉辉曹玉辉 流程控制语句用来控制程序的执行过程,流程控制语句用来控制程序的执行过程,它包括以下三种语句:它包括以下三种语句:选择:用来解决实际应用中按不同情况进行不同处理的问题.包括:if语句 和 switch语句 循环:用来解决实际应用中需要重复处理的问题.包括:for语句、while语句 和 do语句 跳转:用来改变顺序向下执行的正常顺序.包括:goto、continue、break 和 return语句 表达式表达式 语语 句句 真 假 一、一、if语句的简单分支语句的简单分支 语句:语句:if(表达式)(表达式)语语 句句 v

2、 表达式为任意表达式表达式为任意表达式 v 若有多条语句,则要构成复合语句若有多条语句,则要构成复合语句 执行:计算执行:计算 表达式的值,若为真(不为表达式的值,若为真(不为0)则执行语句;否则不执行语句则执行语句;否则不执行语句 二、二、if语句的双分支语句的双分支if(表达式)(表达式)语句语句1else 语句语句2真假入口出口 执行:执行:若表达式的值不为若表达式的值不为0,执行语句,执行语句1,否则,否则执行语句执行语句2 语句:语句:嵌套的两种形式嵌套的两种形式:(1)嵌套嵌套 ifelse(2)嵌套嵌套 else if三、三、if 语句的嵌套(语句的嵌套(处理多分支问题处理多分支

3、问题)(1 1)嵌套嵌套 ifelseifelse若若表达式表达式1的值为非的值为非0,即,即真真,则,则执行中层执行中层ifelse结构结构;否则否则,执行,执行语句语句4。执行执行中层中层时,若时,若表达式表达式2的值为非的值为非0,即,即真真,则,则执行内执行内层层ifelse结构结构;否则否则,执行,执行语句语句3。执行执行内层内层时,若时,若表达式表达式3的值为非的值为非0,即,即真真,则,则执行语执行语句句1;否则否则,执行,执行语句语句2。if(表达式(表达式1)语句语句1;else if(表达式表达式2)语句语句2;else if(表达式表达式3)语句语句3;.else if(

4、表达式表达式n)语句语句n;else 语句语句n+1;/*前面前面n个条件均个条件均 不成立,执行语句不成立,执行语句n+1*/(2 2)嵌套)嵌套 else ifelse if 形式:形式:switch(表达式)(表达式)case 常量表达式常量表达式1:语句序列:语句序列1;case 常量表达式常量表达式2:语句序列:语句序列2;.case 常量表达式常量表达式n:语句序列:语句序列n;default:语句序列:语句序列n+1;四、四、switch 语句是多分支选择语句语句是多分支选择语句_ switch 通常与break语句联用:break用于中断或结束语句(只能用在switch语句和循

5、环语句中)分支(选择)结构小结分支(选择)结构小结1、if语句的简单分支语句的简单分支2、if语句的双分支:语句的双分支:if-else3、if的嵌套的嵌套4、switch 语句的使用语句的使用书中例题:P80(2)P81(3)、P85(2)P86(3)4.3 4.5 循环结构循环结构一、for 语句*二、while语句*三、do-while 语句*主要学习语句的执行过程、使用方法循环:重复执行一段语句语句语句v 格式for(表达式表达式1;表达式;表达式2;表达式;表达式3)语句语句表达式表达式2语句语句表达式表达式1表达式表达式3表达式表达式1:作为初始化先执行表达式先执行表达式1的值;的

6、值;再执行表达式再执行表达式2,如果值为真,执行语句,再,如果值为真,执行语句,再执行表达式执行表达式3,重复,重复;如果表达式如果表达式2的值为假,退出循环,继续执行的值为假,退出循环,继续执行下面的语句。下面的语句。v 执行情况真假表达式表达式2:作为循环控制,是循环条件:作为循环控制,是循环条件表达式表达式3:每次都要做:每次都要做,改变循环变量,改变循环变量4.3 for语句语句(计数式型循环计数式型循环)for(循环变量赋初值;循环条件;循环变量增值)循环变量赋初值;循环条件;循环变量增值)语句语句for(s=0,i=1;i=100;i+)s+=i;注意:注意:v 这三个表达式都可以

7、忽略,但分号 不能省 for(;)v 不能构成死循环,死循环只能用ctrl+c强行中止,所以源程序编辑后应先存盘。for循环最常见格式:循环最常见格式:例:求例:求n!(n的值由键盘输入)的值由键盘输入)#includevoid main()int n;double s=1.0;coutn;for(int i=1;i=n;i+)s*=i;coutn!=sendl;例:输入一个数,判断是否为素数例:输入一个数,判断是否为素数#includevoid main()int n,i;cinn;for(i=2;in;i+)if(n%i=0)break;if(i=n)cout“nYes”;else cou

8、t“nNo”;例例4.3.3:打印一九乘法表。打印一九乘法表。1*1=1 1*2=2 1*3=3 1*9=9#includevoid main()int i=1,j;cout“n”;for(j=1;j=9;j+)couti“*”j“=“i*j;int i,j;for(i=1;i=9;i+)cout“n”;for(j=1;j=9;j+)/*循环嵌套*/couti“*”j“=“i*j“t”;int i,j;for(i=1;i=9;i+)cout“n”;for(j=1;j=i;j+)/*循环嵌套*/couti“*”j“=“i*j“t”;1*1=1 2*1=2 2*2=43*1=3 3*2=6 3*3

9、=94*1=4 4*2=8 4*3=12 4*4=169*1=9 9*2=18 9*3=27 9*4=36.循环嵌套循环嵌套内循环外循环v 嵌套不能有交叉 v 在循环嵌套中,break语句只能退出一层循环双重双重for循环的执行过程:循环的执行过程:例:求例:求1!+2!+3!+5!#include 10 s=0;void main()20 for(i=1;i=3;i+)int i,j;30 m=1;long int m,s;40 for(j=1;j=i;j+)50 m*=j;60 s+=m;70 coutsendl;102030405060m=1s=0i=1j=1m=1*1s=0+1i=2j

10、=1m=1m=1*1j=2m=1*2s=1+2i=3j=1j=2j=4m=1m=1*1 m=1*2 m=2*3s=3+670s=9i=4外走一外走一内走遍内走遍j=2j=3j=3例:打印出例:打印出100到到200之间的素数之间的素数#includevoid main()int i,j;for(i=100;i=200;i+)for(j=2;j=i)cout“t”i;#includevoid main()int i,j,n,m;long s=0,t;cinnm;for(i=1;i=n;i+)t=1;for(j=1;j=m;j+)t*=i*2-1;s+=t;couts“n”;例:例:1m+3 m+

11、5 m+7 m+.返回返回v格式:while(表达式)语句v执行过程:先求表达式的值,判断为真为假,若为真,则执行语句;否则退出循环。真假表达式语句假注意:注意:语句:一个语句,不是语句序列语句:一个语句,不是语句序列表达式后面不能有分号表达式后面不能有分号4.4 while 语句语句(条件循环条件循环)例:求例:求1+2+3+100的和的和#includevoid main()int s,i;s=0;/*s s为累加和为累加和 */i=1;/*i i为循环控制变量为循环控制变量 */while(i=100)/*循环条件循环条件 */s+=i;i+;couts;#include void ma

12、in()int s,i;10:s=0;20:i=1;30:while(i=4)40:s+=i;50:i+;60:couts;s=0循环过程如下:循环过程如下:102040305060i=1s=0+1i=21s=1+2i=311i=4s=3+30s=6+4i=5s=101例例4.4.2:编程求编程求 的近似值的近似值,公式公式 /4 1-1/3+1/5-1/7+1/9-#include#include void main()int s;float n,t,pi;s=1;n=1;t=1;pi=0;while(fabs(t)1e-6)pi=pi+t;n=n+2;s=-s;t=s/n;pi=4*pi

13、;cout“pi=”pi“n”;分析分析:题目仍可以看成是累加求和题目仍可以看成是累加求和不同的是不同的是,相加的每一项正负相间相加的每一项正负相间,公式是无穷的公式是无穷的,所以我们规定当所以我们规定当相加项的绝对值小于相加项的绝对值小于(即即106)时停止计算时停止计算tpins11-13-1/310 11/551返回返回v格式do 语句while(表达式)v执行情况:先执行语句,再计算表达式的值,若非0,再执行语句;否则退出循环,执行下面的语句真表达式语句假 do后若有多条语句,需使用复合语句语句至少被执行一次,不同于while语句v注意4.5 do-while语句语句(直到型循环直到型

14、循环)_ while 语句与do-while语句(求(求1到到100的累加和)的累加和)#includevoid main()int s,i;s=0;cini;while(i=100)s+=i;i+;couts;#includevoid main()int s,i;s=0;cini;do s+=i;i+;while(i=100);couts;输入:输入:101输出:输出:0输出:输出:101输入:输入:101三种循环语句的比较三种循环语句的比较:for和和 while语句是先判断循环条件再执行循环语句是先判断循环条件再执行循环体,而体,而do循环是先执行循环体,然后再判断,循环是先执行循环体,

15、然后再判断,依次反复进行下去,直到循环条件的值为假时依次反复进行下去,直到循环条件的值为假时止,所以,止,所以,for和和 while的循环体可能一次也不的循环体可能一次也不执行;而执行;而do语句的循环体至少执行一次。语句的循环体至少执行一次。一般情况下一般情况下,它们之间可以相互转换它们之间可以相互转换,编程时可编程时可 以任选使用以任选使用,通常使用通常使用for循环较简单。循环较简单。在任一种循环的循环体内都可以使用在任一种循环的循环体内都可以使用break语语 句使之终止循环的执行,使用句使之终止循环的执行,使用continue语句语句结束一次循环体的执行。结束一次循环体的执行。循环

16、结构小结循环结构小结一、for 语句*二、while语句*四、循环的嵌套三、do-while 语句*书中例题:P92(4)、P95(3)、P97(2)P99(1)、P103(1)返回返回 用来改变顺序向下执行的正常顺序.包括:goto、break、continue和 return语句4.6 跳转语句跳转语句一、一、goto 语句语句格式:goto 语句标号;(注:语句标号后加:号)功能:无条件转向语句。如:goto loop;二、二、break 语句语句_ 只用于switch语句和循环中,用在循环中,用来中止循环,提前跳出循环体#includevoid main()int i=1,s=0;wh

17、ile(i=2000)break;s+=i;i+;cout“s=“s “i=”i;例例4.6.1:结果:s=2016 i=64三、三、continue 语句语句v 只能用在循环中v continue通常与if语句结合,一同用于循环结构v 注意:与break语句的区别continue:结束本次循环,继续下次循环break:中止循环的进行1.break语句语句:中止循环或中止循环或switch结构结构2.continue语句语句:结束本次循环结束本次循环,然后再根据是否满足然后再根据是否满足 条件来决定是否执行下次循环条件来决定是否执行下次循环 P1真真假假语句语句1语句语句2P2真真break;

18、假假P1真真假假语句语句1语句语句2P2真真continue;假假例:把例:把100到到200之间的不能被之间的不能被3整除的数整除的数输出出来输出出来#includevoid main()int n;for(n=100;n=200;n+)if(n%3=0)continue;coutPrecision直到结果非常相近X1 即为结果 其中 Precision为要求的精度.算法实现:算法实现:p76 例例2xn和和 xn+1:例:例:x和和x1 迭代初值:迭代初值:x12.设两个变量来实现设两个变量来实现f(xn)和和f(xn):例:例:y1和和 y23.迭代的规律:迭代的规律:x=x1 y1=f(x1)y2=f(x1)x1=x-y1/y2 判判|x-x1|=10-3?是,是,x为所求的为所求的根;否则根;否则x x1,再迭代,直到满足条件。,再迭代,直到满足条件。程序见程序见 P76

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!