电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本
换一换
首页 金锄头文库 > 资源分类 > PPT文档下载
分享到微信 分享到微博 分享到QQ空间

c语言程序设计(第2版)中ppt

  • 资源ID:70631338       资源大小:1.17MB        全文页数:139页
  • 资源格式: PPT        下载积分:28金贝
快捷下载 游客一键下载
账号登录下载
微信登录下载
三方登录下载: 微信开放平台登录   支付宝登录   QQ登录  
二维码
微信扫一扫登录
下载资源需要28金贝
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
如填写123,账号就是123,密码也是123。
支付方式: 支付宝    微信支付   
验证码:   换一换

 
账号:
密码:
验证码:   换一换
  忘记密码?
    
1、金锄头文库是“C2C”交易模式,即卖家上传的文档直接由买家下载,本站只是中间服务平台,本站所有文档下载所得的收益全部归上传人(卖家)所有,作为网络服务商,若您的权利被侵害请及时联系右侧客服;
2、如你看到网页展示的文档有jinchutou.com水印,是因预览和防盗链等技术需要对部份页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有jinchutou.com水印标识,下载后原文更清晰;
3、所有的PPT和DOC文档都被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;下载前须认真查看,确认无误后再购买;
4、文档大部份都是可以预览的,金锄头文库作为内容存储提供商,无法对各卖家所售文档的真实性、完整性、准确性以及专业性等问题提供审核和保证,请慎重购买;
5、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据;
6、如果您还有什么不清楚的或需要我们协助,可以点击右侧栏的客服。
下载须知 | 常见问题汇总

c语言程序设计(第2版)中ppt

