c程序设计教程课件(第三章)

上传人:小*** 文档编号:243136916 上传时间:2024-09-16 格式:PPT 页数:27 大小:2.35MB
返回 下载 相关 举报
c程序设计教程课件(第三章)_第1页
第1页 / 共27页
c程序设计教程课件(第三章)_第2页
第2页 / 共27页
c程序设计教程课件(第三章)_第3页
第3页 / 共27页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,C,语言程序设计教程,3,算法,3,算 法,本章内容,3.1,算法概述,3.2,程序结构,3.3,结构化程序设计方法,程序,=,算法,+,数据结构,+,程序设计方法,+,语言环境,灵,魂,加工对象,工具,结构化程序设计,(顺序、循环、选择),3.1,算法的概念,广义的说,为解决一个问题而采用的方法和步骤,就称为算法。,选择合适的算法,算法分两类:数值算法和非数值算法,买电视机的步骤:,选好货物,开票,付款,拿发票,取货,回家,考大学上大学的步骤,填报名单,交报名费,拿准考证,参加考试,得到录取通知书,报到注册,简单算法举例,例,1,:求,5,! (,1,2,3,4,5,)。,可先写出这样的算法:,(,1,)先求,1,2,,得到结果,2,;,(,2,)将步骤,1,得到的结果再乘以,3,,得到结果,6,;,(,3,)将,6,再乘以,4,,得到,24,;,(,4,)将,24,再乘以,5,,得到,120,。,求,5,! (,1,2,3,4,5,),上述算法太繁琐,我们找一种通用的表示方法:,s1:,设变量,p,,被乘数,,p=1;,s2:,设变量,i,代表乘数,,i=2;,s3:,使,p,i,乘积放在被乘数变量,p,中,可表示为:,p,i p;,s4:,使,i,的值加,1,,即,i+1 i;,s5:,如果,i,不大于,5,,返回重新执行步骤,s3,以及其后的,s4,、,s5;,否则,算法结束。,最后得到的,p,就是,5!,的值。,例,2.,求,13579 11,上述算法稍作改动:,s1: 1, p;,s2: 3 i;,s3: p,i,p;,s4: i+2 i,s5:,若,i11,返回,s3;,否则,结束。,请同学们仔细分析循环结束的条件,即,s5,步骤,如果在求,1,3,5,7,9,11,时,将,s5,步骤写成:,s5,:若,I5,结束,N,Y,开始,17,【,例,】,判断自然数,n,(,n,1,)是否为素数,盒图(,N-S,图)举例,开始,1 p,i,P*i,p,i+1 i,i5,结束,几种算法,表示方法比较,求,5,!,S1: 1 p,S2: 2 i,S3: p*i p,S4: i+1 i,S5:,若,i5,结束,用,N-S,流程表示,int main(void),int i,t;,t=1;,i=2;,while(i=5),t=t*i;,i=i+1;,printf(“%d”,t);,return 0;,用语言表示,3.2,程序的三种基本结构,结构化程序设计,基本思想:任何程序都可以用三种基本结构表示,限制使用无条件转移语句(,goto,),结构化程序:由三种基本结构反复嵌套构成的程序叫,优点:结构清晰,易读,提高程序设计质量和,效率,三种基本结构,顺序结构,选择结构(选取结构、分支结构),循环结构,(,重复结构,),当型循环结构(,While,型),直到型循环结构(,Until,型),三种结构的特点:,只有一个入口和出口,结构内的每一部分都有机会被执行到。,结构内不存在死循环,顺序结构,A,B,A,B,流程图,N-S,图,P,A,B,真,假,P,B,A,真,假,选择结构,A1,A2,Ai,An,k=k2,k=k1,k=kn,k=ki,.,.,二分支选择结构,多分支选择结构,k,循环结构,当型循环结构,直到型循环结构,P,A,假,真,当,P,为真,A,A,P,真,假,A,直到,P,为真,注:,A,可以是一个简单语句,也可以是一个基本结构,课堂练习:,以,“,在一组数中求最大数,”,的详细设计为例,分别用程序流程图、,N,S,图来描述它的软件实现过程。为了简化,两张图可全部省略程序开始处的输入语句和结束处的输出语句。,3.3,结构化程序设计,自顶向下,逐步细化,模块化设计,结构化编程,课后习题:,2.1,什么是算法,?,试从日常生活中找,3,个例子,描述它们的算法。,2.2,什么叫结构化的算法,?,为什么要提倡结构化的算法?,2.3,试述三种基本结构的特点,你能否自己另外设计两种基本结构,(,要符合基本结构的特点,),。,2.4,分别用传统流程图和盒图(,N-S,图)表示求解以下问题的算法。,(1),有两个瓶子,A,和,B,,分别盛放醋和酱油,要求将它们互换,(,即,A,瓶原来盛醋,现改盛酱油,,B,瓶则相反,),。,(2),依次将,10,个数输入,要求将其中最大的数打印出来。,(3),有,3,个数,a,、,b,、,c,,要求按大小顺序把它们打印出来。,(4),求,1+2+3+,+100,。,(5),判断一个数,n,能否同时被,3,和,5,整除。,(6),将,100,200,之间的素数打印出来。,(7),求一个二维矩阵的对角线之和。,(8),求方程式,ax2+bx+c=0,的根。分别考虑:有两个不等的实根;有两个相等的实根,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 小学资料


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


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