网站大量收购独家精品文档,联系QQ:2885784924

大学计算机 冯博琴 水电大基_第7章_程序设计新.ppt

大学计算机 冯博琴 水电大基_第7章_程序设计新.ppt

  1. 1、本文档共53页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第7章 程序设计基础 本章主要内容: 7.1 程序设计的基本概念 7.2 程序设计思想 7.3 算法和数据结构 7.1 程序设计的基本概念 为什么要进行程序设计 包饺子与程序设计 饺子的各种吃法 评估: 预期需求 可得到的工具 自身能力 在计算机的各个技术应用中,应清楚自身所处的层次、所需的技能 一、程序设计的一般过程 计算机可以做任何事情;只要能把实际问题抽象、制作为计算机可求解的程序。 计算机求解问题的步骤: 程序设计的一般过程 问题定义 算法设计 程序编制 调试运行 文档 1. 问题定义(需求分析) 问题一: 给定两个正整数p和q, 求其最大公因数 问题二: 统计一个班学生的考试成绩,并选出优秀学生 多少科目的成绩? 优秀的定义(总分?平均分?第一名?前五名?) 数据如何录入?如何输出? 问题定义确定了未来程序的输入、处理、输出 (IPO,即Input,Process,Output) 2. 算法设计 (1) 算法(Algorithm)是对解决问题步骤的描述 (2) 算法不能被计算机理解、执行 (3) 算法的表示方法 1) 自然语言描述 2) 伪代码(Pseudo code) :P130 例 3) 流程图(Flow chat) 算法自然语言描述示例一 步骤1:输入全部学生姓名、学号、英语成绩、计算机基础成绩; 步骤2:对各个学生成绩求合计; 步骤3:按合计对学生进行排序; 步骤4:取排序的学生列表中第一个学生 步骤5:该学生有不及格吗?没有则打印姓名并结束; 有不及格,则取下一个学生并重复步骤5 算法自然语言描述示例二 步骤1:输入一个学生的姓名、学号、英语成绩、计算机基础成绩; 步骤2:该学生有不及格吗?有则转步骤1 步骤3:该合计大于以前学生的合计吗?大于则记录姓名、学号、合计成绩; 步骤4:重复步骤1直到输入全部学生成绩 步骤5:打印姓名、学号、合计成绩 算法的流程图表示 3. 程序编制 (1) 程序语言的基本语法 1) 不同语言语法格式上的区别 sum : = sum + math 这是Pascal的语句 sum := sum + math 这是C++的语句 2) 不同语言语义上的区别 例如:C++中的指针,Prolog的谓词 3. 程序编制 (2) 程序的执行起始点 不同语言处理方式有所不同 (3) 子程序(模块) 将一个大程序分成若干小程序块(子程序) 每一个子程序完成相对单一的功能 一个程序可以调用别的子程序 不同语言的处理也不同,如C++中对应函数 (4) 程序的执行顺序 图5-5 程序编制 要点 如何用语句表达思想(算法)? (初级)了解语句、语法 (高级)熟悉语言提供的功能 不同语言提供的功能、性能有较大差距 如何组织程序代码 开始点 执行过程(子程序拆分、调用) 结束点 4. 调试运行 (1) IDE(集成开发环境) (2) 程序错误类型 语法错误 逻辑错误 二、程序设计语言 1. 语言的分类 机器语言 汇编语言 高级语言 2. 常见的高级语言 Prolog/Lisp C,C++,C#,JAVA,Delphi,VB Script语言(脚本语言) 二、程序设计语言 3. 语言的执行方式 (1)编译 将源程序经过编译程序翻译形成目标程序的过程. (2)解释 将源程序逐条翻译成机器指令并执行的过程 7.2 程序设计思想 一、结构化程序设计 二、面向对象程序设计 一、结构化程序设计 “软件危机”---结构化程序设计 基本观点: 程序设计方法应以能设计出结构清晰、可读性强、易于分工合作编写和调试的程序。 结构化设计方法是以模块化设计为中心 1. 模块化程序结构 (1) 模块化 把程序划分为若干个部分,每个部分独立存放、完成一个特定的功能。 一个模块可以是一条语句、一段程序、一个函数等 (2) 目的 降低程序的复杂度,使程序便于阅读、调试和维护。 (3) 基本特征 每个模块仅有一个入口和一个出口 2. 三种基本程序结构 任何复杂的算法都可以通过由程序模块组成的三种基本程序结构实现 (1) 顺序结构 按程序语句或模块在执行流中的顺序逐个执行 (2) 选择结构 按设定的条件实现程序执行流的多路分支 (3) 循环结构 按给定的条件重复执行指定的程序段或模块 (1) 顺序结构 顺序结构语句包括: 说明语句 赋值语句 I/O 语句 子函数调用语句、 返回语句 (2) 选择结构之一 一路分支格式: if (表达式) 语句序列 语句序列可以是一个语句,也可以是复合语句结构。 (3)选择结构之二 多路选择语句格式: swi

文档评论(0)

精品课件 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档