三章结构化程序设计ppt课件.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《三章结构化程序设计ppt课件.ppt》由会员分享,可在线阅读,更多相关《三章结构化程序设计ppt课件.ppt(55页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 C/C+C/C+程序设计三章结构化程序设计ppt课件 Still waters run deep.流静水深流静水深,人静心深人静心深 Where there is life,there is hope。有生命必有希望。有生命必有希望 C/C+C/C+程序设计第三章结构化程序设计与基本算法第三章结构化程序设计与基本算法3.1 3.1 算法及其表示算法及其表示3.2 3.2 结构化程序设计结构化程序设计 3.3 3.3 顺序结构顺序结构 3.4 3.4 选择结构选择结构 3.5 3.5 循环结构循环结构 3.6 3.6 流程转移控制语句流程转移控制语句 3.7 3.7 应用举例应用举例 2uan
2、gXi University C/C+C/C+程序设计3.1 3.1 算法及其表示算法及其表示N.WirthN.Wirth提出:数据结构提出:数据结构+算法算法=程序程序算法:为解决一个具体问题而采取的确定的有限的操作步骤,算法:为解决一个具体问题而采取的确定的有限的操作步骤,这里仅指计算机能执行的算法这里仅指计算机能执行的算法算法特性:算法特性:有穷性确定性 有效性 没有输入或有多个输入 有一个或多个输出 算法分类:算法分类:数值算法:解决的是求数值解的问题,例如用辗转相除法求两个数的最大公约数等。非数值算法:主要用于解决需要用分析推理、逻辑推理才能解决的问题,例如人工智能中的许多问题,查找
3、、分类等问题。3uangXi University C/C+C/C+程序设计3.1 3.1 算法及其表示算法及其表示算法的表示方式算法的表示方式自然语言传统的流程图 N-S结构化流程图 伪代码 开始开始/准备准备过程过程/处理处理选择选择/决策决策手动输入手动输入文档文档显示显示/输出输出终止终止离页连接离页连接4uangXi University C/C+C/C+程序设计3.2 3.2 结构化程序设计结构化程序设计p已经证明,任何程序均可只用顺序已经证明,任何程序均可只用顺序结构、选择结构、循环结构这三种结构、选择结构、循环结构这三种结构综合描述。只用这三种结构编结构综合描述。只用这三种结构
4、编制的程序,叫结构化程序。程序应制的程序,叫结构化程序。程序应符合结构化规则。符合结构化规则。p采用顺序、选择和循环三种基本结采用顺序、选择和循环三种基本结构作为程序设计的基本单元构作为程序设计的基本单元 只有一个入口;只有一个出口;无死语句,即不存在永远都执行不到的语句;无死循环,即不存在永远都执行不完的循环,但也有例外。p采用采用“自顶向下、逐步求精自顶向下、逐步求精”和模和模块化的方法进行结构化程序设计块化的方法进行结构化程序设计 E.W.Dijkstra,生于,生于1930年,年,卒于卒于2002年年8月月6日日5uangXi University C/C+C/C+程序设计3.2 3.
5、2 结构化程序设计结构化程序设计流程表示流程表示BABA顺序结构顺序结构选择结构选择结构6uangXi University C/C+C/C+程序设计3.2 3.2 结构化程序设计结构化程序设计流程表示流程表示A真假假A假真当型循环当型循环当型循环当型循环直到型循环直到型循环直到型循环直到型循环7uangXi University C/C+C/C+程序设计3.3 3.3 顺序结构顺序结构 顺序结构:按照语句出现的先后顺序依次执行。顺序结构:按照语句出现的先后顺序依次执行。一般:一般:表达式;表达式;例如:例如:i+;sum=a+b;coutabendl;特例:特例:;(空语句空语句)作用作用:
6、当程序中某个位置在语法上需要一条语句,当程序中某个位置在语法上需要一条语句,而在语义上又不而在语义上又不 要求执行任何动作时,可放上一条空要求执行任何动作时,可放上一条空语句。一般适用于在循环语句中做空循环体:语句。一般适用于在循环语句中做空循环体:for(m=0;m1000;m+);8uangXi University C/C+C/C+程序设计3.3 3.3 顺序结构顺序结构 复合语句:复合语句:变量定义变量定义 语句组语句组 作作用用:当当程程序序中中某某个个位位置置在在语语法法上上只只允允许许一一条条语语句句,而而在在语语义义上上要要执执行行多多条条语语句句才才能能完完成成某某个操作时,
7、需要使用复合语句。个操作时,需要使用复合语句。变量仅在定义它的复合语句内有效变量仅在定义它的复合语句内有效一一般般适适用用于于选选择择、循循环环语语句句中中的的内内嵌嵌语语句句。也也有时为了清晰,特意将某段程序中有时为了清晰,特意将某段程序中括起来。括起来。9uangXi University C/C+C/C+程序设计3.4 3.4 选择结构选择结构选择结选择结构构:根据条件的根据条件的值值来判断程序的流来判断程序的流向。向。C/C+C/C+中,中,提供两类选择控制语句提供两类选择控制语句:p if语句,实现语句,实现n分支,要求分支,要求n个表达式个表达式;p switch语句,实现多分支;
8、只用语句,实现多分支;只用1个表个表达式。达式。10uangXi University C/C+C/C+程序设计3.4 3.4 选择结构选择结构3.2.1 if 语句语句if语句的三种形式语句的三种形式:形式形式1 1:if(表达式表达式)语句语句 作用:当表达式为真作用:当表达式为真(非非0)时,执行表达式后面的语句时,执行表达式后面的语句,否则绕过该语句,而执行其后面的语句。否则绕过该语句,而执行其后面的语句。例例3.13.1已知两个数已知两个数x和和y,比较它们的大小,使得,比较它们的大小,使得x大于大于y。思考:如何将一瓶油与一瓶酒互相换瓶?思考:如何将一瓶油与一瓶酒互相换瓶?需借助于
9、一个空瓶子需借助于一个空瓶子内存中的两个单元也可以内存中的两个单元也可以看成放着一瓶油与一瓶酒,要交换其中放的内容,同样看成放着一瓶油与一瓶酒,要交换其中放的内容,同样需借助于一个空的内存单元。这是由内存需借助于一个空的内存单元。这是由内存”取之不尽,取之不尽,一冲就走一冲就走”的物点决定的。的物点决定的。11uangXi University C/C+C/C+程序设计3.4 3.4 选择结构选择结构于是,有于是,有if(xy)t=x;x=y;y=t;coutxy;#include iostream.hvoid main()int x,y,t;cout输入输入 x yxy;if(xy)t=x;
10、x=y;y=t;/x与与y交换交换 coutxy=90)cout 优优;else if(80=mark&mark 90)cout 良良;else if(60=mark&mark 70)cout 及格及格;else if(70=mark&mark 80)cout 中中;else cout=60)cout=70)cout=80)cout=90)cout 优优;else coutyz。可用一个。可用一个IF语句和一个嵌套的语句和一个嵌套的IF语句实现。语句实现。if(xy)t=x;x=y;y=t;if(yz)t=y;y=z;z=t;if(xy)t=x;x=y;y=t;18uangXi Univers
11、ity C/C+C/C+程序设计3.4 3.4 选择结构选择结构现场编程:体型判断。按现场编程:体型判断。按“体指数体指数”对肥胖程度进对肥胖程度进行划分,体指数行划分,体指数t=体重体重w/(身高身高h)2 (w 单位为公斤,单位为公斤,h单位为米)单位为米)当t=27时,为肥胖。编程从键盘输入你的身高编程从键盘输入你的身高h和体重和体重w,根据给定公式,根据给定公式计算体指数计算体指数t,然后判断你的体重属于何种类型。,然后判断你的体重属于何种类型。提示:可用提示:可用3种方法编程中的一种种方法编程中的一种算法1:用不带else子句的if语句编程 算法2:用在if子句中嵌入if 语句的形式
12、编程 算法3:用在else子句中嵌入if 语句的形式编程 (10分钟,请自告奋勇分钟,请自告奋勇)19uangXi University C/C+C/C+程序设计3.4 3.4 选择结构选择结构 3.2.2 switch语句语句形式:形式:switch(表达式)表达式)case case 常量表达式常量表达式1 1:语句组:语句组1 1;breakbreak;case case 常量表达式常量表达式2 2:语句组:语句组2 2;breakbreak;case case 常量表达式常量表达式n n:语句组:语句组n n;breakbreak;default default:语句组语句组n+1n+
13、1 执行顺序:当表达式的值与某个常量表达式的值相等时,则执行该常量表达式后面相应的语句,若使用了break,则执行完该语句后便退出switch语句;否则,还要依次执行其后面的各条语句。若找不到相匹配的常量表达式,则执行default后面的语句。必须为整型或字符型 20uangXi University C/C+C/C+程序设计3.4 3.4 选择结构选择结构现场编程:设计一个简单的计算器程序,要现场编程:设计一个简单的计算器程序,要求根据用户从键盘输入的表达式:求根据用户从键盘输入的表达式:操作数操作数1 运算符运算符op 操作数操作数2 然后,计算表达式的值,指定的运算符然后,计算表达式的值
14、,指定的运算符为加(为加(+)、减()、减(-)、乘()、乘(*)、除()、除(/)提示:用提示:用switch语句。语句。21uangXi University C/C+C/C+程序设计3.4 3.4 选择结构选择结构 2a+1 (1=a2)【例【例3.5】用】用switch结构求分段函数结构求分段函数b=a2-3 (2=a=1&a=2&a4:.default:b=a;共用同一个语句组 思考:若省去思考:若省去break语句语句,情况会怎样?,情况会怎样?22uangXi University C/C+C/C+程序设计3.5 3.5 循环结构循环结构C语言提供了三种循环语句,流程图如下:流程
15、图如下:while do-while forwhile(表达式表达式)语句语句do语句语句while(表达式表达式);for(表达式表达式1;表达式表达式2;表达式表达式3)语句语句23uangXi University C/C+C/C+程序设计3.5 3.5 循环结构循环结构例例3.6/3.8用上述三种循环语句求用上述三种循环语句求 while语句:n=1;s=0;while(n=100)s=s+n;n=n+1;n=1;s=0;do s=s+n;n=n+1;while(n=100);do-while语句:for(n=1,s=0;n1e-5)e+=t;t/=i;i+;int i(1);floa
16、t t(1),e(0);for(;t1e-5;)e+=t;t/=i;i+;for(i=1,t=1,e=0;t1e-5;e+=t,t/=i,i+);分号不能省略空语句25uangXi University C/C+C/C+程序设计3.5 3.5 循环结构循环结构例例3.9将可打印的将可打印的ASCII码制成表格输出,码制成表格输出,使每个字符与它的编码对应起来,每行使每个字符与它的编码对应起来,每行打印打印7个字符。个字符。看程序,思考:你认为完成该例,关键在看程序,思考:你认为完成该例,关键在什么地方?什么地方?forfor通常有一个循环变量控制循环的次数,不要在循环体内改变这个变量通常有一个
17、循环变量控制循环的次数,不要在循环体内改变这个变量通常有一个循环变量控制循环的次数,不要在循环体内改变这个变量通常有一个循环变量控制循环的次数,不要在循环体内改变这个变量26uangXi University C/C+C/C+程序设计3.5 3.5 循环结构循环结构现场编程现场编程-猜数游戏:先由计算机猜数游戏:先由计算机“想想”一个一个数请人猜,如果人猜对了,则计算机给出提示:数请人猜,如果人猜对了,则计算机给出提示:“Right!”,否则提示:否则提示:“Wrong!”,并告诉,并告诉人所猜的数是大还是小。人所猜的数是大还是小。现场编程现场编程-先由计算机先由计算机“想想”一个一个1到到1
18、00之间之间的数请人猜,如果人猜对了,则结束游戏,否的数请人猜,如果人猜对了,则结束游戏,否则计算机给出提示,告诉人所猜的数是太大还则计算机给出提示,告诉人所猜的数是太大还是太小,直到人猜对为止。计算机记录人猜的是太小,直到人猜对为止。计算机记录人猜的次数,以此来反映猜数者次数,以此来反映猜数者“猜猜”的水平。的水平。27uangXi University C/C+C/C+程序设计3.5 3.5 循环结构循环结构猜数游戏用到的库函数猜数游戏用到的库函数随机函数随机函数rand()#include 产生产生0,32767 之间随机之间随机数数.随机函数随机函数随机函数随机函数srandsrand
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 结构 程序设计 ppt 课件
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内