欢迎来到天天文库
浏览记录
ID:39611156
大小:344.50 KB
页数:82页
时间:2019-07-07
《程序的控制结构及结构化程序设计方法》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、3.1算法与算法的表示方法3.2顺序结构程序设计3.3选择结构程序设计3.4循环结构程序设计第三章程序的控制结构与结构化程序设计方法3.1算法与算法的表示方法本章主要内容:1.了解算法的表示方法及其在程序设计中的重要地位.2.掌握C语言的基本控制结构和基本控制语句.3.掌握用C语言的基本控制语句进行顺序,选择和循环结构程序的设计.4.掌握一些常用的算法,如递推法,迭代法,穷举法等.5.了解结构化程序设计的基本思想算法分类:数值运算算法:解决的是求数值解的问题。非数值运算算法:主要解决关于分析推理、逻辑推理等问题,如排序、查找等。3
2、.1.1算法的概念数据结构+算法=程序数据结构:对数据的描述和组织形式,算法:对操作或行为的描述,即操作步骤。算法——为解决一个具体问题而采取的确定的有限的操作步骤。2、控制结构:操作序列的顺序控制。三种基本控制结构,即:顺序结构、选择结构、循环结构。3.1.1算法的概念算法的组成要素:1、操作:各种运算。如:算术运算、逻辑运算、关系运算等。算法的特性:1、有穷性:在有限的时间内,操作步骤能够终止。2、确定性:每一步操作的含义必须明确。3、有效性:每一步都应当能有效地进行并得到确定的结果。4、有0个或多个输入。5、有1个或多个输出。
3、3.1.1算法的概念例1:求12345。算法一:S1:求12,得2;S2:将S1得的2再乘3,得6;S3:将S2得的6再乘4,得24;S4:将24再乘5,得120,结果。算法二:S1:p=1S2:i=2S3:p=piS4:i=i+1S5:若i5,返回S3,否则结束,得出结果p为5!。比较两个算法:算法一:繁琐,数目大时步骤太多。算法二:利用循环算法,借助两个变量,可求任意数的阶乘,提高通用性。3.1.2简单算法举例3.1.2简单算法举例例2:求1+2+3+4……+100算法:S1:n=1S2:s=0S3:s=s+nS4
4、:n=n+1S5:若n100,返回到S3,否则结束。1+3+5+7+……+992+4+6+8+…..+100思考:S1:n=1S2:s=0S3:s=s+nS4:n=n+2S5:若n<100,返回到S3,否则结束。S1:n=2S2:s=0S3:s=s+nS4:n=n+2S5:若n100,返回到S3,否则结束。算法:S1:sign=1S2:n=2S3:s=1S4:sign=(-1)signS5:s=s+signnS6:n=n+1S7:若n100,返回到S4,否则结束。例3:求1-2+3-4……-1003.1.2简单算法举例二、
5、流程图表示处理框输入输出框起止框判断框连接符流程线一、自然语言表示3.1.3算法的表示方法例1中求5!的算法用流程图表示:算法:S1:p=1S2:i=2S3:pipS4:i+1iS5:若i5,返回S3,否则结束,得出结果p为5!。3.1.3算法的表示方法开始P=1i=2P=P*ii=i+1Ni5Y结束打印P优点:既形象直观,又节省篇幅,基本结构及算法的表示均在一个矩形框内,尤其适于表示结构化程序的设计。三、N-S结构化流程图取消改进流程图中的流程线,这种算法被迫只能从上到下顺序执行,从而避免了算法流程的任意转向,保证了程序的质
6、量。所谓结构化程序设计就是由基本结构顺序组成的,基本结构之间无跳转。3.1.3算法的表示方法例1中求5!用N-S图表示:p=1i=2p=p*ii=i+1直到i>5为假打印pmain(){inti,p;p=1;i=2;do{p=p*i;i=i+1;}while(i<5)printf(“%d”,p);}用C实现3.1.3算法的表示方法伪码是指介于自然语言和计算机语言之间的一种代码,是帮助程序员制定算法的智能化语言,它不能在计算机上运行,但是使用起来比较灵活,无固定格式和规范,只要写出来自己或别人能看懂即可,而且比较容易转换为计算机程序。
7、3.1.3算法的表示方法四、伪代码表示:3.1.3算法的表示方法inputnifn<0print“inputerror!”gotoendelsefac=1i=1loop:fac=fac*ii=i+1ifi<=ngotoloopprintfacend例:用伪码表示的计算n!的算法返回为了使流程图便于理解和阅读,限制无规律的任意转向,结构化程序设计规定了三种基本结构,即:顺序结构、选择结构、循环结构。然后由这些基本结构按一定规律组成一个算法结构,整个算法的结构由上而下地将各个基本结构顺序排列起来的。三种基本结构:三种基本结构的特点:(1
8、)只有一个入口(2)只有一个出口(3)结构内的每一部分都有机会被执行(4)结构内不存在“死循环”3.2顺序结构程序设计3.2顺序结构程序设计顺序结构是最简单的C语言程序结构,也是C语言程序中最常用的程序结构,主要由表达式语句组成。特点
此文档下载收益归作者所有