教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 文库大全 > 小学教育 >

大一上学期第10章 程序设计基础

来源:网络收集 时间:2026-08-27
导读: 第10章 程序设计基础 章10.1 10.2 10.3 10.4 程序设计的概念 算法 程序设计语言 程序设计方法 10.1 程序设计的概念程序:是解题方法和步骤的描述, 程序:是解题方法和步骤的描述,是供计算机执行 并能完成特定功能的指令序列。 并能完成特定功能的指令序列

第10章 程序设计基础 章10.1 10.2 10.3 10.4 程序设计的概念 算法 程序设计语言 程序设计方法

10.1 程序设计的概念程序:是解题方法和步骤的描述, 程序:是解题方法和步骤的描述,是供计算机执行 并能完成特定功能的指令序列。 并能完成特定功能的指令序列。 程序的核心:数据结构和算法。 程序的核心:数据结构和算法。 程序设计( ):先对问题进行分析并 程序设计(Programming):先对问题进行分析并 ): 建立数学模型,然后考虑数据的组织方式和算法, 建立数学模型,然后考虑数据的组织方式和算法, 并用某一种程序设计语言编写程序,最后调试程序, 并用某一种程序设计语言编写程序,最后调试程序, 使之运行后能产生预期的结果。 使之运行后能产生预期的结果。

程序设计的基本步骤: 程序设计的基本步骤: (1)分析问题,确定数学模型或方法。 分析问题, 分析问题 确定数学模型或方法。 (2)设计算法,画出流程图。 设计算法, 设计算法 画出流程图。 (3)选择编程工具,按算法编写程序。 选择编程工具, 选择编程工具 按算法编写程序。 (4)调试程序,分析输出结果。 调试程序, 调试程序 分析输出结果。

10.2 算 法10.2.1 算法的概念 计算机解决问题的方法和步骤, 计算机解决问题的方法和步骤,就是计算机解题 的算法(Algorithm)。 的算法 。 算法举例: 算法举例: (1) 将两个变量的值互换 。 ) (2)欧几里德(Euclid)算法求两个正整数 和 )欧几里德( )算法求两个正整数m和 n的最大公约数。 的最大公约数。 的最大公约数 枚铜币, (3)非数值计算算法:有9枚铜币,其中有 枚略 )非数值计算算法: 枚铜币 其中有1枚略 轻的是假币, 轻的是假币,用一台没有砝码的天平将假币找出 来,应怎样找称 。4

10.2.2 算法的特性 (1) 有穷性。算法中执行的步骤总是有限次数的,不 有穷性。算法中执行的步骤总是有限次数的, 能无止境地执行下去。 能无止境地执行下去。 (2) 确定性。算法中的每一步操作必须具有确切的含 确定性。 不能有二义性。 义,不能有二义性。 (3) 有效性。算法中的每一步操作必须是可执行的。 有效性。算法中的每一步操作必须是可执行的。 (4) 要有数据输入。算法中操作的对象是数据,因此 要有数据输入。算法中操作的对象是数据, 应提供有关数据。 应提供有关数据。 (5) 要有结果输出。 要有结果输出。

10.2.3 算法的评价 1.算法评价标准 . (1)正确性。 )正确性。 (2)可读性。 )可读性。 (3)通用性。 )通用性。 (4)高效率。 )高效率。 2. 算法效率的度量 (1)时间

度量 ) (2)空间度量 )

10.2.4 算法的描述 1. 用传统的流程图描述算法 传统的流程图是用一些几何框图、 传统的流程图是用一些几何框图、 流程线和文字说明表示各种类型 的操作。一般用矩形框表示进行 的操作。 某种处理,有一个入口, 某种处理,有一个入口,一个出 用菱形框表示判断, 口。用菱形框表示判断,有一个 入口,两个出口。 入口,两个出口。在框内写上简 明的文字或符号表示具体的操作, 明的文字或符号表示具体的操作, 用带箭头的流向线表示操作的先 后顺序。 后顺序。7

