计算机程序设计与语言.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(40页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1第四章第四章 计算机程序设计与语言计算机程序设计与语言DNADNA,它是我们舞蹈的乐章,它是我们舞蹈的乐章。2本章概要本章概要本章介本章介绍计算机程序算机程序设计的基本概念,包括模型的建立、的基本概念,包括模型的建立、算法的算法的设计和表达、和表达、计算机程序算机程序设计语言、程序的言、程序的编写、程序写、程序的的测试、程序文档的建立和程序的、程序文档的建立和程序的维护。通。通过本章的学本章的学习,你,你将具将具备计算机程序算机程序设计的基本能力,可以利用学到的知的基本能力,可以利用学到的知识和方和方法法尝试解决很多解决很多问题。学完本章,你将能。学完本章,你将能够:了解程序了解程序设计的基
2、本步的基本步骤;掌握至少两种表达算法的方法;掌握至少两种表达算法的方法;识别简单程序中的控制程序中的控制结构;构;列出如今流行的列出如今流行的编程程语言;言;描述各种描述各种编程程语言的主要特征。言的主要特征。34.1.1 4.1.1 计算机程序计算机程序程序程序是是计算机算机执行任何操作的行任何操作的驱动力,是力,是计算机算机为完完成某一任成某一任务所必所必须执行的一系列行的一系列指令指令。除了少量存除了少量存储在在ROMROM等存等存储器中的特殊程序外,程序大器中的特殊程序外,程序大多以多以文件文件的形式存的形式存储在磁在磁盘等外存等外存储器上。器上。44.1.2 4.1.2 程序设计步骤
3、程序设计步骤设计一个能解决一个能解决实际问题的的计算机程序需要算机程序需要经过以下几个以下几个过程:程:(1 1)建立模型建立模型:由:由实际问题的描述抽象出数学模型,即由物理模型到抽象模的描述抽象出数学模型,即由物理模型到抽象模型,用形式化方法描述型,用形式化方法描述现实世界。世界。(2 2)算法算法设计:给出解决出解决问题的步的步骤,即算法。同一个,即算法。同一个问题可以有各种不同可以有各种不同的解决的解决办法,可以从中法,可以从中选取一种最合适的算法。取一种最合适的算法。(3 3)算法表达算法表达:选择一种表达算法的工具,一种表达算法的工具,对算法算法进行清晰的表达。行清晰的表达。(4
4、4)编写程序写程序:选择一种程序一种程序设计语言,把以上算法程序化,言,把以上算法程序化,这称称为编写程写程序。序。(5 5)程序程序调试:对编写好的程序写好的程序进行行调试,修改程序中的,修改程序中的错误。(6 6)程序文档程序文档编写与程序写与程序维护:整理和:整理和编写程序文档,以便更好地写程序文档,以便更好地维护程序。程序。54.2.1 4.2.1 建立模型建立模型n模型是模型是对现实系系统的一种描述,是的一种描述,是现实系系统的抽象和的抽象和简化。化。n模型分模型分为物理模型物理模型和和数学模型数学模型两大两大类。n物理模型物理模型的建立:的建立:对客客观存在的事物存在的事物进行形象
5、的描述,列出已知的所有物理元素行形象的描述,列出已知的所有物理元素及关系,明确需要解决的及关系,明确需要解决的问题。所以物理模型也是。所以物理模型也是现实系系统的一个的一个简化化.n数学模型数学模型的建立:的建立:在物理模型的基在物理模型的基础上,忽略其非重要的上,忽略其非重要的细节,抓住本,抓住本质性的元性的元素,素,对其符号化后,用数学的方法描述出来。其符号化后,用数学的方法描述出来。64.2.2 4.2.2 算法设计算法设计 算法算法是指是指为完成某完成某项任任务而构造的指令集,而构造的指令集,简单地地说就是解决就是解决问题的方法和步的方法和步骤。74.2.2 4.2.2 算法设计算法设
6、计(1)输入系数入系数a1,b1,c1,a2,b2,c2;(2)计算算d=a1b2-a2b1;(3)如果)如果d=0,打印,打印“方程方程组无解或有无无解或有无穷组解解”,转(7););(4)计算算x=(c1b2-c2b1)/d;(5)计算算y=(a1c2-a2c1)/d;(6)输出:出:x,y;(7)输入是否入是否继续解其他方程解其他方程组的的标记s(s=“Y”或或s=“N”););(8)如果)如果s=“Y”,转(1););(9)结束。束。若要解决我若要解决我们提出的提出的“鸡兔同兔同笼”问题,只要,只要输入入计算机已知算机已知的信息,如的信息,如a1=1,b1=1,c1=36,a2=2,b
7、2=4,c2=96,就,就可以按以上算法可以按以上算法计算出算出结果:果:x=24,y=12。84.2.2 4.2.2 算法设计算法设计对于算法的于算法的评价有价有许多多标准。但基本的准。但基本的标准有两个:一个是准有两个:一个是时间标准准(时间复复杂度),一个是度),一个是空空间标准准(空(空间复复杂度)。度)。所所谓时间标准,准,简单说来,即来,即执行行这个算法需要多少个算法需要多少时间,基,基本的原本的原则是是时间越短越好。越短越好。所所谓空空间标准,即准,即执行行这个算法需要占用多少个算法需要占用多少资源源(可以理解(可以理解为占用了多少占用了多少计算机存算机存储单元),基本的原元),
8、基本的原则是是资源的占源的占用越少越好。用越少越好。但是随着但是随着计算机技算机技术的的发展,硬件性能不断提高,程序的展,硬件性能不断提高,程序的规模模越来越越来越庞大,算法的清晰程度成了一个非常重要的大,算法的清晰程度成了一个非常重要的问题。算法的易懂性也是我算法的易懂性也是我们衡量一个算法好坏的重要指衡量一个算法好坏的重要指标。94.2.2 4.2.2 算法设计算法设计设计算法算法时,还要注意以下几点:要注意以下几点:(1)通用性通用性。一个算法一个算法总是是针对某某类问题设计的,所以的,所以对于求解于求解某某类问题中的任何一个中的任何一个问题应该是有效的。是有效的。(2)确定性确定性。算
9、法中的每个步算法中的每个步骤都是确定的,在什么情况下做什都是确定的,在什么情况下做什么都非常明确,没有含糊不清的地方。么都非常明确,没有含糊不清的地方。(3)有限性有限性。一个算法在一个算法在执行行时,必,必须经过有限步后停下来,有限步后停下来,结束算法束算法执行,行,给出出结果,而不能无限地果,而不能无限地执行下去。行下去。104.2.3 4.2.3 算法表达算法表达 为了提高表达算法的清晰程度,需要了提高表达算法的清晰程度,需要选择一种合适的描一种合适的描述算法的工具。述算法的工具。常用的描述工具有:常用的描述工具有:流程流程图,N-S图,PAD图,伪码等。等。11流程图(也称为程序框图)
10、流程图(也称为程序框图)是最常用的一种表示法是最常用的一种表示法12PROCEDURE求解二元一次方程求解二元一次方程组TYPE a1,b1,c1,a2,b2,c2,x,y IS REALTYPE s IS CHAR DO WHILE TRUE/*输入方程入方程组系数系数 READ a1,b1,c1,a2,b2,c2 d=a1*b2-a2*b1 IF d=0 THEN WRITE 方程方程组无解或有无无解或有无穷组解解 ELSE /*求方程求方程组的惟一解并的惟一解并输出出 BEGIN x=(c1*b2-c2*b1)/d y=(a1*c2-a2*c1)/d WRITE X,Y ENDENDIF
11、/*控制循控制循环是否是否结束束WRITE若若继续循循环输入入Y,否,否则输入入NREAD SIF S“Y”THENEXITENDIF ENDDO END 伪码伪码表示法好比是算法的注释系统,由编程语言和自然表示法好比是算法的注释系统,由编程语言和自然语言混合而成语言混合而成134.3 4.3 编写计算机程序编写计算机程序程序的程序的编写就是用程序写就是用程序设计语言把算法程序化。言把算法程序化。编写程序的基本要求:首先是保写程序的基本要求:首先是保证语法上的正确法上的正确性。然后是保性。然后是保证语义的正确性,的正确性,也就是通也就是通过运运行程序,得到我行程序,得到我们需要的正确需要的正确
12、结果。果。高高质量的程序量的程序还应体体现在以下四个方面:在以下四个方面:可靠性可靠性高、运行速度快、占用存高、运行速度快、占用存储空空间小和易懂性小和易懂性。通常通常这四个方面不能同四个方面不能同时满足,要根据具体情足,要根据具体情况况权衡利弊,兼衡利弊,兼顾某些方面。在某些方面。在计算机速度越算机速度越来越快,内存越来越大的今天,程序的易懂性来越快,内存越来越大的今天,程序的易懂性显得更得更为重要。重要。14n“顺序控制序控制结构构”、“选择控制控制结构构”和和“重复控制重复控制结构构”154.3 4.3 编写计算机程序编写计算机程序这三种基本控制三种基本控制结构有以下共同的特点:构有以下
13、共同的特点:(1)只有一个入口。)只有一个入口。(2)只有一个出口。)只有一个出口。(3)结构内的每一部分都有机会被构内的每一部分都有机会被执行到,也就是行到,也就是说,对每一个框来每一个框来说,都,都应当有一条从入口到出口的路径当有一条从入口到出口的路径通通过它。它。(4)结构内没有死循构内没有死循环(无(无终止的循止的循环)。164.3 4.3 编写计算机程序编写计算机程序2.程序程序设计风格格 程序程序编码时,保持良好的程序,保持良好的程序设计风格可以增加格可以增加程序的可程序的可读性。由于影响程序可性。由于影响程序可读性的因素很多,性的因素很多,我我们这里里仅列出几个主要的方面供列出几
14、个主要的方面供编程者参考。程者参考。(1)文档化()文档化(documentation)(2)格式化()格式化(layout)(3)模)模块化(化(modularization)174.4 4.4 程序的调试与维护程序的调试与维护程序程序调试是是为了了验证程序正确性而程序正确性而执行程序的行程序的过程。程。调试时需要需要选择测试数据作数据作为输入,运行程序后看是否会入,运行程序后看是否会输出出预期的期的结果。如果没有果。如果没有产生正确的生正确的结果,程序果,程序员必必须查找程序中的找程序中的错误,修改,修改错误,然后再,然后再调试修改后的程序。修改后的程序。可能要可能要经过多次反复,直到得出
15、多次反复,直到得出满意的意的结果。果。所以要求我所以要求我们根据某些原根据某些原则选择有代表性的有代表性的测试数据数据进行行调试,以,以较少的少的调试次数,最大可能地次数,最大可能地发现程序中的程序中的错误。184.4.1 4.4.1 黑盒调试法与白盒调试法黑盒调试法与白盒调试法对程序程序进行行调试可用两种方法可用两种方法进行行一种是把程序看成一个一种是把程序看成一个“黑盒子黑盒子”,调试人人员完全不考完全不考虑程程序内部序内部结构和构和处理理过程,只考程,只考虑程序的功能,通程序的功能,通过选择一些一些测试数据,看程序的功能是否都已数据,看程序的功能是否都已实现,这就是黑就是黑盒盒调试法。法
16、。另一种是把程序看成一个打开的盒子,另一种是把程序看成一个打开的盒子,调试人人员只关注程序只关注程序内部的内部的处理理细节,通,通过选择一些一些测试数据,数据,检查程序中程序中的每个的每个语句或分支是否都能正确句或分支是否都能正确执行,行,这就是就是白盒白盒调试法。法。194.4.1 4.4.1 黑盒调试法与白盒调试法黑盒调试法与白盒调试法 黑盒黑盒调试法法为了了调试程序的各个功能,我程序的各个功能,我们把把输入的二元一次方程入的二元一次方程组的系数分的系数分为以下四以下四类,每一,每一类设计一个一个调试用例。用例。合理的系数:合理的系数:(1 1)方程)方程组有唯一解:有唯一解:a1=1a1
17、=1,b1=1b1=1,c1=1c1=1,a2=0a2=0,b2=1b2=1,c2=2c2=2(2 2)方程)方程组无解:无解:a1=1a1=1,b1=1b1=1,c1=1c1=1,a2=1a2=1,b2=1b2=1,c2=2c2=2(3 3)方程)方程组有无有无穷解:解:a1=1a1=1,b1=1b1=1,c1=1c1=1,a2=2a2=2,b2=2b2=2,c2=2c2=2不合理的系数:不合理的系数:(4 4)输入的不全是数入的不全是数值:a1=a1=“a a”,b1=5b1=5,c1=0c1=0,a2=6a2=6,b2=8b2=8,c2=7c2=7选择合理的合理的输入数据是入数据是验证程
18、序的功能、性能是否符合程序的功能、性能是否符合设计的要求。的要求。选择不合理的不合理的输入数据入数据对程序程序进行行调试非常重要,非常重要,这是是对程序可靠性程序可靠性的考的考验。204.4.1 4.4.1 黑盒调试法与白盒调试法黑盒调试法与白盒调试法 白盒白盒调试法法为了了让程序中的每个程序中的每个语句至少句至少执行一次,使每个判断条件取一次真行一次,使每个判断条件取一次真或取一次假,我或取一次假,我们选择如下如下调试用例:用例:(1 1)d=0d=0,s=s=“Y Y”:a1=1a1=1,b1=1b1=1,c1=1c1=1,a2=2a2=2,b2=2b2=2,c2=2c2=2(2 2)d0
19、d0,s=s=“N N”:a1=1a1=1,b1=0b1=0,c1=1c1=1,a2=0a2=0,b2=1b2=1,c2=2c2=2这两个例子两个例子调试后,使得程序中的每个后,使得程序中的每个语句至少句至少执行了一次,每个行了一次,每个判断条件分判断条件分别取了一次取了一次“真真”和一次和一次“假假”。214.4.2 4.4.2 调试的步骤调试的步骤调试工作先工作先对每个模每个模块进行行调试,一般采用白盒,一般采用白盒调试法保法保证每个程序模每个程序模块内部的正确性,然后再把内部的正确性,然后再把调试后的模后的模块组装在一起装在一起进行整体行整体调试,主要,主要调试各模各模块是否能正常配合工
20、作,使用的方法多采用黑盒是否能正常配合工作,使用的方法多采用黑盒调试法。法。对模模块的接口的接口进行行调试,适当,适当辅以白盒以白盒调试法,以便法,以便对主要控制路径主要控制路径进行行调试。224.4.3 4.4.3 程序维护和程序文档的编写程序维护和程序文档的编写我我们通常把程序的修改称通常把程序的修改称为程序程序维护。程序。程序维护一般有三种一般有三种类型,即改正性型,即改正性维护、适、适应性性维护和完善性和完善性维护。程序。程序维护在在软件生命周期中占相当重要的地位,大件生命周期中占相当重要的地位,大约75%75%的的费用都用在程序用都用在程序维护阶段。段。在程序在程序调试时,有的,有的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 程序设计 语言
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内