版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1,Visual Basic 程序设计教程 第2版,普通高等教育“十一五”国家级规划教材,邱李华 曹青 郭志强 编著,2,第1章,本章要点: 程序设计语言 算法 结构化程序设计 面向对象的程序设计,程序设计基础,3,指令: 规定计算机完成一定操作的命令。 程序设计语言: 要使计算机能够理解人给出的各种指令,就需要在人和计算机之间有一种特定的语言,人和计算机都能够识别,这种特定的语言就是计算机语言,也叫程序设计语言。 程序: 使用程序设计语言编写的用来使计算机完成一定任务的一段“文章”称为程序。 程序设计: 编写程序的工作称为程序设计。 学习目的: 利用程序设计语言进行程序设计,完成一定功能,4
2、,1.1 程序设计语言,程序设计语言是人们根据计算机的特点以及描述问题的需要设计出来的。随着计算机技术的发展,不同风格的语言不断出现,逐步形成了计算机语言体系。 计算机语言按其发展程度可以划分为:机器语言、汇编语言和高级语言。 机器语言和汇编语言属于低级语言,高级语言又分为面向过程的语言和面向对象的语言。,5,1.1.1 机器语言,机器指令:由0和1组成的二进制编码 机器语言:计算机能直接识别的机器指令的集合,例:用某机器语言编写的求“9+8”的程序。 10110000 00001001 00000100 00001000 11110100,把加数9送到累加器AL中,把累加器AL中的内容与另一
3、数8相加,结果存在累加器AL中,停止操作,特点:机器能直接识别、执行效率高 难学、难记、难写、难检查、难移植,6,1.1.2 汇编语言,特点: 可读性好,容易查错、方便 机器不能直接识别、需翻译、可移植性差,引入助记符代替指令,如ADD、SUB、MOV等。,例:用汇编语言 实现 求“9+8” MOV AL,9 把加数9送到累加器AL中 ADD AL,8 把AL中的数与8相加,存在AL中 HLT 停止操作,7,1.1.3 高级语言,例:用某高级语言计算9+8的问题,只需写成: S=9+8 计算9+8的值,保存到变量S中 END 结束,特点: 易编写、易读、易查错、不依赖具体机器 需要配合使用翻译
4、程序,更接近自然语言,脱离具体机器,与指令系统无关 高级语言处理程序:翻译程序 翻译程序的工作方式:解释方式和编译方式,8,1.2 程序设计,程序:用程序设计语言编写,用于完成特定任务 程序的特性: 目的性:有明确的目的,为解决特定问题而设计。 分步性:分成若干操作步骤,逐步解决问题。 有限性:操作步骤是有限的。 有序性:操作步骤必须是有先后次序的,否则就失去了程序设计的意义。 分支性:可以根据条件的不同,决定实施不同的操作步骤来解决问题。 程序设计:编制程序的工作称为“程序设计”。 实现:选择工具语言; 掌握解题的方法和步骤算法。,9,1.2.1 算法,1. 什么是算法 计算机为解决问题而设
5、计的有明确意义的操作步骤的有限集合。 2 . 算法的特性 有穷性、确定性、有效性、有0个到若干个输入、 有1个到若干个输出。 3. 算法的表示形式 (1) 用自然语言表示算法 例如:将两个变量X和Y的值互换。算法表示: 步骤1 将X值存入中间变量Z中:X Z 步骤2 将Y值存入变量X中:Y X 步骤3 将中间变量Z的值存入Y中:Z Y,10,用自然语言表示算法,虽然容易表达,但文字冗长且易产生“二义性”。,N-S流程图 1973年,由美国学者INassit和BShneiderman提出,这种流程图完全去掉了带箭头的流程线,全部算法写在一个大矩形框中,在该大矩形框内还可以包含一些从属于它的小矩形
6、框。 N-S流程图特别适合于结构化程序设计。,(2) 用流程图表示算法 传统流程图,11,例:交换两个变量的流程图,传统流程图:,N-S流程图:,12,1.2.2 结构化程序设计,1. 三种基本结构 顺序结构、选择结构和循环结构,(1) 顺序结构,传统流程图:,N-S流程图:,13,(2) 选择结构,传统流程图:,N-S流程图:,14,【例】分别用传统流程图和N-S流程图表示求一个数的绝对值的算法。,传统流程图:,N-S流程图:,15,(3) 循环结构,当型循环结构,传统流程图:,N-S流程图:,16,直到型循环结构,传统流程图:,N-S流程图:,17,【例】分别用传统流程图和N-S流程图表示
7、: 求1+2+3+100的算法。,N-S流程图:,传统流程图:,18,三种基本结构有以下共同的特点: 只有一个入口、一个出口 每个基本结构中的每一部分都有机会被执行到 结构内不存在“死循环” 2. 结构化程序设计方法 自顶向下、逐步求精、模块化,19,1.2.3 面向对象的程序设计,任何现实问题都是由一些基本事物组成,这些事物之间存在着一定的联系,在使用计算机解决现实问题的过程中,为了有效地反映客观世界,最好建立相应的概念去直接表现问题领域中的事物及事物之间的相互联系。 面向对象技术中引入了“对象”来表示事物;用消息传递建立事物间的联系。,20,1. 对象 (Object) 在自然界中,用于描
8、述某一实体。如房屋、人、汽车等。 在计算机中,将数据和处理该数据的过程、函数或子过程打包在一起而生成的新的数据类型称为对象,它是代码和数据的组合,可以作为一个单位来处理。对象可以是窗口、模块、数据库和控件等,也可以是整个应用程序。 属性 事件 方法 事件驱动,21,2. 面向对象(Object Oriented,简称OO) 面向对象基本上意味着从问题所涉及的对象入手来研究该问题 。 面向对象不仅仅是一种新的程序设计技术,而且是一种全新的设计和构造软件的思维方法。它使计算机解决问题的方式更加类似于人类的思维方式,更能直接地描述客观世界。从程序设计的角度看,面向对象代表了一种通过模仿人类建立现实世
9、界模型的方法进行软件开发的思想体系。 Visual Basic为面向对象的开发提供了许多功能,可以用于实现面向对象的设计。,22,3. 消息(Messages) 消息是用来请求对象执行某一处理或回答某些信息的要求。 某一对象可以在必要时通过传递消息请求其他对象完成某些处理工作或回答某些信息,其他对象在执行所要求的处理活动时,同样可以通过传递消息与别的对象联系。因此,程序的执行是靠在对象间传递消息来完成的。 4. 类(Class)及类的实例 将带有相似属性和行为的事物组合在一起构成一个类。一个属于某种类的特定对象称为该类的一个实例。,23,5. 封装(Encapsulation) 将数据和操作数据的函数衔接在一起,构成一个具有类类型的对象的描述称为封装。 6. 继承(Inheritance) 在面向对象的语言中,可以从一个类生成另一个类。派生类(也称子类)继承了其父类和祖先类的数据成员和成员函数。 7. 多态(Polymorphism) 多态性是一种面向对象的程序设计功能,当同样的消息被不同的对象接收时,却导致完全不同的行为,即完成不同的功能。,24,8. 抽象(Abstraction) 抽象是使具体事物一般化的一种过程,即对具有特定属性及行为特征的对象进行概括,从中提炼出
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 辅导班缴费合同协议书
- 服装设计师个人绩效协议书
- 碳排放管理员职业能力水平评价备考试题及答案
- 等腰三角形的性质课件2023-2024学年人教版八年级数学上册
- 2021-2022学年湖北省枣阳市第七中学物理高一下期末达标检测模拟试题含解析
- 2021-2022学年湖北省黄冈实验学校高一物理第二学期期末经典模拟试题含解析
- 2021-2022学年黑龙江省大庆市物理高一第二学期期末教学质量检测模拟试题含解析
- 细胞中的无机物 课件 2024-2025学年高一上学期生物人教版(2019)必修1
- 北师大版五年级上册《1.1 小数除法》同步练习卷
- 北师大版高一英语单词记忆宝典解析
- 黑色三分钟生死一瞬间事故案例具体情况分类别 一至七部
- 苏教版数学五年级上册全册教学反思(版本1)
- 苏教版小学数学五年级上册教材分析
- (完整word版)密封条模版
- 框架涵洞施工技术总结
- E时代人力资源职能的转变与发展
- 湿部化学PPT课件
- 部编人教版六年级上册语文 第二单元 口语交际课件
- 射频导管消融治疗快速心律失常指南(修订版)
- 【心得】观摩《泉州市温陵实验幼儿园东海园区》有感
- 工程变更签证单范本
评论
0/150
提交评论