VB程序设计第2版第1章 程序设计基础.ppt_第1页
VB程序设计第2版第1章 程序设计基础.ppt_第2页
VB程序设计第2版第1章 程序设计基础.ppt_第3页
VB程序设计第2版第1章 程序设计基础.ppt_第4页
VB程序设计第2版第1章 程序设计基础.ppt_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Visual Basic 程序设计教程 第2版 普通高等教育“十一五”国家级规划教材 邱李华 曹青 郭志强 编著 1 第一章 程序设计基础 第1章 本章要点: 程序设计语言 算法 结构化程序设计 面向对象的程序设计 程序设计基础 2 第一章 程序设计基础 指令: 规定计算机完成一定操作的命令。 程序设计语言: 要使计算机能够理解人给出的各 种指令,就需要在人和计算机之间有一种特定的 语言,人和计算机都能够识别,这种特定的语言 就是计算机语言,也叫程序设计语言。 程序: 使用程序设计语言编写的用来使计算机完 成一定任务的一段“文章”称为程序。 程序设计: 编写程序的工作称为程序设计。 学习目的: 利用程序设计语言进行程序设计,完成 一定功能 3 第一章 程序设计基础 1.1 程序设计语言 程序设计语言是人们根据计算机的特点以及描述 问题的需要设计出来的。随着计算机技术的发展 ,不同风格的语言不断出现,逐步形成了计算机 语言体系。 计算机语言按其发展程度可以划分为:机器语言 、汇编语言和高级语言。 机器语言和汇编语言属于低级语言,高级语言又 分为面向过程的语言和面向对象的语言。 4 第一章 程序设计基础 1.1.1 机器语言 机器指令:由0和1组成的二进制编码 机器语言:计算机能直接识别的机器指令的集合 例:用某机器语言编写的求“9+8”的程序。 10110000 00001001 00000100 00001000 11110100 把加数9送到累加器AL中 把累加器AL中的内容与另一数8相加 ,结果存在累加器AL中 停止操作 特点:机器能直接识别、执行效率高 难学、难记、难写、难检查、难移植 5 第一章 程序设计基础 1.1.2 汇编语言 特点: 可读性好,容易查错、方便 机器不能直接识别、需翻译、可移植性差 引入助记符代替指令,如ADD、SUB、MOV等。 例:用汇编语言 实现 求“9+8” MOV AL,9 把加数9送到累加器AL中 ADD AL,8 把AL中的数与8相加,存在AL中 HLT 停止操作 连接 程序 汇编 程序 汇编语言源程序目标程序可执行程序 6 第一章 程序设计基础 1.1.3 高级语言 解释程序 高级语言源程序执行结果 编译程序 连接程序高级语言 源程序 目标 程序 可执行 程序 例:用某高级语言计算9+8的问题,只需写成: S=9+8 计算9+8的值,保存到变量S中 END 结束 特点: 易编写、易读、易查错、不依赖具体机器 需要配合使用翻译程序 更接近自然语言,脱离具体机器,与指令系统无关 高级语言处理程序:翻译程序 翻译程序的工作方式:解释方式和编译方式 7 第一章 程序设计基础 1.2 程序设计 程序:用程序设计语言编写,用于完成特定任务 程序的特性: 目的性:有明确的目的,为解决特定问题而设 计。 分步性:分成若干操作步骤,逐步解决问题。 有限性:操作步骤是有限的。 有序性:操作步骤必须是有先后次序的,否则 就失去了程序设计的意义。 分支性:可以根据条件的不同,决定实施不同 的操作步骤来解决问题。 程序设计:编制程序的工作称为“程序设计”。 实现:选择工具语言; 掌握解题的方法和步骤算法。 8 第一章 程序设计基础 1.2.1 算法 1. 什么是算法 计算机为解决问题而设计的有明确意义的操作步 骤的有限集合。 2 . 算法的特性 有穷性、确定性、有效性、有0个到若干个输入 、 有1个到若干个输出。 3. 算法的表示形式 (1) 用自然语言表示算法 例如:将两个变量X和Y的值互换。算法表示: 步骤1 将X值存入中间变量Z中:X Z 步骤2 将Y值存入变量X中:Y X 步骤3 将中间变量Z的值存入Y中:Z Y 9 第一章 程序设计基础 用自然语言表示算法,虽然容易表达,但文 字冗长且易产生“二义性”。 N-S流程图 1973年,由美国学者INassit和BShneiderman 提出,这种流程图完全去掉了带箭头的流程线, 全部算法写在一个大矩形框中,在该大矩形框内 还可以包含一些从属于它的小矩形框。 N-S流程 图特别适合于结构化程序设计。 处理框: 连接点: 起止框: 输入/输出框: 判断框: 流向线: (2) 用流程图表示算法 传统流程图 10 第一章 程序设计基础 例:交换两个变量的流程图 传统流程图: N-S流程图: 开始 输出X,Y 输入X,Y XZ YX ZY 结束 输出X,Y ZY YX XZ 输入X,Y 11 第一章 程序设计基础 1.2.2 结构化程序设计 1. 三种基本结构 顺序结构、选择结构和循环结构 (1) 顺序结构 b A B a A B 传统流程图: N-S流程图: 12 第一章 程序设计基础 (2) 选择结构 传统流程图: N-S流程图: b a 条件 AB 不成立成立 条件 成立 AB 不成立 13 第一章 程序设计基础 【例】分别用传统流程图和N-S流程图表示求一 个数的绝对值的算法。 XY 开始 输出Y 输入 X -XY 结束 X=0 Yes No 输入X ? No X=0 Yes XY-XY 输出Y 传统流程图 : N-S流程图: 14 第一章 程序设计基础 (3) 循环结构 当型循环结构 传统流程图: N-S流程图 : 条件 成立 A b 不成立 a 当条件为真 A 15 第一章 程序设计基础 直到条件为真 A 直到型循环结构 传统流程图 : N-S流程图: a A b 不成立 成立 条件 16 第一章 程序设计基础 【例】分别用传统流程图和N-S流程图表示: 求1+2+3+100的算法。 1 开始 输出S 1I S+IS I+1I 结束 0S I100 Yes No 1 直到I100 1I S+IS I+1I 输出S 0S N-S流程图: 传统流程图 : 17 第一章 程序设计基础 三种基本结构有以下共同的特点: 只有一个入口、一个出口 每个基本结构中的每一部分都有机会被执行到 结构内不存在“死循环” 2. 结构化程序设计方法 自顶向下、逐步求精、模块化 18 第一章 程序设计基础 1.2.3 面向对象的程序设计 任何现实问题都是由一些基本事物组成,这些 事物之间存在着一定的联系,在使用计算机解决现 实问题的过程中,为了有效地反映客观世界,最好 建立相应的概念去直接表现问题领域中的事物及事 物之间的相互联系。 面向对象技术中引入了“对象”来表示事物; 用消息传递建立事物间的联系。 19 第一章 程序设计基础 1. 对象 (Object) 在自然界中,用于描述某一实体。如房屋、人 、汽车等。 在计算机中,将数据和处理该数据的过程、函 数或子过程打包在一起而生成的新的数据类型称 为对象,它是代码和数据的组合,可以作为一个 单位来处理。对象可以是窗口、模块、数据库和 控件等,也可以是整个应用程序。 属性 事件 方法 事件驱动 20 第一章 程序设计基础 2. 面向对象(Object Oriented,简称OO) 面向对象基本上意味着从问题所涉及的对象入手 来研究该问题 。 面向对象不仅仅是一种新的程序设计技术,而且 是一种全新的设计和构造软件的思维方法。它使 计算机解决问题的方式更加类似于人类的思维方 式,更能直接地描述客观世界。从程序设计的角 度看,面向对象代表了一种通过模仿人类建立现 实世界模型的方法进行软件开发的思想体系。 Visual Basic为面向对象的开发提供了许多功能, 可以用于实现面向对象的设计。 21 第一章 程序设计基础 3. 消息(Messages) 消息是用来请求对象执行某一处理或回答某些 信息的要求。 某一对象可以在必要时通过传递消 息请求其他对象完成某些处理工作或回答某些信 息,其他对象在执行所要求的处理活动时,同样 可以通过传递消息与别的对象联系。因此,程序 的执行是靠在对象间传递消息来完成的。 4. 类(Class)及类的实例 将带有相似属性和行为的事物组合在一起构成 一个类。一个属于某种类的特定对象称为该类的 一个实例。 22 第一章 程序设计基础 5. 封装(Encapsulation) 将数据和操作数据的函数衔接在一起,构成 一个具有类类型的对象的描述称为封装。 6. 继承(Inheritance) 在面向对象的语言中,可以从一个类生成另 一个类。派生类(也称子类)继承了其父类和祖 先类的数据成员和成员函数。 7. 多态(Polymorphism) 多态性是一种面向对象的程序设计功能,当 同样的消息被不同的对象接收时,却导致完全不 同的行为,即完成不同的功能。 23 第一章 程序设计基础 8. 抽象(Abstraction) 抽象是使具体事物一般化的一种过程,即对 具有特定属

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论