欢迎来到课桌文档! | 帮助中心 课桌文档-建筑工程资料库
课桌文档
全部分类
  • 党建之窗>
  • 感悟体会>
  • 百家争鸣>
  • 教育整顿>
  • 文笔提升>
  • 热门分类>
  • 计划总结>
  • 致辞演讲>
  • 在线阅读>
  • ImageVerifierCode 换一换
    首页 课桌文档 > 资源分类 > PPT文档下载  

    第四章结构化程序设计.ppt

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

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

    第四章结构化程序设计.ppt

    第 4 章 结构化程序设计,4.1 结构化程序设计概述,教学目的掌握if语句的三种结构掌握条件运算掌握switch语句的格式和执行过程掌握三种循环 掌握三种循环的区别,4.2 选择(分支)结构程序设计,4.3 循环结构程序设计,4.4 多重循环的实现,C语言程序设计,2023/3/30,2,4.1 结构化程序设计概述,程序的三种基本结构1、顺序结构,2、选择结构,2023/3/30,3,4.1 结构化程序设计概述(续),3、循环结构,2023/3/30,4,三种基本结构都具有下列的共同特征,(1)单入口和单出口,即只有一个入口和一个出口;(2)没有无用的部分,即结构中所有部分都有被执行的机会;(3)不存在“死循环”(无终止的循环),即执行时间是有限的。已有人从理论上证明了,由三种基本结构顺序组合构成的程序能处理任何复杂的问题。,2023/3/30,5,4.2 选择(分支)结构程序设计,if 语句有以下三 种形式:1、if形式(也称条件执行)语法格式:if(表达式)语句;功能:当“表达式”的值不等于0(即判定为“逻辑真”)时,则执行语句,否则直接转向执行下一条,【例4.1】输入x并求出x的绝对值。例程,2023/3/30,6,If 语句(续),2、if-else(分支选择)格式:if(表达式)语句组1;else 语句组2;功能:当“表达式”的值不等于0(即判定为“逻辑真”)时,则执行语句组1,否则,执行语句组2,【例4.2】:从键盘上输入一个字符,如果它是大写字母,则把它转换成小写字母输出;否则,直接输出,例程,2023/3/30,7,If 语句(续),3、else if形式(阶梯式的if语句)格式:if(表达式1)语句1;else if(表达式2)语句2;else 语句n+1;,【例4.3】给一个成绩,要求输出成绩等级。90分及以上为A,80-89分为B,70-79分为C,60-69分为D,60分以下为E,例程,2023/3/30,8,switch语句,switch语句的基本格式:switch(表达式e)case 常量表达式1:语句1;break;case 常量表达式2:语句2;break;case 常量表达式n:语句n;break;default:语句n+1;,计算过程:1、计算表达式e的值2、与常量表达式 i 一致者则从语句i开始执行;直到遇到break语句或switch的“3、若与任何常量表达式都不一致则执行default语句或执行后续语句,说明:1、常量表达式i必须与e类型一致,不能为变量2、常量表达式i仅起标志作用,不做求值判断3、常量表达式i值必须唯一,无先后次序4、多个语句可共用一组执行语句,【例4.4】给一个成绩,要求输出成绩等级。90分及以上为A,80-89分为B,70-79分为C,60-69分为D,60分以下为E(用switch语句),例程,2023/3/30,9,【例4.5】输入一个年号,判断是否为闰年,算法:能被4整除且不是100的倍数,或者能被400整除。,例程,2023/3/30,10,4.3 循环结构结构程序设计,所谓循环结构就是在给定条件成立的情况下,重复执行一个程序段;当给定条件不成立时,退出循环,再执行循环下面的程序。实现循环结构的语句称为循环语句。在C语言中,循环语句有while语句、dowhile语句和for语句,一、while语句,(1)作用:实现“当型”循环结构。(2)格式:while()(3)执行过程:先计算表达式的值,当表达式的值为非0时,重复执行指定的语句;当表达式的值为0时,结束循环。,【例4.6】计算1+2+3+n的和,例程,2023/3/30,11,【例4.7】输入两个正整数,求其最大公约数和最小公倍数,分析:1、用辗转法求最大公约数,m对n求余数为a,若a0,则mn,na,即需求余;否则n为最大公约数,如m=24,n=10,次数,被除数,除数,余数,1,24,10,4,2,10,4,2,3,4,2,0,2、最小公倍数=m*n/最大公约数,例程,2023/3/30,12,dowhile语句,(1)作用:实现“直到型”循环结构。(2)格式:do while();(3)执行过程:先执行语句,然后计算表达式的值,当表达式的值为非0时,就重复执行指定的语句;当表达式的值为0时,结束循环。,【例4.8】编写满足1+2+3+n500中最大的n并求其和的程序,例程,2023/3/30,13,for语句,1.for语句格式:for(;)2.for语句的执行过程:,2023/3/30,14,二、其他形式:1、省略表达式1:for(;表达式2;表达式3)循环体语句,for(表达式1;表达式2;表达式3)循环体语句,2、省略表达式1、3:for(;表达式2;)循环体语句,不能省略,说明:1、表达式1省略时应在for前给循环变量赋初值2、表达式2省略时判断循环条件将成为死循环,可在循环体内引入break3、表达式3省略时循环体内应有改变循环变量的语句4、同时省略表达式1、3相当于while循环,5、表达式2一般为逻辑和关系表达式,但也可以为数值和字符表达式;如:For(k=1;k-10;k+)s=s+k;,k-10是数值表达式,当k=10时终止循环。,3、全省略:for(;)循环体语句,2023/3/30,15,【例4.9】读程序,判断程序的功能:#include stdio.hmain()char c;for(;(c=getchar()!=n;)putchar(c);,/*表达式1、3无,未置初值这就是for的灵活处,在c=getchar()处获得*/,注意:getchar()仅当遇到回车符才执行,从键盘缓冲区中读取;,只输出字母?,【例4.10】求 1+2+100,例程,2023/3/30,16,break、continue语句,break语句(1)作用:终止switch语句与单循环语句的执行;对多重循环循环语句,可从内循环体跳到外循环体。(2)格式:break;,continue语句(1)作用:在循环语句中,结束本次循环,重新开始下一次循环。(2)格式:continue;,【例4.11】判断m是否为素数,例程,【例4.12】输入10个整数,统计其中正数的和及正数的个数。,例程,2023/3/30,17,4.4 多重循环的实现,一个循环体内又包含另一个完整的循环结构,称为循环的嵌套。内嵌的循环中还可以嵌套循环,这就是多重循环。,说明:1、嵌套的循环变量不能相同;2、内循环变化快,外循环变化慢;3、正确确定循环体;4、循环控制变量常和求解问题挂钩,for(i=1;i=3;i+).for(j=1;j=5;j+)printf(“%d*%d=%d”,i,j,i*j)printf(“n”);,三种循环可以相互嵌套,如:,while().while().,while().do.while(),for().do.while(),while().for().,2023/3/30,18,多重循环举例,【例4.13】输出图形 1 2 2 3 3 3 4 4 4 4 5 5 5 5 5 6 6 6 6 6 6,【例4.14】打印乘法“九九表”1x1=11x2=2 2 x2=4 1x3=3 2 x3=6 3x3=91x4=4 2 x4=14 3x4=12 4x4=161x5=5 2 x5=14 3x5=15 4x5=20 5 x5=251x6=6 2 x6=12 3x6=18 4x6=24 5 x6=30 6x6=361x7=7 2 x7=14 3x7=21 4x7=28 5 x7=35 6x7=42 7x7=491x8=8 2 x8=16 3x8=24 4x8=32 5 x8=40 6x8=48 7x8=56 8x8=641x9=9 2 x9=18 3x9=27,例程,例程,2023/3/30,19,C语言中,三种循环结构都可以用来处理同一个问题,但在具体使用时存在一些细微的差别。如果不考虑可读性,一般情况下它们可以相互代替。(1)循环变量初始化:while和do-while循环,循环变量初始化应该在while和do-while语句之前完成;而for循环,循环变量的初始化可以在表达式1中完成。(2)循环条件:while和do-while循环只在while后面指定循环条件;而for循环可以在表达式2中指定。(3)循环变量修改使循环趋向结束:while和do-while循环要在循环体内包含使循环趋于结束的操作;for循环可以在表达式3中完成(4)for循环可以省略循环体,将部分操作放到表达式2,表达式3中,for语句功能强大。(5)while和for循环先测试表达式,后执行循环体,而do-while是先执行循环体,再判断表达式。(所以while,for循环是典型的当型循环,而do-while循环可看作直到型循环)。(6)三种基本循环结构一般可相互替代,不能说哪种更加优越。应当尽量选择恰当的循环结构,使程序更加容易理解。(尽管for循环功能强大,但是并不是在任何场合都可以不分条件使用)。,几种循环的比较,2023/3/30,20,例 4.1,#include stdio.hmain()int x;printf(please input x:);scanf(%d,返回,2023/3/30,21,例 4.2,#include stdio.hmain()char c;printf(Input a character:);scanf(%c,返回,2023/3/30,22,例 4.3,main()int s;scanf(%d,返回,2023/3/30,23,例 4.4,main()int score,s;printf(Input a score:);scanf(%d,返回,2023/3/30,24,例 4.5,#include void main()int year,leap;printf(Which year:);scanf(%d,返回,2023/3/30,25,例 4.6,#include stdio.hmain()int n,s=0,i=1;printf(please input n:);scanf(%d,返回,注意:1、若循环体内有多条语句应用 2、循环前,必须给循环控制变量赋初值;3、循环体内有改变变量值的语句4、循环体可为空。如:While(c=getchar()!=$);等价于:C=getchar();while(c!=$)c=getchar();5、循环控制表达式可为永真;,2023/3/30,26,例 4.7,#include int main()int m,n,m1,n1,a;printf(Input two positive integers m,n:);scanf(%d%d,返回,2023/3/30,27,例 4.8,main()int n=0,sum=0;do+n;sum+=n;while(sum500);printf(n=%d,sum=%dn,n-1,sum-n);,返回,n=31,sum=496,2023/3/30,28,例 4.10,#includemain()int i,s=0;/*s清0*/for(i=1;i=100;i+)s=s+i;printf(s=%d,s);,返回,2023/3/30,29,例 4.11,#include stdio.hmain()int m,i;printf(please input a number:);scanf(%d,返回,2023/3/30,30,例 4.12,#includemain()int a,i,k=0,s=0;printf(Input 5 integer:);for(i=1;i=5;i+)scanf(%d,返回,程序执行后提示:Input 10 integer:-1 2 5-5 6 k=3,s=13,2023/3/30,31,例 4.13,main()int i,j;for(i=1;i7;i+)printf(n);for(j=1;j=i;j+)printf(“%d”,i);,返回,2023/3/30,32,例 4.14,main()int i,j;for(i=1;i=9;i+)for(j=1;j=i;j+)printf(%2dx%2d=%-3d,j,i,i*j);printf(n);,返回,

    注意事项

    本文(第四章结构化程序设计.ppt)为本站会员(夺命阿水)主动上传,课桌文档仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知课桌文档(点击联系客服),我们立即给予删除!

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




    备案号:宁ICP备20000045号-1

    经营许可证:宁B2-20210002

    宁公网安备 64010402000986号

    课桌文档
    收起
    展开