




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
计算机技术基础课VisualBasic程序设计任课教师:AAAAAAAAA
电子邮件:BBBBBBBBBBBB
教学网站:CCCCCCCCCCCC《VisualBasic程序设计教程》
(第2版)
林卓然编著
电子工业出版社出版
2007年7月
书号:
ISBN7-121-04056-6
定价:
24元
退出《VisualBasic程序设计》课程介绍程序设计语言常用种类教学目的关于VB教学内容学习方法教学目的教学内容教学安排《计算机程序设计》是一门计算机技术基础课程。
工具性:掌握一种计算机开发工具,解决实际问题
基础性:为学习后继课程打下良好基础
抽象性和逻辑性:培养抽象、逻辑思维能力
提高计算机的应用能力教学目的
1.C及C++系列:C,C++(C++Builder,VC++,VC++.Net)
2.Basic系列:QBASIC,VB
,3.数据库管理系统
VisualFoxPro、PowerBuilder、Oracle等
4.Java:Sun公司研制,开发网络应用软件,从C发展而来
5.Net:微软公司研制支持Web服务的软件开发环境,采用分布式计算技术。
包含,,VC++.Net,等程序设计语言常用种类
目前世界上两大主流软件一是Java,二是Net
本课程以VisualBasic
为语言背景
VB是从原有的BASIC(最近版本是QBASIC)发展起来的,它的语法简单,但功能强大。
VB用于开发Windows环境下的应用程序
VB语言采用先进的程序设计方法(面向对象、可视化),且简单易学
VB近年来得到迅速发展和应用;成为普通用户首选的程序设计语言关于VisualBasic(简称VB)关于VB
目前可供选择的程序设计语言很多,如C++、Java等,但不可否认的是,VB是目前最通用、最易于使用的编程语言之一。美国微软公司始终对Basic语言充满信心,积极推动Basic语言的发展。
1975年比尔.盖茨为Altair微型机配置了一个只占4KB的BASIC解释程序。
89年在庆祝BASIC语言25周年时,盖茨说:
“我至今仍是BASIC的狂热爱好者”,“我已经向程序员们挑战,为解决任一问题他们可以选用任何工具编程,我打赌,我用BASIC会更快地编出同样的程序”
盖茨说过:“如果您有任何解决不了的问题,都可以给我拿来,我都可以用Basic来解决。”比尔.盖茨微软董事会主席关于VB
当Windows操作系统问世不久,人们在开发Windows应用程序时遇到了很大困难时,就是VB改变了这种状况。盖茨说:VB是“用Basic语言开发Windows应用程序最强有力的工具”、“令人震惊的新奇迹”。教学目的教学内容教学安排
VB程序设计基础输入输出选择程序设计循环程序设计数组过程数据文件程序的调试标准控件的使用数据库编程教学内容
学习方法上机实习学习者看书听课作业练习VB程序设计课是一门实践性很强的课程。要多练,并要善于模仿。《VisualBasic程序设计教程》
(第2版)
林卓然编著
电子工业出版社出版
2007年7月
书号:
ISBN7-121-04056-6
定价:
24元第1章认识VisualBasic
学习一门程序设计语言,首先要了解其特点和开发环境。
VB程序设计思想和编程方法与传统编程语言有着重大差别。
第1章认识VisualBasic
本章主要内容
退出VB概述设计VB应用程序的初步认识对象与事件的基本概念VB的集成开发环境工程的管理
VB概述
1.1.1VB的发展过程
Windows的产生,推动了Windows应用程序的开发基本BASIC→结构化BASIC→可视化BASIC→网络化BASIC(VB.Net)1.1.2VB的特点
1.可视化的设计平台
2.事件驱动的编程机制
3.结构化的设计语言
4.友好的VB集成开发环境
5.强大的功能
1.启动VB
按运行一般应用程序的方法来启动它()。创建一个默认的“标准EXE”类型的VB应用程序
VB集成开发环境
2.退出VB1.1.3VB的启动和关闭
窗体编辑器工具箱窗体属性窗口窗体布局窗口工程资源管理器窗口
1.2.1设计VB应用程序的步骤大致分为两大部分工作:
设计用户界面和编写程序代码
设计VB应用程序的大致步骤如下:
(1)建立用户界面的对象;用户界面最重要对象是窗体(即窗口)所有Windows应用程序都是以“窗口”的形式运行的,其他控件对象都建立在窗体上。
(2)设置对象的属性值;
(3)编写程序代码,建立事件过程;
(4)保存和运行应用程序
1.2对VB应用程序设计的初步认识
1.2.2第一个简单程序
例
在运行中当用鼠标单击窗体时,窗体上显示出“欢迎您来到VB世界!”
先看运行效果例1.1窗体Form1运行中,当用鼠标单击窗体时,窗体上显示开始运行时显示窗体程序设计步骤
(1)创建窗体在系统默认提供的窗体上输出若干文字
(2)编写程序代码,建立事件过程
(3)保存工程保存窗体文件(.frm)和工程文件(.vbp)
(4)运行程序执行“启动”命令,即用解释方式运行程序执行“结束”命令,即可结束程序的运行窗体Form1
过程框对象框标题代码窗口Private表示局部使用Sub…EndSub定义一个过程程序代码过程名格式:对象名_事件名表示单击窗体时执行这个过程Print表示在窗体上显示
例
设计一个应用程序,由用户输入一个数,计算并输出该数的平方数。
先看运行效果1.2.3第二个简单程序例文本框Text1用于输入1个数文本框Text2用于输出计算结果单击时执行计算单击时结束执行
(1)创建窗体(应用程序用户界面)(2)在窗体上添加界面的控件
(3)设置对象属性程序设计步骤
命令按钮Command2标签Label1标签Label2窗体Form1文本框Text1文本框Text2命令按钮Command1(4)编写程序代码,建立事件过程
例的程序代码(图1.8)
程序说明:Dim语句;数据类型Single(单精度);Val函数;语句“Text2.Text=x*x”的作用单击按钮Command1时执行单击按钮Command2时执行定义单精度类型的变量x取文本框Text1中的内容,转换为数值并存入x结束求x的平方,显示在文本框Text2中(5)保存工程
(6)运行程序
单击工具栏上的“启动”按钮,即可采用解释方式来运行程序。单击“结束”按钮,可以启动事件过程Command2_Click,则执行End语句来结束程序的运行。
1.3对象和事件的基本概念
1.3.1对象及其属性、方法和类
1.对象
对象是VB系统中的基本运行实体,如窗体(Form)、标签(Label)、文本框(TextBox)、命令按钮(CommandButton)等。对象是一组程序代码和数据的集合。
2.容器对象其他对象的载体或容器。如窗体
窗体对象又是容器命令按钮对象VB程序设计以对象为基础对象和事件的基本概念
3.
属性对象的特征。不同的对象有不同的属性。每一个对象都有一组特定的属性。例如文本框的属性有Name(名称)、Text(文本内容)、Maxlength(最大字符数)、Multiline(多行)等。属性默认值。如文本框颜色的默认值为白色文本框的属性名称:Name如Text1内容:Text表示为颜色:Color表示为……设置对象属性的常用两种方法
(1)
在属性窗口中设置
(2)
在程序运行中更改对象的属性(动态修改)
[对象名.]属性名=属性值
示例:
Text1.Text="VB程序设计"
´设置的文本框的内容
Text1.Color=RGB(255,0,0)
´设置的文本框的颜色
方法是对象能够执行的动作。它是对象本身内含的函数或过程,用于完成某种特定的功能一般格式:
[对象名.]方法名[(参数)]
示例:
Form1.Cls´消除窗体Form1上的内容
Print"VisualBasic"´在当前窗体上显示4.方法
省去当前窗体名5.类
一组用来定义对象的相关属性和数据的集合类是创建对象的模型,对象则是按模型生产出来的成品
工具箱中的每一个控件都代表一个类,当将这些控件添加到窗体上时就创建了相应的对象。由同一个类创建的对象(如Command1、Command2等)具有由类定义的公共的属性、方法和事件。
工具箱用类生成对象对象具有类的特征类具有封装性隐藏其内部的复杂性可视化提高程序的可重用性和可维护性窗体1.3.2事件、事件过程及事件驱动
1.事件由系统预先设置好的、能被对象识别的动作。例如:鼠标的移动(MouseMove)、单击(Click)和双击(DblClick),窗体的装载(Load)等。每一种对象能识别的事件是不同的
2.事件过程事件过程的语法格式如下
Sub对象名_事件名()
处理事件的程序代码
EndSub命令按钮可以识别单击(Click),但不能识别双击(DblClick)命令按钮的单击事件过程
SubCommond1_Click()……EndSub3.
事件驱动
当某个事件(一般由用户操作来触发)发生时,系统就会自动执行此事件的事件过程
当用户单击该命令按钮时,系统就会自动执行相应的事件过程命令按钮的单击事件过程
SubCommond1_Click()……EndSub事件过程名:对象名_事件名
示例
命令按钮Command1的单击(Click)事件过程为:
PrivateSubCommand1_Click()Forml.Caption="在窗体上画圆"
´以圆心(2400,1500),半径为800画圆
Forml.Circle(2400,1500),800EndSub示例1设计界面运行界面对象(命令按钮)事件驱动运行时单击命令按钮,即触发了Click事件,系统就会自动执行事件过程Command1_Click中的程序代码程序代码(事件过程)
PrivateSub对象名_事件名()
处理事件的程序代码
EndSub指定什么情况下执行这个过程(即执行的条件)当指定对象上发生指定事件时执行本过程;由系统自动执行处理些什么通过程序代码来实现Sub…EndSub定义一个过程再次认识事件过程格式本过程的作用范围
Private:局部(如当前窗体)
Public:全局(如多个窗体)()为一对圆括号这是简单格式;对于复杂情况,圆括号内还有参数事件驱动方式
事件过程要经过事件的触发才能被执行,这种工作模式称为事件驱动方式由事件控制整个程序的执行流程(以下是一个示例)
SubCommond1_Click()……EndSubSubCommond2_Click()……EndSubSubCommond3_Click()……EndSub单击该命令按钮,系统就会自动执行相应的事件过程Commond1_Click()用户界面(窗口)程序代码(一系列过程)单击该命令按钮,系统就会自动执行相应的事件过程Commond2_Click()单击该命令按钮,系统就会自动执行相应的事件过程Commond3_Click()
VB的集成开发环境
集VB程序的设计、编辑、编译和调试于一体,集中提供程序开发所需要的各种工具、窗口和方法
1.4.1主窗口
由标题栏、菜单栏和工具栏组成
VB工作状态(模式):设计、运行和中断(Break)1.4.2工具箱和控件VB工具箱中包含了各种VB标准控件。包含一个指针和20个标准控件(表1.1)
控件就像盖房子使用的门、窗、砖瓦等,都是现成部件,只要到现场组合就可以了。
1.在窗体上添加一个控件
2.控件的缩放、移动、复制和删除
3.选定多个控件
4.控件的布局工具箱
1.4.3其他窗口
1.窗体编辑器窗口
2.工程资源管理器窗口
3.属性窗口
4.代码窗口
5.窗体布局窗口
1.5工程的管理
VB是通过工程(Project,也称为项目)来管理应用程序中的所有不同文件的。
1.5.1工程中的文件(常用)工程文件.vbp
窗体文件.frm
标准模块文件.bas1.5.2创建、打开和保存工程创建工程;打开工程;保存工程;关闭工程
说明:一个应用程序可以包括多个工程。但对于初学者来说,一般只用到单个工程,因此通常不必执行“添加工程”命令
1.5.3添加、删除和保存文件
添加文件、删除文件和保存文件1.5.4生成可执行文件
两种运行程序的方式:解释方式;编译方式
执行“文件”菜单中的“生成....exe”命令
将例的应用程序“编译”成可执行文件,然后进入Windows环境,直接运行该程序文件
示例2“时钟”程序
示例2一个较为复杂的程序
第1章习题讨论
退出单选题多选题编程题单选题(补充)1.在VB中,编写程序代码应在____中进行。
A.对象窗口B.属性窗口
C.代码窗口D.窗体布局窗口
2.VB有三种工作状态,其中不包括______。
A.编辑B.设计C.运行D.中断CA多选题(补充)
3.在设计阶段中,从代码窗口切换到窗体窗口,可以采用
A.双击代码窗口B.单击代码窗口
C.单击工程资源管理器窗口中的“查看对象”按钮
D.选择“视图”菜单中的“对象窗口”命令
E.单击工程资源管理器窗口中的“切换文件夹”按钮CD编程题2.在窗体上建立一个标签,当单击窗体时,在标签上显示“你单击了窗体”;当双击窗体时,在标签上显示“你双击了窗体”(第23页)
(1)创建用户界面和设置对象属性
(2)编写程序代码(2个动作或事件)
(2个事件过程)
PrivateSub="你单击了窗体“
EndSubPrivateSub="你双击了窗体"EndSub____?____Form_Click()____?____Form_DblClick()_____?________?____编程题单击时触发双击时触发
写事件过程名时窗体对象名均为Form,而不写成Form1、Form2…对象的属性第2章程序设计基础
常量、变量、函数及表达式是构成VB应用程序的基本元素,也是程序设计的重要基础知识。学习和熟悉掌握这些元素,对以后的程序设计是十分重要的。第2章
程序设计基础
程序中的大部分实际工作是采用程序代码来处理的任何一门程序设计语言都有一套严格的编程规定
本章主要内容
退出数据类型常量与变量表达式常用内部函数
数据类型
在使用计算机来处理数据时,会遇到各种不同类型的数据。例如,一个人的姓名是由一串文本(字符)组成,成绩、年龄和体重都是一个数值,而是否大学毕业则是一个逻辑值,等等。为了更好地处理各种各样的数据,VB定义了多种数据类型
数值型
数据类型字符型逻辑型日期型对象型变体型整数:整型/长整型字节型浮点型:单/双精度货币型数值型数据(1)整型(Integer)和长整型(Long)
不带小数部分的数,表示正整数、负整数和零
整型数:-32768~32767
长整型数:-2147483648~2147483647
(2)字节型(Byte)
字节型数可以表示无符号的整数
0~255
(3)单精度型(Single)和双精度型(Double)
浮点数。表示带有小数部分的数
表示数的范围大,但有误差。
如超出某个表示范围,则用科学记数法
例如:4.53E8(4.53×108),,
(4)货币型(Currency)
专门为处理货币而设计的数据类型
它可最多保留小数点右边4位和小数点左边15位其他类型数据
(1)字符型是用双引号括起来的一串字符。例如:“Canton”、”1+2=?”、”Good└┘Morning”等
“″”称为起止界限符。
字符串长度。分为:变长字符串(长度不固定)
定长字符串(长度固定)
例如:DimaAsString′a是不定长字符串
DimbAsString*4′b是定长字符串(4个字符)a=“VB”
′a的值为2个字符“VB”a=“VisualBasic”
′a的值为12个字符“VisualBasic”
b=“VB”
′b的值为4个字符“VB”
(后面有2个空格)b=“VisualBasic”
′b的值为4个字符“Visu”
其他类型数据
(2)逻辑型数据只有True(真)和False(假)两个值
(3)日期型数据用两个“#”符号把日期和时间的值括起来
如:#08/20/2001#、#2001-08-20#(4)
变体型(Variant)数据是一种可变的数据类型,可以存放任何类型的数据,VB会自动完成必要的转换
不特别说明时,VB会自动将该变量默认为Variant型变量
例:Temp=“22”
’字符串
Temp=Temp-1’数值
Temp=#01/01/2002#’日期2.2常量与变量2.2.1常量
在程序运行期间其值始终保持不变的量
一般常量:在程序代码中直接给出的数据。例如:123,-263,”VisualBasic”
,””等
符号常量:在程序中用符号表示的常量。格式:
[Public|Private]Const常量名[As数据类型]=表达式例如:ConstPI=3.14159AsSingle
变量
变量是在程序运行期间其值可以发生变化的量
1.变量的命名规则应遵守一些规则
2.变量的声明
(1)声明变量(显式声明)
用Dim、Public、Private或Static语句来声明变量例如:DimsumAsInteger′把sum定义为整型变量
sum=3(2)隐式声明
不加说明就直接使用变量,此时默认的变量类型为变体型例如:sum=3
(1)“值可变”:当将某个数据存放到一个变量时,就把变量中原有的值“冲”掉,换成新的值。例如,以下2个赋值语句:
a=3a=8
同一变量在不同时刻可以取不同的值
(2)“取之不尽”:在运算过程中,如果没有改变该变量的值,那么,不管使用变量的值进行多少次运算,其值始终保持不变。例如
x=5a=3+x′x的值始终保持为5b=x*x–4*x3.变量的两个重要特点
五类表达式:算术表达式、字符串表达式、日期表达式、关系表达式和逻辑表达式
1.算术表达式:运算符及其优先级:
^(乘方)→-(求负)→*/→\→Mod→+-
示例:5*x^10+x/6–x^(1/3)
15Mod6
2.
字符串表达式:运算符有两个:&和+
”计算机”
&”网络”
结果为”计算机网络”
3.日期表达式:
#8/8/2001#-#6/3/2001#
结果为66#12/1/2000#-32结果为#10/30/2000#2.3表达式结果?1+2*14Mod17\6/2=?
求出下列表达式的值想一想1.按运算符的优先级分成若干运算步骤
先乘除,再整除\和求Mod,后加运算
2.根据运算符的运算功能求出各步骤的结果思考题
1+28Mod5
结果为4
内部函数是由VB系统提供函数调用的一般格式为:
函数名(参数1,参数2,…)
返回函数值
例如:
y=Sqr(x)
Sqr是内部函数名,x为参数,运行时该语句调用内部函数Sqr来求x的平方根,其计算结果由系统返回给变量yVB的内部函数大体上分为四大类:数学函数,字符串函数,日期与时间函数和转换函数。2.4常用内部函数
说明:
·
函数Int(x)是求小于或等于x的最大整数。例如Int(2)=2,Int(-2.5)=-3,Int(-3)=-3
利用Int函数可以对数据进行四舍五入。例如,对一个正数x舍去小数位时进行四舍五入,可采用如下式子:
Int(x+0.5)
当时,Int(9.4+0.5)=9
当时,Int(9.5+0.5)=102.4.1数学函数
·
随机函数Rnd可以模拟自然界中各种随机现象。它可产生一个(0,1)的随机数。在VB中,有一个称为随机数生成器的随机数生成程序,能产生一个随机数序列,用户每次调用Rnd即可得到这个随机数序列中的一个。使用Randomize语句可以为随机数生成器指定不同的初值或者称为随机数序列的“种子”,这样可以得到不同的随机数序列。
Rnd通常与Int函数配合使用生成[a,b]区间范围内的随机整数,可以采用
Int((b-a+1)*Rnd+a)
例如Int(4*Rnd+1)可以产生1~4之间(含1和4)的随机整数。可以是1,2,3或4,这由VB运行时随机给定。
编写的窗体单击事件过程代码如下:
PrivateSubForm_Click()DimaAsSingle,bAsSingle,cAsSinglea=6b=9c=Sqr(a*a+b*b)Print"c=";cEndSub
运行程序后单击窗体,输出结果是:
例
已知a=6,b=9,计算c=例编写的窗体单击事件过程代码如下:
PrivateSubForm_Click()DimaAsInteger,bAsInteger,cAsIntegerRandomize
'初始化随机数生成器
a=Int(90*Rnd+10)
'产生[10,99]区间内的随机整数
b=Int(90*Rnd+10)c=a+b
'求两数之和
Print"产生的两个随机数:";a,bPrint"和数:";cEndSub运行程序后单击窗体,输出结果是:
产生的两个随机数:5671
和数:127例
通过随机函数产生2个两位正整数,求这2个数之和并显示出来
再次运行程序,单击窗体后输出另一组结果是:
产生的两个随机数:1837
和数:55例
用于进行字符串处理说明:(1)函数Mid(字符串,p[,n])从第P个开始取n个字符
示例:Mid(“ABCDEG”,3,2)的结果为”CD”
若省略n,则得到的是从P开始的往后所有字符,如
Mid(“ABCDE”,2)
的结果为“BCDE”(2)函数Instr(f,串1,串2,k)
查找串2在串1中的位置
f和k均为可选参数,f表示开始搜索的位置(默认值为1),k表示比较方式,若k为0(默认),表示区分大小写;若k为1,则不分大小写。例如Instr(3,”A12a34A56”,
”A”)
的结果为7
Instr(3,”A12a34A56”,”A”,1)
的结果为4
Instr(”A12a34A56”,
”A”)
的结果为1(3)函数Left(字符串,n)取左边n个字符示例:Left(”ABCDE”
,2)
的结果为”AB”字符串函数
先从字符串a中找出某个指定字符(本例为空格),再以此字符为界拆分成两个字符串。编写的窗体单击过程代码如下:
PrivateSubForm_Click()DimaAsString,bAsString,cAsString,nAsIntegera="Visual└┘Basic"
'└┘表示空格
n=InStr(a,"└┘")
'查找空格位置
b=Left(a,n-1)
'取左边部分
c=Mid(a,n+1)
'取右边部分
Printb'显示左边部分
Printc
'显示右边部分
EndSub
程序运行后单击窗体,输出结果是:
Visual
Basic例
使用字符串函数示例例
处理方法
"Visual└┘Basic"
先查找空格位置取右边部分取左边部分PrivateSubForm_Click()DimaAsString,bAsString,cAsString,nAsIntegera=“Visual└┘Basic”
'└┘表示空格
n=InStr(a,“└┘”)
'查找空格位置
b=Left(a,n-1)
'取左边部分
c=Right(a,_______)
'取右边部分
Printb
'显示左边部分
Printc
'显示右边部分
EndSub
程序运行后单击窗体,输出结果是:
Visual
Basic
若用Right函数来代替Mid函数,应如何改动?想一想思考题nB.Len(a)-nC.Len(a)B
日期/时间函数用于进行日期和时间处理
例如:函数Date返回系统日期,如返回日期为#11/03/2001#
函数Time返回系统时间,如返回时间为#7:03:28#2.4.3日期与时间函数
转换函数用于数据类型的转换
说明:Val函数将数字字符串转换为数值型数字时,会自动将字符串中的空格去掉,并依据字符串中排列在前面的数值常量来定值,例如:
Val("A12")的值为0Val("12A12")的值为12Val("1.2e2")的值为120
使用转换函数的示例
PrivateSubForm_Click()
x="123"y=123
a=Chr(Asc(x)+5)
b=Str(Val(x)+5)
c=Val(Str(y)+"5")
Printa,b,c
EndSub
运行程序后单击窗体,输出结果是什么?
类型转换函数想一想61281235转换函数例思考题
在编写程序代码时,要遵守一定的规则。不能超越其规定来自由发挥。
(1)一行写多条语句。冒号分隔
Sum=Sum+x:Count=Count+1
(2)一条语句写成多行使用续行符(一个空格后面跟随一个下划线“_”),将长语句分成多行。例如:
PrintText1.Text&Text2.Text&Text4.Text└┘,3)
(3)不区分大小写字母
VB不区分应用程序代码字母的大小写。
代码书写规则
(4)
各关键字之间,关键字和变量名、常量名、过程名之间一定要有空格分隔。
示例:Private└┘Sub└┘Form_Click()
(5)使用缩进
在编写程序代码时,可以使用缩进来反映代码的逻辑结构和嵌套关系。例如:
PrivateSubForm_Click()
x=4
Ifx<1Then
Print"x<1"
Else
Print"x>=1"
EndIf
EndSub
(6)严格按照VB规定的格式和符号编写程序。
与其他高级语言一样,在VB中使用的分号、引号、括号等符号都是英文状态下的半角符号,而不能使用中文状态下的全角符号。
许多程序错误都是由此而起!!!!
例如:
Ifa<5Thenx=10Print"x=";x
不能写成
Ifa〈5Thenx=10Print“x=”;x全角符号全角符号
VB支持结构化的程序设计方法其程序结构清晰,可读性好,也易于查错和修改
结构化程序设计方法有三种基本控制结构:
顺序结构、选择结构和循环结构具有单入口,单出口的特点
(a)(b)(c)
顺序结构选择结构循环结构AB假真LE真假ABE
结构化程序的基本结构
第2章习题讨论
退出单选题多选题填空题编程题单选题(P38)
1.下列①各项中,只有____才是数值常量;②各项中,___不是常量。①②A.1.E-3B.13C."abc"D.X1*3
6.表达式33Mod17\3*2的值为_____。
A.10B.1C.2D.3
16.设变量A的值为-2,则_____函数的执行结果与其他三个不一样。
A.Val("A")B.Int(A)C.Fix(A)D.-Abs(A)①D②DBA
复习:常量与变量
常量:在程序运行期间其值始终保持不变的量一般是在程序代码中直接给出的数据;不需要计算的。含数值常量、字符串常量、逻辑常量等(P27)
变量:在程序运行期间其值可以发生变化的量
x=12x=x+2+3*2s=”ABC”
s=s+”123”
12,2,
"ABC","123"都是常量
3*2不是常量,它必须经过运算才有结果x是变量,但"x"不是变量数值常量有两类:一般形式的数:如12,2,,.12等指数形式:如12E2,,
.12e3,.12D-03等。单选题(补充)1.在以下字符串中,只有______可以作为变量名。
A.End.9B.3XYC.End_9D.End2.如果a,b,c的值分别是3,2,-3,则下列表达式的值是
Abs(b*c-a)+b*Int(Rnd)A.8B.9C.10D.113.下列函数中,______函数的执行结果与其他三个不一样。
A.Val("-1")B.Int(-0.9)C.Sgn(-1)D.Fix(-0.9)4.用字符串连接符“&”连接两边的操作数时,两边的操作数应是
A.均为数值型B.均为字符型
C.字符型或非字符型D.均为变体型CBDC
二、多选题第2题(P40)
2.已知A=Space(1),要产生3个空格,可以采用_____函数
A.Right(A,3)B.Space(3*A)C.String(3,A)D.A&A&AE.3*ACD三、填空题
第1题之(3)
下列哪一个正确?
A.x^3/8+Sqr((y*y+4*a*a/(x+y^3)))B.x^(3/8)+(y*y+4*a*a/x+y^3)^1/2C.x^(3/8)+(y*y+4*a*a/(x+y^3)^(1/2)C.x^(3/8)+(y*y+4*a*a/x+y^3^(1/2)C
注意:使用空格分隔符Printa,b,c应写成Printa,b,caMod7应写成aMod7
编程及上机调试6.编制程序,在一个文本框中输入一串字符(长度大于2),单击“处理”按钮时,则取出该字符串的头、尾部各一个字符,合并后显示在第二个文本框中。如输入“ABCDEF”,则输出“AF”。
请指出下列事件过程有哪些错误?
PrivateSubCommand1_Click()DimxAsStringx=Val(Text1.Text)Text2.Text=Left(x,1)+Right(x,1)EndSub编程第6题Val函数将数字字符串转换为数值如Val("12")的值为12Val("ABCD")的值为0第3章顺序结构程序设计
学习程序设计,初学者要善于模仿,并要多练。任何一门程序设计语言都有一套严格的编程规定(如语法规则),在编程时一定要遵守这些规定(只能遵守,不能创造)。一个完整的VB应用程序,一般都包含三部分内容,即
输入→处理→输出
可通过VB语句、各种控件实现输入输出操作
本章主要内容第3章顺序结构程序设计赋值语句注释、结束及暂停语句使用Print方法输出数据窗体和基本控件对话框程序举例命令按钮标签文本框输入框消息框退出1.赋值语句[Let]变量名=表达式
示例:
2.注释、结束和暂停语句
(1)注释语句
Rem注释内容或´注释内容
(2)结束语句End(3)暂停语句Stop
也可以通过单击工具栏上的“中断”按钮来实现使用Ctrl+Break组合键,可强制程序暂停运行赋值与输入输出
(1)表达式中的变量必须是赋过值的,否则变量的初值自动取零值(变长字符串变量取空字符)。例如:
a=1c=a+b+3
′b未赋过值,为0
执行后,c值为4
(2)赋值语句跟数学中等式具有不同的含意,例如
x=x+1
表示把变量x的当前值加上1后再将结果赋给变量
“先读后写”:读出x的内容→加1→
写回x(覆盖原有内容)说明
(3)变量出现在赋值号的右边和左边,其用途是不相同的。出现在右边表达式中时,变量是参与运算的元素(其值被读出);出现在左边时,变量起存放表达式的值的作用(被赋值)。例如
x=2a=3x=2*a+5
当执行第3行语句“x=2*a+5”时,将读出变量a的值(即3),把该值乘2后加5,然后将结果(11)赋值给变量x。
(4)赋值号两边的数据类型必须一致,即同时为数值型或同时为字符型。说明编写的窗体单击事件过程代码如下:
PrivateSubForm_Click()DimxAsInteger,aAsIntegerDimbAsInteger,cAsIntegerx=36a=Int(x/10)
'求十位数
b=xMod10
'求个位数
c=b*10+a
'生成新的数
Print"处理后的数:";cEndSub运行程序后单击窗体,输出结果是:
处理后的数:63例3.1
给定一个两位数(如36),交换个位数和十位数的位置,把处理后的数显示在窗体上例
处理方法两位数
ab
b取出个位数
a取出十位数新两位数:
b*10+a
编写的VB程序代码如下:
PrivateSubForm_Click()
DimxAsInteger,aAsInteger
DimbAsInteger,cAsInteger
x=InputBox(“输入一个2位数”)
‘运行时由用户任意给定一个2位数
a=Int(x/10)'求十位数
b=xMod10'求个位数
c=b*10+a'生成新的数
Print"处理后的数:";c
EndSub
执行后,弹出一个输入对话框,若用户输入“83”,输出结果:处理后的数:38
例3.1A运行时由用户任意给定一个两位数,交换个位数和十位数的位置,把处理后的数显示在网页上。例一种灵活输入方式InputBox是VB函数,见P58例3.2设计程序,实现两个文本框内容的交换
(1)在窗体上建立两个标签、两个文本框和一个命令按钮
(2)编写程序代码
借助于另一个变量(假设为t)
,并直接在控件中交换数据
PrivateSubCommand1_Click()
′“交换”按钮
DimtAsStringText1.Text=Text2.TextText2.Text=tEndSubText1Text2例有的对象属性具有变量的特性
编写的程序代码如下:
PrivateSubCommand1_Click()
´“交换”按钮
Text2.Text=tEndSub
采用变体型变量
说明:对于初学者来说,为了节省时间,有时可以不采用Dim等语句声明就直接使用变量(默认为变体型,如t)。但在规范的软件开发中,通常都要求程序中使用的变量必须预先声明。没用Dim语句t是变体型变量
把上述程序改为以下形式,效果是否一样?PrivateSubCommand1_Click()
′“交换”按钮
Text1.Text=Text2.TextEndSub思考题想一想
下列程序的运行结果是什么?
运行时,在文本框Text1中输入5,单击“计算”按钮后,在文本框Text2显示的结果是什么?
PrivateSubCommand1_Click()'“计算”按钮
DimaAsInteger,bAsInteger,cAsIntegera=Val(Text1.Text)b=7c=2*aModb/3+1a=a+1b=2*b-1c=c+a+bText2.Text=cEndSub思考题想一想Text1Text2例20
3.3.1Print方法
用于显示(输出)文本格式:[对象名.]Print[表达式列表]说明:(1)使用的对象可以是窗体等
Print“程序设计”
´在当前窗体上输出
Picture1.Print“程序设计”
´在图片框上输出
(2)表达式列表是一个或多个表达式,如果省略,则输出一个空行
3.3使用Print方法输出数据
例3.3Print输出示例
PrivateSubForm_Click()
a=3:b=4Printa,b,4+a,Print2*bPrinta,,bPrintPrint"a=";a,"b=";bEndSub
运行结果
例分号“;”——紧凑格式逗号“,”——按区格式(14个字符位置)语句行末尾有分号或逗号,则输出本行输出项后不换行输出数值数据时,前面有一个符号位(正号以空格表示),后面留有一个空格;输出字符串时,前后不留空格每个Print输出一行。
1.Spc函数
格式:Spc(n)
功能:在输出下一项之前插入n个空格。例如:
Print"学号";Spc(2);"姓名";Spc(5);"成绩"
输出结果(└┘表示空格):
学号└┘└┘姓名└┘└┘└┘└┘└┘成绩
特殊打印格式
函数格式:Tab(n)
功能:把输出位置移到第n列。例如:
PrintTab(2);"学号";Tab(11);"姓名";Tab(21);"成绩"
输出结果是(1个汉字占2个位置):
└┘学号└┘└┘└┘└┘└┘姓名└┘└┘└┘└┘└┘└┘成绩2.Tab函数
格式:Format(表达式[,格式串])
功能:根据格式串规定的格式来输出表达式的值
示例
PrintFormat(a,"##,###.##")PrintFormat(a,"$##,###.00")
输出结果是:
格式符号#和0都能显示数字,但符号#会剔除不必要的0,符号0会按规定补足03.Format函数
窗体(Form)是设计VB应用程序的基本平台
窗体本身是一个对象,又是其他对象的载体或容器
多数应用程序是从窗体开始执行的
;一个程序可以有多个窗体
3.4.1窗体的基本属性
设置窗体的属性,可在程序设计时在属性窗口中手工设置,也可以在程序运行时由代码实现默认属性3.4窗体
一些常用的窗体属性:
·Name属性:用于设置窗体的名称。指定窗体的名称。只读,不能在应用程序中修改
·Caption属性:用于设置窗体标题栏上的标题内容。
·Maxbutton和Minbutton属性:用于设置最大化和最小化按钮
·Height和Width属性:确定窗体的初始高度和宽度
·Left和Top属性:确定窗体的左上角在屏幕上的横、纵坐标
·BackColor和ForeColor属性:设置窗体的背景色和前景色
·FontName属性:用于在窗体上设置字体。
·FontSize属性:用于在窗体上设置字号。
·Visible(可见性):设置对象的可见性,默认值为True
坐标原点(0,0)在窗体的左上角坐标轴刻度单位为缇(Twip,567缇为1厘米)
当前位置的横坐标(CurrentX)和纵坐标(CurrentY)
YX
·
(CurrentX,CurrentY)
当前位置窗体坐标系统
窗体事件过程的一般格式为:
PrivateSubForm_事件名([参数表])……End
在事件过程中只能使用Form,而在过程内对窗体进行引用时才会用到窗体名字(如Form1等)3.4.2窗体的事件只能写成Form,不能写成Form1
与窗体有关的常用事件有以下几种。
Load(装载)事件:启动程序时,通常先执行Form_Load
Unload(卸载)事件
Click(单击)事件
DblClick(双击)事件
KeyPress(按键)事件:当按下键盘上的某个健时,将触发KeyPress事件。其事件过程的格式为:
PrivateSub对象_KeyPress(KeyAsciiAsInteger)……EndSub
示例:PrivateSubForm_KeyPress(K
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 水泥栏杆安装合同范本
- 缝线推广服务合同范本
- 网络代理软件合同范本
- 租赁分期买断合同范本
- 酒店客房系统管理设计
- 青春期教育主题班会课件
- 配液主管年终总结
- 静脉麻醉取卵护理
- 湘潭大学兴湘学院《园林植物学理论》2023-2024学年第二学期期末试卷
- 东北师范大学《用友财务管理软件应用》2023-2024学年第二学期期末试卷
- 二年级数学有余数的除法(2位数除以1位数)竞赛试题练习题
- 2025年法理学接本试题及答案
- 2025年安庆医药高等专科学校单招职业技能考试题库标准卷
- 2025-2030年中国工业废水处理产业十三五发展规划及战略规划分析报告
- 《抑郁症治疗新进展》课件
- 《天文学导论课件》
- 北京自主招生数学试卷
- 2024年特许权使用协议3篇
- 湖南固体废弃物综合利用和资源循环利用项目可行性研究报告
- 四川省凉山彝族自治州(2024年-2025年小学六年级语文)统编版综合练习(下学期)试卷及答案
- T-GXAS 689-2024 重大基础设施项目涉及风景名胜区选址论证报告编制技术规范
评论
0/150
提交评论