第四章结构化程序设计.ppt
《第四章结构化程序设计.ppt》由会员分享,可在线阅读,更多相关《第四章结构化程序设计.ppt(32页珍藏版)》请在课桌文档上搜索。
1、第 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)没有无用的部分,即结构中所有部分都有被执行的机会;
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(即判定为“逻辑真”)时,则执行
3、语句组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
4、:语句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语句),例
5、程,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、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时,结束循环。
7、,【例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循
8、环,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,例程,20
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第四 结构 程序设计

链接地址:https://www.desk33.com/p-259768.html