欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    《循环结构》课件.ppt

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

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    《循环结构》课件.ppt

    1 1uu循环结构循环结构第三章第三章程程序序设设计计|第第三三章章2 2什么是循环结构?什么是循环结构?循环语句循环语句练习和综合设计练习和综合设计本讲主要内容本讲主要内容3 3循环结构循环结构是通过对条件的判断来重复执行某是通过对条件的判断来重复执行某些程序语句或程序段些程序语句或程序段 C C语语言言中中是是用用forfor语语句句或或whilewhile语语句句或或dowhiledowhile语语 句句 来来构构成成循循环环结结构构的的。循循环环结结构构的的主主要要功功能能是是重重复复执执行行某某些些语句或某段程序。语句或某段程序。循环结构循环结构4 4问问题题:在在唱唱歌歌等等大大奖奖赛赛评评分分时时,一一般般要要有有若若干干名名评评委委,记记分分规规则则为为:去去掉掉一一个个最最高高分分,去去掉掉一一个个最最低低分分,再再算算平平均均分分。设设按按百百分分制制计分,试设计一个算分程序。计分,试设计一个算分程序。用循环来累用循环来累计总得分计总得分引例引例程序5 5语句形式:语句形式:for(for(表达式表达式1;1;表达式表达式2;2;表达式表达式3)3)语句语句;可以是复合语句可以是复合语句非非0时执行循环体时执行循环体循环前先求解循环前先求解常为赋值语句常为赋值语句每次执行完循环体后每次执行完循环体后求解求解,常为增量或减常为增量或减量量执行过程执行过程 :(1 1)求解表达式)求解表达式1 1,为循环控制,为循环控制变量赋初值。变量赋初值。(2 2)求解表达式)求解表达式2 2,若表达式,若表达式2 2的的值为真,则执行循环体一次,若值为真,则执行循环体一次,若为假则结束循环结构,转去执行为假则结束循环结构,转去执行循环的后继语句。循环的后继语句。(3 3)执行完一次循环体后,接着)执行完一次循环体后,接着求解表达式求解表达式3 3,对循环控制变量进,对循环控制变量进行增量或减量操作,再重复第行增量或减量操作,再重复第2 2步步操作。操作。for(x=1;x5;x+)for(x=1;x5;x+)printf(printf(%d%d;x);x);forfor语句语句6 6例例 从键盘上输入张三同学五门课程的成绩从键盘上输入张三同学五门课程的成绩6767、9292、7878、8383、7575,计算出平均成绩并输出。,计算出平均成绩并输出。#include#include main()main()int i,sum,score;sum=0;int i,sum,score;sum=0;for(i=1;i=5;i+)for(i=1;i=5;i+)scanf(%d,&score);sum=sum+score;scanf(%d,&score);sum=sum+score;printf(n printf(n平均成绩为:平均成绩为:%6.2f n,%6.2f n,sum/5.0);sum/5.0);第第i i次循环次循环 i=5 i=5 的值的值 sum sum的值的值 1 1 真真 0+67 0+67 2 2 真真 67+92 67+92 3 3 真真 159+78 159+78 4 4 真真 237+83 237+83 5 5 真真 320+75 320+75 6 6 假假 结束循环结束循环forfor语句举例语句举例7 7例例 从从键键盘盘上上输输入入一一个个大大于于2 2的的整整数数n n,判判断断n n是是不是素数。不是素数。只能被只能被1 1和它本身整除的整数称和它本身整除的整数称为为素数。在素数。在数学中,要判断数学中,要判断n n是否是否为为素数,通常素数,通常让让n n除以除以2 2到到n n的平方根之的平方根之间间的每一个整数,如果的每一个整数,如果n n能被能被2 2到到n n的的平方根之平方根之间间的某个整数整除,的某个整数整除,则说则说明明n n不是素数,不是素数,否否则则n n一定是素数。一定是素数。forfor语句举例语句举例程序8 8省略表达式省略表达式省略表达式省略表达式1 1 1 1i=1;i=1;i=1;i=1;for(;i=10;i+)for(;i=10;i+)for(;i=10;i+)for(;i=10;i+)sum=sum+i;sum=sum+i;sum=sum+i;sum=sum+i;forfor语句的任何一个表达式都可以省,但不能语句的任何一个表达式都可以省,但不能省略分号。例如:省略分号。例如:省略表达式省略表达式省略表达式省略表达式3 3 3 3for(i=1;i=10;)for(i=1;i=10;)for(i=1;i=10;)for(i=1;i=10;)sum=sum+i;i+;sum=sum+i;i+;sum=sum+i;i+;sum=sum+i;i+;省略表达式省略表达式2 2时,时,循环将变成死循环循环将变成死循环循环体由多个语句组成时,循环体由多个语句组成时,应该写成复合语句的形式应该写成复合语句的形式 forfor语句中可应用逗号表达式,使两个或多个控语句中可应用逗号表达式,使两个或多个控制变量同时控制循环制变量同时控制循环for(ifor(i=0,j=10;i=0,j=10;ij;i+,jj;i+,j-)-)循环体循环体 forfor语句允许在循环体内改变循环控制变量的值语句允许在循环体内改变循环控制变量的值sum=0sum=0;for(count=1;count=100;count+)for(count=1;count=3000)count=100;if(sum=3000)count=100;在循环体外的语句不受循环的控制,在循环体内在循环体外的语句不受循环的控制,在循环体内的语句受循环的控制。的语句受循环的控制。使用使用forfor语句应注意的问题语句应注意的问题9 9语句形式:语句形式:while(while(表达式表达式)语句;语句;可以是复合语句,其可以是复合语句,其中必须含有改变条件中必须含有改变条件表达式值的语句表达式值的语句执行过程:执行过程:执行过程:执行过程:先计先计先计先计算表达式的值,当算表达式的值,当算表达式的值,当算表达式的值,当表达式的值为非表达式的值为非表达式的值为非表达式的值为非 0 0 0 0 时执行语句;为时执行语句;为时执行语句;为时执行语句;为 0 0 0 0 时执行循环的后继时执行循环的后继时执行循环的后继时执行循环的后继whilewhile语句语句1010例例 从键盘上输入张三同学五门课程的成绩从键盘上输入张三同学五门课程的成绩6767、9292、7878、8383、7575,计算出平均成绩并输出。,计算出平均成绩并输出。对下面的程序进行修改,用对下面的程序进行修改,用whilewhile代替代替forfor#include#include /*/*例例3.13.1的程序的程序*/main()main()intint i,sum,score;sum=0;i,sum,score;sum=0;for(i=1;i=5;i+)for(i=1;i=5;i+)scanf(%d,&scorescanf(%d,&score););sum=sum+score;sum=sum+score;printf(nprintf(n平均成绩为:平均成绩为:%6.2f n,%6.2f n,sum/5.0);sum/5.0);whilewhile语句举例语句举例1111例例 计计算算1 1至至2020之之间间的奇数之和及偶数之和。的奇数之和及偶数之和。说明:说明:判断一个数判断一个数n n是否为偶数的常用方法为:是否为偶数的常用方法为:n%2=0n%2=0。判断一个数判断一个数n n是否为某个数的倍数的常用方法为:是否为某个数的倍数的常用方法为:n%n%某个数某个数=0=0,如,如 n%5=0 n%5=0 可用于判断可用于判断n n是否为是否为5 5的倍数。的倍数。程序whilewhile语句举例语句举例1212例例:求求nn的值的值main()main()int n,sum=0;int n,sum=0;n=1;n=1;while(n=10)while(n=10)sum=sum+n;sum=sum+n;n+;n+;printf(printf(1-101-10的累加和为的累加和为%d%d,sum);,sum);n=1n=1 10 10问题:问题:1.1.语句语句 n=1 n=1;能放在循环体内吗?;能放在循环体内吗?2.2.语句语句 n=10 n=10 中的等号能去掉吗?中的等号能去掉吗?3.3.语句语句 n+n+能去掉或放在循环外吗?能去掉或放在循环外吗?4.4.如要求如要求 1 1到到 10 10 的累乘的累乘 应怎样修改应怎样修改程序?程序?s如何修改程序如何修改程序可求可求2+4+6+102+4+6+10的值的值先判断后执行循环体先判断后执行循环体使用使用whilewhile语句应注意的问题语句应注意的问题1313语句形式:语句形式:dodo 语句;语句;while(while(表达式表达式););执行过程:执行过程:执行过程:执行过程:先执行语先执行语先执行语先执行语句,后判断条件。句,后判断条件。句,后判断条件。句,后判断条件。表达式的值为非表达式的值为非表达式的值为非表达式的值为非0 0 0 0时,时,时,时,继续执行语句;表达继续执行语句;表达继续执行语句;表达继续执行语句;表达式的值为式的值为式的值为式的值为0 0 0 0时,执行时,执行时,执行时,执行循环的后继。循环的后继。循环的后继。循环的后继。可以是复合语句,其可以是复合语句,其中必须含有改变条件中必须含有改变条件表达式值的语句表达式值的语句Do-whileDo-while语句语句1414例例 求求1 1!+2+2!+3+3!+4+4!+20+20!的值。!的值。main()main()float n=1,sum=0,t=1;float n=1,sum=0,t=1;do dot=t*nt=t*n;sum=sum+t;sum=sum+t;n+;while(n=20);n+;while(n=20);printf(1!+2!+3!+20!=%e n,sum);printf(1!+2!+3!+20!=%e n,sum);第第n n次循环次循环 t t的值的值 sum sum的值的值 n=20 n=20的值的值1 1!0+1!1 1!0+1!真真(n=2)(n=2)2 2!1+2!2 2!1+2!真真(n=3)(n=3)3 3!3+3!3 3!3+3!真真(n=4)(n=4)4 4!9+4!4 4!9+4!真真(n=5)(n=5)5 5!33+5!5 5!33+5!真真(n=6)(n=6)20 20!20 20!假假(n=21)(n=21)结束循环结束循环Do-whileDo-while语句举例语句举例1515在在循循环环体体内内又又包包含含另另一一个个完完整整的的循循环环结结构构称称为为循循环环嵌嵌套套。内内层层循循环环中中再再包包含含其其它它循循环环结结构构,称称为为多重循多重循环环嵌套。嵌套。C C语言中的三种语言中的三种循环语句(循环语句(forfor、whilewhile、dodowhilewhile)可以互相可以互相嵌套,构成所需嵌套,构成所需的多重循环结构的多重循环结构循环嵌套时,内层循环必须被完全包含于外层循环嵌套时,内层循环必须被完全包含于外层循环内,不允许循环结构交叉。循环内,不允许循环结构交叉。循环嵌套循环嵌套1616例例3.103.10 打印由打印由星号星号组组成的成的5 5行行5 5列的矩形列的矩形*以下以下循循环语环语句可在同一行上句可在同一行上输输出五个星号:出五个星号:for(j=1;j=5;j+)for(j=1;j=5;j+)printfprintf(*);(*);s若若让该让该循循环语环语句句执执行五次,且每行五次,且每执执行一次行一次输输出出一个一个换换行,就可以行,就可以输输出五行五列星号出五行五列星号双重循环的执行过程如下:双重循环的执行过程如下:i=1i=1时,时,j=1,2,3,4,5j=1,2,3,4,5,输出输出5 5个个*并换行并换行i=2i=2时,时,j=1,2,3,4,5j=1,2,3,4,5,输出输出5 5个个*并换行并换行i=3i=3时,时,j=1,2,3,4,5j=1,2,3,4,5,输出输出5 5个个*并换行并换行i=4i=4时,时,j=1,2,3,4,5j=1,2,3,4,5,输出输出5 5个个*并换行并换行i=5i=5时,时,j=1,2,3,4,5j=1,2,3,4,5,输出输出5 5个个*并换行并换行for(i=1;i=5;i+)for(i=1;i=5;i+)for(j=1;j=5;j+)for(j=1;j=5;j+)printf(*);printf(*);printf(n);printf(n);多重循多重循环环的的执执行行过过程程为为:外循环跨一步,外循环跨一步,内循环转一圈内循环转一圈 循环嵌套举例循环嵌套举例1717for(i=1;i=5;i+)for(i=1;i=5;i+)for(j=1;j=5;j+)for(j=1;j=5;j+)printf(*);printf(*);printf(n);printf(n);s要要打印如下打印如下图形应如何修改下面的双重循环图形应如何修改下面的双重循环:*循环嵌套举例循环嵌套举例要要求求:在在VC+6.0VC+6.0环环境境下下,通通过过师师生生互互动动的的形形式式完完成成该该题的编程题的编程 1818语句形式:语句形式:break;break;u执行过程:执行过程:执行过程:执行过程:终终终终止止止止switchswitchswitchswitch语语语语句或循句或循句或循句或循环语环语环语环语句的句的句的句的执执执执行,跳出当前行,跳出当前行,跳出当前行,跳出当前breakbreakbreakbreak所在的控制所在的控制所在的控制所在的控制结结结结构,构,构,构,转转转转去去去去执执执执行后行后行后行后继语继语继语继语句。句。句。句。double e=1.0,u=1.0;double e=1.0,u=1.0;double e=1.0,u=1.0;double e=1.0,u=1.0;int n;int n;int n;int n;for(n=1;n=20;n+)for(n=1;n=20;n+)for(n=1;n=20;n+)for(n=1;n=20;n+)u=u/n;u=u/n;u=u/n;u=u/n;e=e+u;e=e+u;e=e+u;e=e+u;if(u1.0e-7)break;if(u1.0e-7)break;if(u1.0e-7)break;if(u9|ch9|ch9|ch9|ch0)continue;count+;count+;count+;count+;printf(count=%d n,count);printf(count=%d n,count);printf(count=%d n,count);printf(count=%d n,count);在在在在whilewhilewhilewhile和和和和do-whiledo-whiledo-whiledo-while循循循循环环环环结结结结构构构构中中中中,continuecontinuecontinuecontinue立立立立即即即即转转转转去去去去检检检检查查查查循循循循环环环环控控控控制制制制表表表表达达达达式式式式,在在在在forforforfor循循循循环环环环结结结结构构构构中中中中,则则则则立立立立即即即即转转转转向向向向计计计计算算算算表表表表达达达达式式式式3 3 3 3,对对对对循循循循环环环环控控控控制制制制变变变变量量量量增增增增量量量量或减量。或减量。或减量。或减量。continuecontinue语句语句2020例例:本本例例模模拟拟了了一一个个物物体体的的自自由由落落体体过过程程。从从“高高空空”释释放放一一个个物物体体,它它在在下下降降的的过过程程中中速速度度会会越越来来越越快快,落落地地反反弹弹后后在在上上升升的的过过程程中中它它的的速速度度会会越越来来越越慢慢。图图3-14显显示示某某一一时时刻刻物物体体所所处的位置。处的位置。程序综合设计综合设计2121语句语句while(!E);while(!E);中的表达式!中的表达式!E E等价于等价于 A)A)E=0 E=0 B)B)E!=1 E!=1 C)C)E!=0 E!=0 D)D)E=1E=1 下面程序段的运行结果是下面程序段的运行结果是_。a=1;b=2;c=2;a=1;b=2;c=2;while(abc)t=a;a=b;b=t;c-;while(abc)t=a;a=b;b=t;c-;printf(%d,%d,%d,a,b,c);printf(%d,%d,%d,a,b,c);A)A)1,2,0 1,2,0 B)B)2,1,0 2,1,0 C)C)1,2,1 1,2,1 D)D)2,1,12,1,1下面程序段的运行结果是下面程序段的运行结果是_。x=y=0;x=y=0;while(x15)y+;x+=+y;while(x10&x10&x50)x+;x+;if(x/3)x+;break;else continue;if(x/3)x+;break;else continue;printf(%dn,x);printf(%dn,x);执行以下程序后,输出执行以下程序后,输出#号的个数是号的个数是_。main()main()int i,j;int i,j;for(i=1;i5;i+)for(i=1;i5;i+)for(j=2;j=i;j+)putchar(#);for(j=2;j=i;j+)putchar(#);习题习题(填空题)(填空题)(填空题)(填空题)2323本本章章详详细细介介绍绍了了循循环环结结构构。循循环环结结构构包包括括forfor、whilewhile、dowhiledowhile三三个个循循环环语语句句。三三种种循循环环可可以以用用来来处处理理同同一一问问题题,一一般般情情况况下下它它们们可可互互相相代代替替,但设置的表达式条件会有所不同。但设置的表达式条件会有所不同。读程序读程序main()main()intint i,j;i,j;for(i=1;i5;i+)for(i=1;i5;i+)for(j=2;j=i;j+)for(j=2;j=i;j+)putcharputchar(#);(#);问题:问题:1.1.两两层层循循环环各各执执行了多少次?行了多少次?2.2.程程序序运运行行结结束束时时循循环环变变量量i i和和j j的的值为值为多少?多少?小结小结2424v复习教材第三章内容复习教材第三章内容v预习教材第四章内容预习教材第四章内容v上机实习内容:上机实习内容:实验实验 循环结构循环结构v完成第三章的全部习题完成第三章的全部习题本章课后作业本章课后作业

    注意事项

    本文(《循环结构》课件.ppt)为本站会员(wuy****n92)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

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




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

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

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开