VisualBasic编程及实例分析教程(上)ppt.ppt_第1页
VisualBasic编程及实例分析教程(上)ppt.ppt_第2页
VisualBasic编程及实例分析教程(上)ppt.ppt_第3页
VisualBasic编程及实例分析教程(上)ppt.ppt_第4页
VisualBasic编程及实例分析教程(上)ppt.ppt_第5页
已阅读5页,还剩231页未读 继续免费阅读

下载本文档

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

文档简介

VisualBasic编程及实例分析教程 主讲 郑海春 VisualBasic编程及实例分析教程 2 绪论 为什么要学这么课程 学习这么课程对以后的学习有何帮助 VisualBasic编程及实例分析教程 3 章节结构 第一章 VisualBasic概述第二章 VisualBasic编程起步第三章 VisualBasic语言基础第四章 VisualBasic程序结构第五章 应用程序用户界面第六章 多重窗体与多文档界面第七章 VisualBasic文件系统第八章 VisualBasic图形操作第九章 创建和使用自定义类第十章 WindowsAPI编程第十一章 程序调试与错误处理第十二章 VisualBasic数据库编程第十三章 学生信息管理系统开发实例 VisualBasic编程及实例分析教程 4 第一章VisualBasic概述 本章内容了解VisualBasic语言的发展 特点以及集成开发环境 重点掌握VisualBasic语言的集成开发环境 VisualBasic编程及实例分析教程 5 1 1VisualBasic的发展1 2VisualBasic的特点1 3VisualBasic的集成开发环境1 4小结1 5习题 本章目录 VisualBasic编程及实例分析教程 6 1 1VisualBasic的发展 VisualBasic是在Basic语言基础上发展起来的 第一代基本Basic第二代扩展Basic第三代编译Basic第四代VisualBasic VisualBasic编程及实例分析教程 7 VB6 0包括三个版本 学习版专业版企业版 VisualBasic编程及实例分析教程 8 1 2VisualBasic的特点 VisualBasic具有如下特点 可视化编程面向对象程序设计 OOP 结构化的程序设计事件驱动编程机制支持多种数据库系统的访问对象的链接和嵌入 OLE Active技术动态链接库 DLL 友好的集成开发环境完备的Help联机帮助系统有力的Internet开发工具 VisualBasic编程及实例分析教程 9 1 3VisualBasic的集成开发环境 VB6 0的运行环境 1 硬件系统要求最低为486DX 66MHz处理器 推荐Pentium或更高的处理器 较大容量硬盘 CD ROM驱动器 Windows支持的VGA或分辨率更高的监视器 计算机内存至少为64MB 鼠标或其它定点设备 2 操作系统环境MicrosoftWindowsNTServer4 0或更高版本 或MicrosoftWindowsWorkstation4 0或更高版本 或MicrosoftWindows95或更高版本 VisualBasic编程及实例分析教程 10 VB6 0的安装 VB6 0光盘安装步骤如下 将VB6 0的安装光盘放入光驱 一般插入光盘后系统会自动运行AutoPlay exe 系统启动安装向导 依照屏幕上的安装提示选择或输入后 系统进入VB6 0安装初始化设置并提示用户 选择安装类型 若选择 典型安装 则安装过程无须用户干预 若选择 自定义安装 则自动打开 自定义安装 对话框 用户需要在对话框中选择所需的组件 系统向硬盘上复制系统文件并显示安装进度 文件复制完成后 弹出 安装成功 提示画面 完成安装 VisualBasic编程及实例分析教程 11 VB6 0部件的添加或删除 要添加或删除VisualBasic部件 需要进行以下操作 重新启动安装程序 在 选择安装类型 对话框中选取 自定义安装 按钮 在 自定义安装 对话框的 选项 列表框中选定要安装的部件 或撤销选定要删除的部件 VisualBasic编程及实例分析教程 12 VB6 0帮助系统的安装 安装完VisualBasic6 0 系统会提示用户插入MSDN光盘进行帮助文件的安装 MSDN的安装方式有 典型 完全 和 自定义 三种类型 典型 安装方式只将最小的文件集复制到硬盘上 用户使用帮助文件时需要从光盘上读取MSDNLibrary帮助信息 完全 安装方式会将MSDN帮助系统的所有文件安装在本地硬盘 自定义 安装方式可以指定在本地硬盘上安装的MSDNLibrary文件 VisualBasic编程及实例分析教程 13 VB6 0的启动和退出 启动单击Windows任务栏中的 开始 按钮 选择 程序 菜单 然后打开 MicrosoftVisualBasic6 0中文版 子菜单中的 MicrosoftVisualBasic6 0中文版 程序 即可启动VB 用户也可利用Windows建立快捷方式的功能 将VisualBasic6 0程序以快捷启动图标的方式放置在桌面上 启动VB6 0时 只要在桌面上双击该图标即可 退出单击集成开发环境中的 关闭 按钮或者选择 文件 菜单中的 退出 命令时 VB会自动判断用户是否修改了工程的内容 并询问用户是否保存文件或直接退出 VisualBasic编程及实例分析教程 14 VB6 0的集成开发环境 VisualBasic编程及实例分析教程 15 VB6 0集成开发环境的定制 选择 工具 菜单下的 选项 菜单项 弹出选项设置对话框 包含 编辑器 编辑器格式 通用 可连接的 环境 和 高级 6个选项卡 编辑器 选项卡 VisualBasic编程及实例分析教程 16 编辑器格式 选项卡 VisualBasic编程及实例分析教程 17 通用 选项卡 VisualBasic编程及实例分析教程 18 可连接的 选项卡 VisualBasic编程及实例分析教程 19 VB6 0的联机帮助系统 即时输入提示在定义变量时 当输入 Dim变量名As 在 As 后的空格输入后 系统会自动弹出变量允许的类型 当输入一个正确的语句或函数名后 系统会自动将该语句或函数的语法显示在语句或函数名的下边 并用黑体字显示出第一个参数名 如图所示 输入一个对象名再输入一个句点 后 与该对象有关的方法和属性就以列表的形式提供出来 只要从方法列表或属性列表中选择想引用的一项即可 VisualBasic编程及实例分析教程 20 帮助 菜单在VB的IDE主界面上 有一个 帮助 菜单 其中的 内容 索引 和 搜索 菜单项可以分别按目录方式 按字母顺序排列的索引方式和按关键字搜索方式查找帮助信息 用户在任何时候都可以直接通过 帮助 菜单打开MSDN帮助系统 如图所示 VisualBasic编程及实例分析教程 21 从Internet上获得帮助众所周知 自从有了Internet 世界变小了 信息的传递更快了 用户若能访问Internet 就可以通过选择VB的 帮助 菜单中的 Web上的Microsoft 子菜单里的菜单项 连接到Internet 从WorldWideWeb中获得VB更详细 更新的信息 VisualBasic编程及实例分析教程 22 1 4小结 本章首先对VB的发展和特点作了概括性的介绍 然后以VB6 0中文企业版为例较为详细的叙述了VB的集成开发环境 VB因其简单易学 功能强大 开发速度快等优点 深受广大专业程序员和业余程序员的喜爱 已成为当今世界使用最广泛的程序开发语言 读者在学习本章时应把重点放在对VB特点的理解和VB集成开发环境的使用上 为后续的程序设计打好基础 VisualBasic编程及实例分析教程 23 1 5习题 一 选择题1 在VB集成环境中创建VB应用程序时 除了工具箱窗口 窗体窗口 属性窗口外 必不可少的窗口是 A 窗体布局窗口B 立即窗口C 代码窗口D 监视窗口2 当需要上下文帮助时 选择要帮助的 难题 希望出现MSDN窗口及显示所需 难题 的帮助信息 应按的键是 A HelpB F10C EscD F13 在下面各种高级语言中 不是面向对象程序设计语言的是 A VisualBasicB C C PascalD Java VisualBasic编程及实例分析教程 24 二 简答题1 VB有哪几个版本 概述VB的特点 2 如何启动和退出VB系统 3 VB系统集成开发环境包括哪几个窗口 各有什么功能 4 如何定制VB系统的集成开发环境 5 工具 菜单中 选项 命令的作用是什么 VisualBasic编程及实例分析教程 25 第二章VisualBasic编程起步 本章内容了解面向对象编程 VB的工程组织管理以及简单的应用程序开发方法 学会用VisualBasic开发一个简单的应用程序 VisualBasic编程及实例分析教程 26 2 1面向对象编程2 2工程管理2 3简单的应用程序开发2 4小结2 5习题 本章目录 VisualBasic编程及实例分析教程 27 2 1面向对象编程 基本特征封装 Encapsulation 封装的概念首先是 属性 数据 与方法 操作 的结合 构成一个不可分割的对象 整体 其次是 在这个对象中一些成员是受到保护的 它们被有效地屏蔽 以防外界的干扰和误操作 另一些成员是公共的 它们作为接口提供给外界使用 继承 Inheritance 继承意味着在已有父类的基础上创建子类时 会自动具有父类的一些特性 程序员只需在子类中添加父类中没有的属性和方法即可 继承是面向对象编程支持代码重用的重要机制 多态 Polymorphism 指在父类中定义的方法在子类继承后可以有不同的表现形式 VisualBasic编程及实例分析教程 28 基本概念对象和类对象是属性和方法相结合的统一体 类是所有具有相同属性和方法的对象的一种抽象描述 是创建对象实例的模板 类是一个型 而对象是这个型的一个实例 例如 张三 李四 王五都是人的实例 人是类 属性属性是描述对象特征的数据 是对象性质状态的反映 事件事件即对象响应的动作 方法方法是指对象本身所具有的 反映该对象功能的内部函数或过程 VisualBasic编程及实例分析教程 29 2 2工程管理 VB使用工程来管理构成应用程序的所有文件 工程组成 VisualBasic编程及实例分析教程 30 建立 打开和保存工程 新建工程 快捷键Ctrl N 选择该菜单命令可以建立一个新的工程 打开工程 快捷键Ctrl O 选择该菜单命令可以打开一个现有的工程 保存工程 用于将当前工程中的工程文件和所有的窗体 模块 类模块等文件进行保存 若为第一次保存工程 系统会自动弹出 文件另存为 对话框 提示用户输入文件名来保存文件 工程另存为 用于以一个新名字将当前工程文件加以保存 同时系统会提示用户保存此工程中修改过的窗体 模块等文件 VisualBasic编程及实例分析教程 31 添加 删除和保存文件添加文件 为了向一个工程中添加一个文件 可以从 工程 菜单中选择要添加文件类型的 添加 菜单命令 系统会自动弹出一个对话框 该对话框中有 新建 和 现存 两个选项卡 选择新建文件的模板或现存文件的名字 并选择 打开 按钮即可完成添加操作 删除文件 为了从一个工程中删除一个文件 首先在 工程资源管理器窗口 中选定要删除的文件 然后在 工程 菜单中选择相应的 移除 菜单命令 保存文件 有些情况下需要只保存某个文件而不保存整个工程时 可以在 工程资源管理器窗口 中选定欲保存的文件 再在 文件 菜单中选择相应的 保存 菜单命令 对应的快捷键为Ctrl S VisualBasic编程及实例分析教程 32 运行工程解释运行模式 VB集成开发环境提供了程序在编辑时的解释运行模式 如果只是简单的运行程序查看结果 不需要在其他环境下执行 可以采用这种模式 在VB集成开发环境中单击 运行 菜单下的 启动 命令或F5快捷键 系统会对程序代码边编译边执行 编译运行模式 VB为设计好的应用程序提供了完全编译方式 可以生成在Windows环境下脱离VB开发环境的可执行文件 提高程序的执行速度 VisualBasic编程及实例分析教程 33 2 3简单的应用程序开发 开发应用程序的一般步骤 系统分析新建工程界面设计属性设置代码编写程序运行 VisualBasic编程及实例分析教程 34 第一个VisualBasic应用实例 例2 1 设计一个超市商品零售计价的应用程序 如图所示 该应用程序由商品信息和计算结果两个框架 Frame 以及三个命令按钮 CommandButton 组成 VisualBasic编程及实例分析教程 35 系统分析功能需求 解决超市商品零售中的收款金额计算问题 数据分析 根据功能需求 程序中涉及以下两类数据 商品信息 商品单价 商品数量 本类信息属输入数据 计算结果 应付金额 累计应付金额 本类信息属输出数据 实施方法 针对以上数据 采取下面的方式完成任务 通过 文本框控件 实现商品信息输入 通过 标签控件 实现计算结果输出 通过 按钮控件 的单击事件过程实现输出数据的计算 VisualBasic编程及实例分析教程 36 新建工程 在本地硬盘上新建一个用于保存应用程序各种文件的文件夹 本实例的应用程序路径为 C GoodsPrice 启动VB 选择 标准EXE 工程 进入VB的集成开发环境 这时VB创建了一个带有单个窗体的新工程 系统默认工程为 工程1 执行 文件 菜单下的 保存工程 命令 打开 文件另存为 对话框 在 保存在 下拉列表框中将应用程序路径定位到C盘根目录下的GoodsPrice文件夹 将窗体保存到窗体文件 GoodsPrice frm 中 然后将工程保存到工程文件 Supermarket vbp 中 VisualBasic编程及实例分析教程 37 界面设计 VB的可视化开发环境使界面设计如同在画布上作画 在工具箱中选中需要的控件逐个加入到设计中的窗体上 交互式调整大小 位置即可 本程序的设计界面如图所示 VisualBasic编程及实例分析教程 38 属性设置 通过 属性窗口 可以设置设计窗体中被选控件的属性值 本实例控件属性值设置如表所示 VisualBasic编程及实例分析教程 39 代码编写 打开 代码窗口 编写事件过程 本实例包括4个事件过程 PrivateSubForm Load 窗体装载事件过程 在其中编写窗体启动时的初始化代码 使窗体定位在屏幕中心 PrivateSubcmdCompute Click 用于计算商品应付金额和累计应付金额 PrivateSubcmdClear Click 用于应用程序的复位回零 准备下一位顾客的计算 PrivateSubcmdClose Click 用于关闭窗体 退出程序 VisualBasic编程及实例分析教程 40 OptionExplicitDimmLjyfjeAsSingle 定义模块级变量 mLjyfje 累计应付金额 PrivateSubForm Load 窗体中心定位DimmLeftAsSingle mTopAsSingle 定义单元级变量mLeft Screen Width Width 2 mTop Screen Height Height 3MovemLeft mTopEndSubPrivateSubcmdCompute Click 计算商品应付金额和累计应付金额DimmDjAsSingle mSlAsInteger mYfjeAsSingle 定义单元级变量 mDJ 单价 mSl 数量 mYfje 应付金额 mDj Val txtSinglePrice Text 取商品单价值mSl Val txtAmmount Text 取商品数量值mYfje mDj mSl 计算应付金额mLjyfje mLjyfje mYfje 计算累计应付金额lblPayPrice Caption mYfje 显示应付金额lblSumPayPrice Caption mLjyfje 显示累计应付金额txtSinglePrice Text 0 单价文本框清零txtAmmount Text 0 数量文本框请零EndSub VisualBasic编程及实例分析教程 41 PrivateSubcmdClear Click 系统复位txtSinglePrice Text 0 单价清零txtAmmount Text 0 数量清零lblPayPrice Caption 0 应付金额清零 累计应付金额清零lblSumPayPrice Caption 0 mLjyfje 0EndSubPrivateSubcmdClose Click 关闭窗体 退出应用程序UnloadMeEndSub VisualBasic编程及实例分析教程 42 程序运行 运行应用程序 输入某顾客购买某类商品的 单价 和 数量 后 单击 计算 按钮 在 计算结果 中显示该顾客购买该类商品的 应付金额 和已计价的各类商品的 累计应付金额 重复以上操作 直到该顾客购买的所有商品消费金额都计算完毕 单击 复位 按钮 为下一位顾客的计价做准备 单击 关闭 按钮 退出该应用程序 VisualBasic编程及实例分析教程 43 2 4小结 本章首先介绍了面向对象的三大基本特征 封装 继承和多态 面向对象编程涉及到的相关概念 对象和类 属性 事件 和方法 为读者进行后续的面向对象编程打下基础 由于VB程序是通过工程进行组织和管理的 随后便对工程管理方面的内容进行了详细的阐述 最后 通过给出一个简单的应用程序实例的开发步骤和开发过程 循序渐进地向读者展示了如何使用VB进行应用程序的开发 同时展现了VB方便 快捷的开发特点 VisualBasic编程及实例分析教程 44 2 5习题 一 选择题1 下面4项中不属于面向对象系统三要素的是 A 变量B 事件C 属性D 方法2 在VB环境中 工程文件的扩展名是 A frmB basC vbpD frx3 不论何对象 都具有 属性 A TextB NameC ForeColorD Caption4 双击窗体中的对象后 VB将显示的窗口是 A 工具箱B 项目 工程 窗口C 代码窗口D 属性窗口 VisualBasic编程及实例分析教程 45 二 简答题1 什么是对象 什么是对象的属性 方法和事件 2 一个工程可能包含哪些类型文件 3 简述使用VisualBasic开发应用程序的一般步骤 4 SDI界面和MDI界面有何主要区别 5 怎么设置VB的IDE环境 使应用程序在设计中变量必须 先声明 后使用 三 操作题设计一个窗体 其中包含一个标签和两个命令按钮 标题分别为 欢迎使用 和 退出 程序运行后 单击 欢迎使用 命令按钮 标签上显示 欢迎使用VisualBasic6 0 字样 单击 退出 命令按钮 结束该应用程序的运行 VisualBasic编程及实例分析教程 46 第三章VisualBasic语言基础 本章内容了解VisualBasicVB的编码规范和基本语法 使学生具备初步的编码能力 为熟练运用VB进行应用程序的开发打下基础 VisualBasic编程及实例分析教程 47 3 1VB语言编码规范3 2数据类型3 3常量与变量3 4运算符和表达式3 5常用内部函数3 6小结3 7习题 本章目录 VisualBasic编程及实例分析教程 48 3 1VB语言编码规范 VisualBasic是在Basic语言基础上发展起来的 命名规则必须以字母或汉字开头 字母不区分大小写 不可以包含嵌入的句号或者类型声明字符 规定数据类型的特殊字符 不能超过255个字符 控件 窗体 类和模块的名称不能超过40个字符 一个汉字相当于一个字符 不能和VB中系统使用的关键字同名 采用容易理解的名称进行命名 VisualBasic编程及实例分析教程 49 VB代码中不区分字母的大小写对于VB中的关键字 首字母总被转换成大写 其余字母被转换成小写 若关键字由多个英文单词组成 它会将每个单词首字母转换成大写 对于用户自定义的变量 过程名 VB以第一次定义为准 以后输入时自动向首次定义的转换 VisualBasic编程及实例分析教程 50 语句书写自由在同一行上可以书写多句语句 语句间用冒号 分隔 单行语句可分若干行书写 在本行后加入续行符 空格和下划线 VisualBasic编程及实例分析教程 51 必要的程序注释注释以Rem开头 但一般用半角单引号 引导注释内容 注释内容可以直接出现在语句的后面 也可以使用 编辑 工具栏的 设置注释块 解除注释块 按钮 使选中的若干行语句 或文字 增加注释或取消注释十分方便 VisualBasic编程及实例分析教程 52 格式化及缩排 在程序代码书写中 语句前的空格并不影响程序的运行 清晰 易于维护的程序应该采用缩进编排格式 例 格式化缩排示例 PublicSubShowErr erAsErrObject psAsString 功能 显示错误及其发生位置WitherIf Number0ThenMsgBox 错误号 Number vbCrLf 错误描述 Description vbCrLf 位置 psEndIfEndWithEndSub VisualBasic编程及实例分析教程 53 显示变量声明 VB支持隐式声明变量 即在使用变量之前不必先声明 而直接在程序中进行使用 然而这样做会引发一些潜在的错误 为了避免这类错误的发生 推荐的做法是使用显示变量声明 即在类模块 窗体模块或标准模块的声明段中加入语句 OptionExplicit VisualBasic编程及实例分析教程 54 同时声明多个同类型变量 熟悉C语言的用户知道 当声明多个同一类型的变量时 可以在一条语句中一次为这几个变量指定数据类型 这在VB中是不允许的 必须在 Dim 语句中为每个变量都指定数据类型 如果在声明中没有说明数据类型 则变量的数据类型为Variant 它可在不同场合代表不同数据类型 VB自动完成各种必要的数据类型转换 VisualBasic编程及实例分析教程 55 3 2数据类型 VB不但提供标准数据类型 还允许自定义数据类型 标准数据类型数值数据类型 Numeric 逻辑数据类型 Boolean 日期数据类型 Date 字符数据类型 String 对象数据类型 Object 变体数据类型 Variant VisualBasic编程及实例分析教程 56 自定义数据类型Type自定义类型名元素名As类型名 元素名As类型名EndType VisualBasic编程及实例分析教程 57 3 3常量与变量 常量 1 系统内部定义的常量2 用户自定义的常量Const常量名 As类型 表达式 VisualBasic编程及实例分析教程 58 变量 声明变量 显示变量声明语句的格式 Public Private Dim Static变量名 As类型名 显示变量声明语句中作用域 全局变量 模块变量 普通局部变量 静态局部变量 变量赋值变量引用 VisualBasic编程及实例分析教程 59 3 4运算符和表达式 运算符 1 算术运算符2 字符串运算符3 关系运算符4 逻辑运算符表达式 表达式组成表达式的书写规则不同数据类型的转换复合表达式的运算顺序 VisualBasic编程及实例分析教程 60 3 5常用内部函数 数学函数 VisualBasic编程及实例分析教程 61 转换函数 VisualBasic编程及实例分析教程 62 字符串函数 VisualBasic编程及实例分析教程 63 VisualBasic编程及实例分析教程 64 VisualBasic编程及实例分析教程 65 日期与时间函数 VisualBasic编程及实例分析教程 66 格式输出函数 Format 表达式 格式字符串 数值格式化日期和时间格式化字符串格式化Print数据输出方法 对象名 Print 输出列表 VisualBasic编程及实例分析教程 67 用户交互函数 InputBox函数 InputBox 提示 标题 缺省 x坐标 y坐标 例 用InputBox函数进行学号的输入 VisualBasic编程及实例分析教程 68 2 InputBox函数 变量 MsgBox 提示 按钮 标题 例3 22 设计MsgBox对话框 VisualBasic编程及实例分析教程 69 类型测试函数 TypeName 变量名 VarType 变量名 IsNumeric 表达式 IsDate 表达式 IsArray 变量名 IsNull 表达式 IsObject 变量名 VisualBasic编程及实例分析教程 70 3 6小结 本章首先介绍了VB语言的编码规范 为读者养成良好的编程习惯打下基础 数据是有类型的 VB的数据类型可分成标准数据类型和自定义数据类型两个大类 其中的标准数据类型是VB提供给用户直接使用且不需用户定义的数据类型 而自定义数据类型在使用之前用户必须要用VB提供的Type语句进行数据类型的定义 随后 对常量和变量的概念 定义及使用方法进行了详细的阐述 和其他语言一样 VB中也有丰富的运算符 通过运算符和操作数组合成表达式 实现程序编制中所需的大量操作 最后 对VB的常用内部函数以表格的形式分类进行了介绍 本章内容是VB编程的语言基础 读者应重点掌握 VisualBasic编程及实例分析教程 71 3 7习题 一 选择题1 假设X 3 Y 6 Z 5 则表达式 X 2 Y Z的值是 A 1B 5C 3D 2 42 假设A 3 B 7 C 2 则表达式A BORB C的值是 A TrueB FalseC 表达式错误D 不确定3 在表达式y InputBox a b c 中 b为输入函数对话框的 A 标题B 提示C 预设值D 帮助文件名4 InputBox函数返回值的类型为 A 数值B 字符串C 变体D 数值或字符串 视输入的数据而定 VisualBasic编程及实例分析教程 72 5 在窗体上画一个命令按钮 然后编写如下事件过程 PrivateSubCommand1 Click a InputBox EntertheFirstinteger b InputBox EntertheSecondinteger Printb aEndSub程序运行后单击按钮 先后在两个输入对话框中输入456和123 则输出结果是 A 579B 123C 456D 1234566 执行下面的语句后 所产生的信息框的标题是 a MsgBox AAAA BBBB 5 A BBBBB 空C AAAAD 出错 不能产生信息框7 下面哪一个是日期型常量 A 2 1 99 B 2 1 99C 2 1 99 D 2 1 99 VisualBasic编程及实例分析教程 73 8 在一个语句内写多条语句时 用来分隔每条语句的符号是 A B C D 9 下面4项中合法的变量名是 A X yzB 123abcC integerD X Y10 下面4项中不合法的整常数是 A 100B O100C H100D 10011 下面4项中合法的字符串常量是 A ABC B ABC C ABC D ABC12 下面4项中合法的单精度型变量是 A num B sum C xinte D mm VisualBasic编程及实例分析教程 74 13 数学关系3 x 10表示成正确的VB表达式为 A 3 x 10B 3 xANDx 10C x 3ORx 10D 3 xAND 1014 Rnd函数的值不可能为 A 0B 1C 0 1234D 0 000515 已知A 12345678 则表达式Val Left A 4 Mid A 4 2 的值为 A 123456B 123445C 8D 616 表达式DateDiff y 12 30 1999 1 13 2000 的结果是 A 1B 11C 14D 9917 PrintDateAdd m 1 1 30 2000 语句显示的结果是 A 00 2 29B 00 2 28C 00 2 30D 00 1 3118 表达式Len 123程序设计ABC 的值是 A 10B 14C 20D 17 VisualBasic编程及实例分析教程 75 二 填空题1 与下列数学式子cos x sin x 1 x为弧度 对应的VB表达式是 2 与下列e2 2数学式子对应的VB表达式是 3 在VB中 字符串常量要用 日期 时间型常量要用 4 X My Y Book Z X Y 则Z的值为 5 把整型数1赋给一个逻辑型变量 则逻辑变量的值为 6 把逻辑值True赋给一个整型变量之后 此变量的值会变为 7 默认情况下 所有未经显式声明的变量均被视为 类型 如果要强制变量的声明 应在模块的声明段使用 语句 8 表达式Ucase Mid abcdefgh 3 4 的值是 9 Trim ASCII 的结果是 RTrim ASCII 的结果是 LTrim ASCII 的结果是 VisualBasic编程及实例分析教程 76 三 简答题1 VB中有几种表达式 表达式的值分别为什么数据类型 2 声明对象变量后 就可以通过对象变量引用对象了吗 使用对象变量的优点是什么 3 什么是注释 VB程序的注释符是什么 为什么要使用注释 注释语句能执行吗 4 VB中续行符是什么 为什么要续行 5 VB中未赋值变量的系统默认值是什么 四 编程题1 已知三角形三条边的长度为a b c 计算并显示三角形面积 公式为 面积 其中 S a b c 2 2 随机产生一个3位正整数 然后逆序输出 例如 产生246 输出642 VisualBasic编程及实例分析教程 77 第四章VisualBasic程序结构 本章内容掌握VisualBasic语言的结构化程序设计的基本结构和控制语句 掌握数组 过程的使用 掌握VisualBasic语言的模块化编程思想 VisualBasic编程及实例分析教程 78 4 1算法4 2三种基本结构4 3其他控制语句4 4数组4 5过程4 6模块化编程4 7小结4 8习题 本章目录 VisualBasic编程及实例分析教程 79 4 1算法 算法的概念 为解决某个问题所采用的方法与步骤称为 算法 算法的特性有穷性 一个算法必须在执行有穷多个计算步骤后终止 确定性 一个算法给出的每个计算步骤 必须是有精确定义的 独一无二的 有效性 算法中的每一个步骤必须有效的执行 并能得到确定结果 输入 一个算法中可以没有输入 也可以有一个或多个输入信息 这些输入信息是算法所需的初始数据 输出 一个算法应有一个或多个输出 一个算法得到的结果 中间结果或最后结果 就是算法的输出 没有输出的算法是没有意义的 VisualBasic编程及实例分析教程 80 算法的描述 1 流程图法 基本流程图符号 三种基本结构流程图 VisualBasic编程及实例分析教程 81 算法的描述 2 N S图 三种基本结构N S图 VisualBasic编程及实例分析教程 82 4 2三种基本结构 顺序结构 选择结构和循环结构 顺序结构 顺序结构是一种线性结构 顺序结构中 程序语句按其在程序中出现的顺序 依次执行 直至执行完所有语句行的语句或执行End 结束 语句为止 例 利用顺序结构的特点 在窗体上绘制图案 VisualBasic编程及实例分析教程 83 VisualBasic编程及实例分析教程 84 选择结构单分支If Then语句 格式1 块形式 格式2 单行形式 IfThenIfThenEndIf VisualBasic编程及实例分析教程 85 双分支If Then Else语句 格式1 块形式 IfThenElseEndIf格式2 单行形式 IfThenElse VisualBasic编程及实例分析教程 86 多分支If Then ElseIf语句 IfThen ElseifThen ElseifThen Else EndIf VisualBasic编程及实例分析教程 87 If语句的嵌套 IfThen IfThen Else EndIf Else IfThen Else EndIf EndIf VisualBasic编程及实例分析教程 88 SelectCase语句 SelectCaseCaseCase Case CaseElse EndSelect VisualBasic编程及实例分析教程 89 IIf函数 IIf函数是If Then Else结构的简写版 可用来执行简单的条件判断 其格式为 IIf 条件 当条件为True时的值 当条件为False时的值 VisualBasic编程及实例分析教程 90 循环结构For Next循环 For循环变量 初值To终值 Step步长 循环体 ExitFor 循环体 Next 循环变量 VisualBasic编程及实例分析教程 91 While Wend循环Do Loop循环 While条件 循环体 Wend 格式1 Do While Until 循环体 ExitDo 循环体 Loop格式2 Do 循环体 ExitDo 循环体 Loop While Until VisualBasic编程及实例分析教程 92 循环的嵌套 在一个循环体内又包含另一个完整的循环结构 称为循环的嵌套 而内嵌的循环中还可以嵌入循环 这就是多重循环 在VB中 对嵌套的层数没有限制 可以嵌套任意多层 VisualBasic编程及实例分析教程 93 4 3其他控制语句 1 GoTo语句 当程序执行到GoTo语句时 会无条件地转移到过程中指定的行并继续往下执行 其语法如下 GoTo2 Exit语句 Exit语句用于退出Do Loop For Next Function或Sub代码块 对应的语法分别是ExitDo ExitFor ExitFunction ExitSub 3 End语句 End用于结束一个程序的运行 它可以放在任何事件过程中 VisualBasic编程及实例分析教程 94 4 With语句With语句块EndWith5 DoEvents语句 循环会完全占用计算机资源 导致其他程序无法同时正常运行 甚至自身程序也无法响应用户操作 为了防止此类事情发生 VB有一个DoEvents命令 此命令的功能是将程序运行权暂时交出 给其他正在运行的程序一个继续运行的机会 等Windows操作系统完成一个 轮回 再次将运行权交给本程序时 再继续循环 VisualBasic编程及实例分析教程 95 4 4数组 数组的概念 数组是一组具有相同数据类型的数据的有序集合 数组有名称 上界与下界 维数和数据类型等属性 固定数组数组定义 Public Private Dim Static数组名 下界1To 上界1 下界2To 上界2 As数据类型 一维数组 一维数组是指只需一个下标就可以惟一地确定一个元素的数组 DimA 5 AsSingle VisualBasic编程及实例分析教程 96 二维数组 二维数组是指需要两个下标来惟一地确定一个元素的数组 DimB 5 6 VisualBasic编程及实例分析教程 97 变体类型数组 一个数组中的元素只能存放定义时指定类型的数据 但是 Variant类型数组比较特殊 可以存放不同类型的数据 此外 Variant类型数组的元素还可以引用其他类型的数组 测试数组上 下界函数测试数组某一维下界的函数 Lbound 数组 维 测试数组某一维上界的函数 Ubound 数组 维 VisualBasic编程及实例分析教程 98 动态数组动态数组的建立 声明一个只有空括号的数组 语法为 Public Private Dim Static动态数组名 As数据类型 声明后 动态数组还没有任何元素 要使用它 必须根据具体要求使用ReDim语句来重新定义动态数组的维数与下标上下界 语法为 ReDim Preserve 动态数组名 下界1To 上界1 下界2To 上界2 As数据类型 VisualBasic编程及实例分析教程 99 数组清除语句 Erase 可以作用于动态数组和固定数组 格式 Erase数组名 数组名 功能 对固定数组 Erase语句将重新初始化固定数组的元素 对动态数组 Erase语句将释放动态数组所占用的内存空间 在下次引用该动态数组之前 程序必须使用ReDim语句来重新定义该数组变量的维数及大小 Array函数 Array函数可方便地对数组整体赋值 但它只能给Variant变量或仅由括号括起来的Variant动态数组赋值 赋值后的数组大小由赋值的个数决定 VisualBasic编程及实例分析教程 100 控件数组什么是 控件数组 控件数组是指在同一个窗体上 拥有相同对象名 相同事件过程的一组相同类型的控件 例如Label1 0 Label1 1 Label1 2 Label1 3 建立 控件数组 的方法 在设计时建立 在运行时添加控件数组元素 VisualBasic编程及实例分析教程 101 4 5过程 事件过程 对象事件在用户或系统发出动作时被触发 事件响应时执行的过程就是事件过程 如Form Click 通用过程 通用过程是用户根据自己需要定义 供其它程序多次调用的过程 通用过程按是否有返回值 分为子过程 Sub过程 和函数 Function过程 两种 属性过程 属性过程可以用来返回和设置属性的值 还可以设置对象的引用 VisualBasic编程及实例分析教程 102 子过程 Sub过程 Sub过程语句 Static Private Public Sub过程名 形式参数列表 语句块 ExitSub 语句块 EndSub 例 在窗体模块中编写一个计算矩形面积的子过程 VisualBasic编程及实例分析教程 103 Sub过程的建立 子过程通常建立并保存在窗体模块 frm 和标准模块 bas 中 建立的方法有两种 一种是打开 代码窗口 直接按定义的形式输入 另一种是打开 代码窗口 通过选择 工具 菜单中的 添加过程 命令 出现 添加过程 对话框 输入过程 名称 选择过程 类型 及作用 范围 单击 确定 按钮后得到一个过程框架 用户可以根据需要在框架中输入形参表和过程体 添加过程 对话框使用对话框添加的子过程 VisualBasic编程及实例分析教程 104 Sub过程的调用 调用Sub过程的语句有两种形式 第一种形式 Call过程名 实际参数列表 第二种形式 过程名 实际参数列表 VisualBasic编程及实例分析教程 105 函数 Function过程 Function过程语句Function过程的建立和调用第一种形式 Call函数名 实际参数列表 第二种形式 函数名 实际参数列表 Static Private Public Function函数名 形式参数列表 As数据类型 语句块 函数名 表达式 ExitFunction 语句块 函数名 表达式 EndFunction VisualBasic编程及实例分析教程 106 参数传递传值与传址 传值 传值 是将实参的值复制给形参 实参与形参断开了联系 被调用过程中的操作是在形参自己的存储单元中进行 当过程调用结束时 这些形参所占用的存储单元也同时被释放 使用传值方式 则形参的前面必须加上ByVal关键字 传址 传址 是将实参的内存地址传递给形参 即形参与实参使用相同的地址单元 因此在被调用过程中对形参的任何操作都变成了对相应实参的操作 因此实参的值就会随形参的改变而改变 传址方式是默认的参数传递方式 可以在形参的前面明确写明ByRef关键字 当然也可省略 VisualBasic编程及实例分析教程 107 数组参数的传递 VB允许把数组作为实参传递到过程中 如前所述 数组只能通过传址方式进行传递 可选参数 通过在形参前面使用Optional关键字可以把形参设定为 可选参数 如果一个过程的某个形参被设定为可选参数 则在调用此过程时就可以不提供对应于这个形参的实参 并且形参列表中此形参之后的所有形参也必须使用Optional关键字设为可选参数 Optional关键字可以与ByVal ByRef关键字同时修饰一个形参 对象型参数 在声明通用过程时 可以使用Object Control Form TexBox CommandButton等关键字把形参定义为对象型 VisualBasic编程及实例分析教程 108 递归调用 递归调用是指子过程或函数自己调用自己 在日常生活中 人们常常要重复做某一件事直到这件事达到一定的要求为止 这称为递归法 在应用程序设计中 有时利用递归法 递归调用 可以使程序的设计更为简便和易读 递归法是一种特殊的循环结构 常常把它应用于数值的分析和计算问题中 VisualBasic编程及实例分析教程 109 4 6模块化编程 VisualBasic编程及实例分析教程 110 4 7小结 算法是程序设计的灵魂 初学者一定要充分认识到它的重要性 养成编写程序之前 首先设计好算法的习惯 VB是面向对象的程序设计语言 但并不等于抛弃结构化程序设计方法 实际上 在VB的程序设计中 具体到每个对象的事件过程或模块中的每个通用过程 还是要采用结构化的程序设计方法 结构化程序设计的三种基本结构是 顺序结构 选择结构和循环结构 实际应用中经常要处理同一性质的成批数据 这就要使用数组 数组是一组具有相同数据类型的数据的有序集合 读者要重点掌握固定数组 动态数组及控件数组的概念和使用 此外 还介绍了两类用户自定义通用过程 在使用通用过程时 最重要的是掌握调用者与被调用者之间的参数传递 这种传递主要是通过形参与实参的结合来实现的 有传值和传地址两种方式 最后 对VB的模块化编程思想作了一个总结 VisualBasic编程及实例分析教程 111 4 8习题 一 选择题1 下面的哪条语句可以正确的声明一个动态数组 A PrivateA n AsIntegerB DimA AsIntegerC DimA AsIntegerD DimA 1Ton 2 Sub过程与Function过程最根本的区别是 A 前者可使用Call或直接使用过程名调用 后者不可以B 前者无返回值 但后者有C 后者可以有参数 前者不可以D 两种过程参数的传递方式不同3 在声明一个函数时 不可能用到的关键字是 A ExitB AsC SubD End VisualBasic编程及实例分析教程 112 4 VB提供了结构化程序设计的3种基本结构 这3种基本结构是 A 递归结构 选择结构 循环结构B 选择结构 过程结构 顺序结构C 过程结构 输入 输出结构 转向结构D 选择结构 循环结构 顺序结构5 下面正确的赋值语句是 A x y 30B y r rC y x 30D 3y x6 要想从子过程调用后返回两个结果 下面子过程语句说明合法的是 A Subf2 ByValn ByValm B Subf1 n ByValm C Subf1 n m D Subf1 ByValn m 7 假定有以下循环结构DoUntil条件循环体Loop则正确的描述是 A 如果 条件 是一个为0的常数 则一次循环体也不执行B 如果 条件 是一个为0的常数 则无限次执行循环体C 如果 条件 是一个不为0的常数 则至少执行一次循环体D 不论 条件 是否为 真 至少要执行一次循环体 VisualBasic编程及实例分析教程 113 8 设a 6 则执行x IIf a 5 1 0 后 x的值为 A 5B 6C 0D 19 执行下面的程序段后 x的值为 x 5Fori 1To20Step2x x i 5NextiA 21B 22C 23D 24二 简答题1 什么是过程 它包括哪两大类 分别具有什么相同点和不同点 2 什么是算法 它具有哪些

温馨提示

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

最新文档

评论

0/150

提交评论