2. 用结构化流程图描述算法 (1)程序的三种基本结构:顺序结 )程序的三种基本结构: 选择结构和循环结构。 构、选择结构和循环结构。 (2)结构化流程图(N-S图) )结构化流程图( 图

3.用伪代码描述算法 . 计算2+4+… +100并输出,设计算法并用 并输出, 计算 并输出 Visual Basic伪代码描述如下: 伪代码描述如下: 伪代码描述如下 0→sum 1→i Do While i≤100 If i/2的余数为 THEN sum+i→sum 的余数为0 的余数为 i+1→i Loop Print sum9

10.2.5 算法示例 1.迭代算法 . 迭代是一种建立在循环基础上的算法。在数学中, 迭代是一种建立在循环基础上的算法。在数学中, 迭代经常被用来进行数值计算,例如求方程的解, 迭代经常被用来进行数值计算,例如求方程的解, 不断用变量原来的值递推求新的值的过程。 不断用变量原来的值递推求新的值的过程。 讨论求若干个数之和或乘积的问题。 讨论求若干个数之和或乘积的问题。

10.2.5 算法示例1.迭代算法 . 迭代是一种建立在循环基础上的算法。在数学中, 迭代是一种建立在循环基础上的算法。在数学中, 迭代经常被用来进行数值计算,例如求方程的解, 迭代经常被用来进行数值计算,例如求方程的解, 不断用变量原来的值递推求新的值的过程。 不断用变量原来的值递推求新的值的过程。 讨论求若干个数之和或乘积的问题。 讨论求若干个数之和或乘积的问题。

2.穷举算法 . 穷举法也叫枚举法, 穷举法也叫枚举法,它的基本思路是对众多可能 按某种顺序进行逐一枚举和检验, 解,按某种顺序进行逐一枚举和检验,并从中找 出那些符合要求的可能解,作为问题的解。 出那些符合要求的可能解,作为问题的解。穷举 的计算量是相当大的,但对于计算机来说, 的计算量是相当大的,但对于计算机来说,做起 来很容易。穷举算法是一种重要的算法设计策略, 来很容易。穷举算法是一种重要的算法设计策略, 可以说是计算机解题的一大特点。 可以说是计算机解题的一大特点。

求方程x+2y+5z=100的整数解。 的整数解。 求方程 的整数解

3.排序算法 . 所谓排序, 所谓排序,就是将一组数据元素按照某个关键字 递增或递减的次序排列起来。 递增或递减的次序排列起来。 (1)选择排序 )选择排序(Selection Sort) 选择排序法的实现过程是: 选择排序法的实现过程是:首先找出表中关键字 最小的元素,将其与第一个元素进行交换,然后, 最小的元素,将其与第一个元素进行交换,然后, 再在其余元素中找出关键字最小的元素, 再在其余元素中找出关键字最小的元素,将其与 第二个元素进行交换。依次类推, 第二个元素进行交换。依次类推,直到将表中所 有关键字按由小到大的顺序排列好为止。 有关键字按由小到大的顺序排列好为止。

(2)冒泡排序 )冒泡排序(Bubble Sort) 冒泡法排序法是每趟将相邻的两个数两两进行比 若满足升序次序,则进行下一次比较, 较,若满足升序次序,则进行下一次比较,若不 满足升序次序,则交换这两个数,直到最后。 满足升序次序,则交换这两个数,直到最后。总 的比较次数为n-1次 此时最后的元素为最大数, 的比较次数为 次,此时最后的元素为最大数, 此为一趟排序。接着进行第二趟排序,方法同前, 此为一趟排序。接着进行第二趟排序,方法同前, 只是这次最后一个元素不再参与比较, 只是这次最后一个元素不再参与比较,比较次数 为n-2次,依次类推。 次 依次类推。

4.查找算法 . 查找是根据给定的某个值, 查找是根据给定的某个值,在查找表中确定一个 其关键字等于给定值的数据元素, 其关键字等于给定值的数据元素,若表中存在这 样的数据元素,称此查找是成功的。 样的数据元素,称此查找是成功的。若表中不存 在关键字等于给定值的数据元素, 在关键字等于给定值的数据元素,称此查找是不 成功的。 成功的。 (1)顺序查找 ) 顺序查找是最常用的查找方法,其查找过程为: 顺序查找是最常用的查找方法,其查找过程为: 从第一个元素起, 从第一个元素起,逐个将给定值与数据元素的关 键字进行比较, 键字进行比较,若某个元素的关键字与给定值相 则认为查找是成功的,否则,查找失败。 等,则认为查找是成功的,否则,查找失败。

(2)折半查找 )作为折半查找的表必须是顺序存储的有序表, 作为折半查找的表必须是顺序存储的有序表,即表 …… 此处隐藏:2461字,全部文档内容请下载后查看。喜欢就下载吧 ……

大一上学期第10章 程序设计基础.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wenku/1545027.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)