,C语言程序设计(第2版),第五章,循环结构程序设计,本章要点,循环的基本概念 不同形式的循环控制 多重循环问题,5.1 程序中需要用循环结构 5.2 用while语句和do-while语句实现循环 5.3 用for 语句实现循环 5.4 循环的嵌套 5.5 用break语句和continue语句改变循环状态 5.6 几种循环的比较 5.7 程序举例 5.8 提高部分,主要内容,5.1 程序中需要用循环结构,什么是循环? 为什么要使用循环?,问题1:,问题2:求学生平均成绩 分数相加后除以课数,在许多问题中需要用到循环控制。循环结构就是用来处理需要重复处理的问题的,所以又称重复结构。它和顺序结构、选择结构共同作为各种复杂程序的基本构造单元。 循环分为两种:无休止循环和有终止循环 构成有效循环的条件:循环体和循环结束条件,5.2 用while语句和do-while语句实现循环 5.2.1 用while语句实现循环,while语句用来实现“当型”循环结构 一般形式: while (表达式) 语句 当表达式为非0值时,执行while语句中的内嵌语句。其特点是:先判断表达式,后执行循环体,即内嵌语句。,例题 5.1,求1+2+3+100的和,解题思路,(1)开始时使sum的值为0,被加数i第一次取值为1。开始进入循环结构。 (2)判别“i100”条件是否满足,由于i小于100,因此“i100”的值为真。所以应当执行其下面矩形框中的操作。 (3)执行sum=sum+i,此时sum的值变为1了,然后使i的值加1,i的值变为2了,这是为下一次加2作准备。流程返回菱形框。 (4)再次检查“i100”条件是否满足,由于i的值为2,小于100,因此“i100”的值仍为真,所以应执行其下面矩形框中的操作。 (5)执行sum=sum+i,由于sum的值已变为1,i的值已变为2,因此执行sum=sum+i后sum的值变为3。再使i的值加1,i的值变为3。流程再返回菱形框。 (6)再次检查“i100”条件是否满足,如此反复执行矩形框中的操作,直到i的值变成了100,把i加到sum中,然后i又加1变成101了。当再次返回菱形框检查“i100”条件时,由于I已是101,大于100,“i100” 的值为假,不再执行矩形框中的操作,循环结构结束。,5.2 用while语句和do-while语句实现循环,#include void main() int i,sum=0; /* sum是用来存放累加和的变量 */ /* 初值为0 */ i=1; while (i=100) /* 当I小于或等于100时 */ /* 执行下面花括号中的复合语句 */ sum=sum+i; /* 将i的当前值累加到变量sum中 */ i+; /* 使i的值加1 */ printf(%dn,sum); ,说明: (1)循环体如果包含一个以上的语句,应该用花括号括起来,以复合语句形式出现. (2)在循环体中应有使循环趋向于结束的语句。,运行结果: 5050,编写程序,5.2 用while语句和do-while语句实现循环,5.2 用while语句和do-while语句实现循环 5.2.2 用do-while语句实现循环,do-while语句的特点:先执行循环体,然后判断循环条件是否成立。,执行过程:先执行一次指定的循环体语句,然后判别“表达式”,当表达式的值为非0(“真”) 时,返回重新执行循环体语句,如此反复,直到表达式的值等于0 (“假”)为止,此时循环结束。 while语句和do-while语句的关系:同一个问题既可 以用while循环处理,也可以用do-while循环来处理。 二者是可以互相转换的。,一般形式: do 循环体语句 while(表达式);,例题 5.2 求1+2+3+100的和 #include void main() int i,sum=0; i=1; do /* 在循环开始时不检查条件,先执行一次循环体 */ sum=sum+i; i+; while(i=100); printf(“%dn,sum); ,运行结果: 5050,说明:可以看到,结果和例5.1完全相同。,编写程序,5.2 用while语句和do-while语句实现循环,例题 5.3,募集慈善基金10000元,有若干人捐款,每输 入一个人的捐款数后,计算机就输出当时的捐款总 和。当某一次输入捐款数后,总和达到或超过10000 元时,即宣告结束,输出最后的累加值。,解题思路,解此题的思路是设计一个循环结构,在其中输入捐 款数,求出累加值,然后检查此时的累加值是否达 到或超过预定值,如果达到了,就结束循环操作。,5.2 用while语句和do-while语句实现循环,#include void main() float amount,sum=0; /*变量sum用来存放累加和*/ do scanf(“%f“, ,运行结果: 1000 (输入捐款额) 1850 1500 2600 2500 1200 sun= 10650.00,说明:设计循环结构,要考虑两个问题:一是循环体,二是循环结束条件。注意while循环中判断的条件是循环继续的条件,而不是结束条件。,5.2 用while语句和do-while语句实现循环,编写程序,5.3 用for语句实现循环 5.3.1 for语句的一般形式和执行过程,C语言中的for语句使用最为灵活,不仅可以用于循环次数已经确定的情况,而且可以用于循环次数不确定而只给出循环结束条件的情况,它完全可以代替while语句。 一般形式: for(表达式1;表达式2;表达式3) 语句,5.3 用for语句实现循环 5.3.1 for语句的一般形式和执行过程,for语句的执行过程: (1) 先求解表达式1。 (2) 求解表达式2,若其值为真(值为非0),则执 行for语句中指定的内嵌语句,然后执行下 面第(3)步。若为假(值为0),则结束循环, 转到第(5)步。 (3) 求解表达式3。 (4) 转回上面第(2)步骤继续执行。 (5) 循环结束,执行for语句下面的一个语句。,for语句最简单的形式: for(循环变量赋初值;循环条件;循环变量增值),例如: for(i=1;i=100;i+) sum=sum+i;,相当于: i=1; while(i=100) sum=sum+i; i+; ,5.3 用for语句实现循环 5.3.1 for语句的一般形式和执行过程,5.3 用for语句实现循环 5.3.2 for循环程序举例,国王的小麦。相传古代印度国王舍罕要褒赏他的 聪明能干的宰相达依尔(国际象棋的发明者),国王 问他要什么?达依尔回答说:“国王只要在国际象棋 的棋盘第1个格子中放1粒麦子,第2个格子中放2粒 麦子,第3个格子中放4粒麦子,以后按此比例每一 格加一倍,一直放到第64格(国际象棋的棋盘8*8=64 格),我感恩不尽,其他什么都不要了。”国王想, 这有多少!还不容易!让人扛来一袋小麦,但不到 一会儿全用没了,再来一袋很快又用完了。结果全 印度的粮食全部用完还不够。国王纳闷,怎样也算 不清这笔账。现在我们用计算机来算一下。,例题 5.4,解题思路,麦子的总粒数是: 分别计算出每一格的麦子粒数,把它们加起来,就 得到总粒数。据估算,1 小麦约有1.42 粒,可以 计算出小麦的体积。 可以用for语句实现循环。,5.3 用for语句实现循环,#include void main() double p=1, t=1, v; int i; for(i=1; i64; i+) /* 执行63次循环 */ p = p * 2; /* p是当前一个格子中的麦子粒数 */ t = t + p; /* t是当前麦子总粒数 */ v = t / 1.42e8; /* v是总体积 */ printf(“total=%en“,t); /* 用指数形式输出麦子总粒数 */ printf(“volume=%en“,v);/* 用指数形式输出麦子总体积 */ ,运行结果: total=1.844674e+019 volnme=1.299066e+011,编写程序,5.3 用for语句实现循环,说明: 变量i用来控制循环的次数,开始时i=1,在完成第1次循环后,i的值加1变为2,由于264,所以执行第2次循环,依此类推,当i变到63时,执行最后一次循环,i再变为64,由于i不再小于64了,不再执行循环。接着计算体积,输出结果。,5.3 用for语句实现循环,5.3 用for语句实现循环,人口增长预测。据2005年末统计,我国人口为 130756万人,如果人口的年增长率为1%,请计算到 哪一年中国总人口超过15亿。,例题 5.5,解题思路,计算人口增长和计算存款利息的公式是相同的。假 设原来人口为 ,则一年后的人口: 其中r是年增长率。用此公式依次计算出每年的人 口,每算出一年的人口后就检查一下是否达到或超 过15亿?如果未达到或超过15亿,就再计算下一年 的人口,直到某一年的人口达到或超过15亿为止。,编写程序,5.3 用for语句实现循环,#include void main() double p=1.30756e9,r=0.01; int y; for(y=2006; p1.5e9; y+) /* 赋值号两侧的变量p代表不同含义 */ p=p*(1+r); printf(“year=%d,p=%en“,y-1,p); ,运行结果: year=2019,p=1.503007e+009,说明: 注意区分变量p在不同阶段中的不同含义。 y代表年份。循环体中只有一个语句,用来计算从2006年开始的各年的人口数。在for语句中设定的循环条件是p15亿,当某一年的p达到或超过15亿,就停止循环,输出年份和当年的人口数。由于在最后结束循环前y又加了1,因此在输出年份时应输出y-1的值而不是y的值。,5.3 用for语句实现循环,5.3 用for语句实现循环 5.3.2 for循环程序举例,一个变量开始时有一初值,通过一定的运算, 可以推算出一个新的值,再从这个新值又推出下一 个新值,即不断用计算出的新值去取代原有的值, 这种方法称为迭代。上面的计算公式p*(1+r)称为迭 代公式。迭代算法一般是用循环来实现的。迭代是 一种常用的算法,用人工实现很麻烦,而用计算机 实现却十分方便。,5.4 循环的嵌套,一个循环体内又包含另一个完整的循环结构称为循环的嵌套。内嵌的循环中还可以嵌套循环,这就是多层循环。 三种循环(while循环、do-while循环和for循环)可以互相嵌套。,5.4 循环的嵌套,下面几种都是合法的形式: (1) while( ) (2) do (3) for(;) while( ) do for(;) while( ); while( );,5.4 循环的嵌套,(4) while( ) (5) for(;) (6) do do while( ) for(;) while( )

注意事项

本文(c语言程序设计(第2版)中ppt)为本站会员(tia****nde)主动上传,金锄头文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即阅读金锄头文库的“版权提示”【网址:https://www.jinchutou.com/h-59.html】,按提示上传提交保证函及证明材料,经审查核实后我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.