- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第1章 程序设计语言与程序设计方法 制作者:钱瑛 本章的学习重点和难点 程序设计的基本概念 算法的概念和描述 结构化程序设计方法 面向对象的程序设计概念和方法 1.1 程序设计语言简介 语言 机器语言 汇编语言 高级语言 程序 一个程序是完成某一特定任务的一组指令序列,或者说,为实现某一算法的指令序列称为“程序” 程序设计 使用某种计算机语言,按照某种算法,编写程序的活动 程序=数据结构+算法 程序=算法+数据结构+程序设计方法+语言工具和环境 1.2 算法及其描述 1.2.1 算法的概念 算法——解决某个问题或处理某件事的方法和步骤,在这儿所讲的算法是专指用计算机解决某一问题的方法和步骤 计算机算法的分类 数值计算算法 非数值计算算法 1.2.2 算法举例 [例题1-1] [例题1-2] [例题1-3] 例题1-1 有两个杯子A和B,分别盛放茶和咖啡,要求将杯中的饮料互换,即A中盛放咖啡,B中盛放茶 增加一个空杯C作为过渡 算法可以表示为: 步骤1:先将A杯中的茶倒入C杯中 步骤2:再将B杯中的咖啡倒入A杯中 步骤3:最后将C杯中的茶倒入B杯中 例题1-2 求两个数A、B中的最大数 算法可以表示为: 步骤1:将数A、B进行比较,如果A大于B,则转向步骤2,否则转向步骤3。 步骤2:A是最大数 步骤3:B是最大数 常常通过比较求最值或进行排序 例题1-3 求n! 分析:如果n=4,则4!=1*2*3*4,所以可以先假设S代表累乘之积,I代表累乘项 算法可以表示为: 步骤1:S=1,I=1 步骤2:如果I≤n,则执行步骤3,否则停止,S中的值即为所求的n! 步骤3:将S与I的乘积存入S中 步骤4:使I增1,转向执行步骤2 1.2 算法及其描述 1.2.3 算法的特征 有穷性 确定性 有零个或多个输入 有一个或多个输出 有效性 1.2.4 算法的表示 自然语言 伪代码 流程图 例题1-4 A和B数据互换 增加一个C作为过渡 算法可以表示为: 步骤1:A→C 步骤2:B→A 步骤3:C→B 例题1-5 求两个数A、B中的最大数 算法可以表示为: 步骤1:将数A、B进行比较,如果A大于B,则转向步骤2,否则转向步骤3。 步骤2:A是最大数 步骤3:B是最大数 例题1-6 求n! 算法可以表示为: 步骤1:S=1,I=1 步骤2:如果I≤n,则执行步骤3,否则停止,S中的值即为所求的n! 步骤3:将S与I的乘积存入S中 步骤4:使I增1,转向执行步骤2 例题1-5 求两个数A、B中的最大数 算法可以表示为: 步骤1:将数A、B进行比较,如果A大于B,则转向步骤2,否则转向步骤3。 步骤2:A是最大数 步骤3:B是最大数 Private Sub main() Dim A As Integer, B As Integer, max As Integer 变量定义A = InputBox(Please input number A:) 输入变量AB = InputBox(Please input number B:) 输入变量BIf A B Then 比较A与B max = AElse max = BEnd IfDebug.Print max 打印最大值 End Sub 小结 算法是解决问题的核心内容 学会使用流程图来表示的算法,逻辑清楚,形象直观,容易理解 掌握相应语言(如VB)的组成要素及编写方法,容易能编写出对应程序 1.3 结构化程序设计 1.3.1 基本算法结构 结构化程序设计方法 算法的三种基本结构 顺序结构 分支结构 循环结构 任何一个程序都是这三种基本控制结构的组合 三种基本结构的共同特点 只有单一的入口和单一的出口 结构中的每个部分都有执行到的可能 结构内不存在永不终止的死循环 顺序结构 每个处理步骤(A和B…)顺序执行 分支结构 e为判决条件 进入分支结构,首先判断e成立与否,再根据判断结果,选择执行处理A或者处理B后退出 循环结构 1.3 结构化程序设计 1.3.2 结构化程序设计方法 自顶向下 逐步细化(核心) 模块化 应用举例 [例题1-7] 例题1-7 对于100个正整数,输出其中的回文数(所谓回文数是指左右数字完全对称的自然数。例如:11,121,1221等都是回文数) 自顶向下、模块化: (1)输入100个正整数 (2)把其中的回文数找出来 (3)输出这些回文数 逐步细化分别对于每一部分进一步细化 (1)输入100个正整数 考虑通过a1~a100来接收这100个数据 从第1个数据开始直到第100个 (2)找出回文数 对于a1~a100中每一个数逐一判断,若判断它不是回文数,则将它的值置为零,
文档评论(0)