输出s的值为25,流程图结束
第二单元 VB程序设计初步
一、对象、属性、类、事件和事件处理的概念
1.对象是客观存在的事物或概念。
它有两个特点:
状态和行为。
在我们VB程序设计中,窗体、命令按钮、文本框等等都是对象。
2.一个对象的状态是通过若干个属性(property)来描述的;行为是指对属性进行操作和处理的方法(method)。
在面向对象的程序设计中,一个对象是由一组对象状态的数据和一组描述处理对象属性的方法的代码构成的。
对象的属性定义其外观(例如窗体的背景颜色),方法定义其行为(例如按键、单击鼠标、双击鼠标),事件定义其与用户的交互(代码)。
3.类(class)是对相同性质的对象的一种抽象,而一个对象则是类的一个"实例"。
4.事件(event)就是发生在对象上的事情,通常是由用户在对象上激发的一种动作。
一个事件的发生,可以引起某个对象上某个方法(事件处理过程)的执行,即由某个事件驱动了相应的事件处理过程的执行。
这就是面向对象程序设计中的事件驱动概念。
例1:
在代码窗口中,语句Student.Font="宋体"中的Student、Font、"宋体"分别是
(A)对象名、属性值、属性名; (B)对象名、属性名、属性值
(C)属性名、属性值、对象名; (D)属性值、对象名、属性名
例2:
小明家买了一辆红色的小轿车停在他家的院子里。
小轿车、小明家买的小轿车、红色分别代表
(A)属性、对象、类;(B)类、对象、属性(C)对象、属性、类;(D)对象、尖、属性
例3:
在面向对象程序设计中,分别定义对象的外观,对象的行为,对象与用户的交互的是:
(A)方法、属性、事件; (B)事件、方法、属性
(C)属性、事件、方法; (D)属性、方法、事件
二、VB应用程序的界面设计
1.VB程序设计语言:
基于Basic语言的可视化程序设计环境,采用面向对象的程序设计方法(OOP)。
2.VB应用程序设计环境的的窗口主要由对象窗口、代码窗口、控件工具箱、属性窗口、工程窗口组成。
对象窗口:
一般是在对象窗口中添加一个窗体对象,再在窗体上添加其它对象;
代码窗口:
主要用来编写程序代码(可以通过双击对象窗口切换到代码窗口);
属性窗口:
主要在此对对象的属性进行设置,反映对象初始状态的属性在设计时通过属性窗口设置;而要求动态变化的属性只能在通过程序代码在程序运行中进行设置。
(即对象的属性也可能通过代码在程序中进行设计,如:
form1.backcolor=VBred);
工程窗口:
对文件进行管理,以及对窗口进行切换;
控件工具箱:
主要是用来添加对象的,通过控件工具箱在窗体上添加对象可以通过先选择好控件,再在窗体上添加,也可以通过直接在控件工具箱上双击控件来添加对象;
3.控件工具箱集中了常用的基本控件:
(1)标签label:
主要起说明作用,常用的有backcolor背景属性、caption标题属性
(2)文本框TextBox:
主要用来接收和显示文本,学用的有backcolor背景属性、text内容属性(为默认属性)、font字体属性、Multiline充许多行属性
接收文本:
str1=text1.text;显示文本:
text1.text=str1
(3)命令按钮CommandButton:
,主要用来控制,常用的有caption标题属性
列表框ListBox:
主要用来显示多个数据,显示:
list1.AddItem字符串
4.窗体(Form)是VB应用程序的基本结构。
窗体可以看作是一个"容器",其中放置着各种各样在应用程序中必须用到的对象。
例1:
在VisualBasic中,添加一个标签,在工具箱中要单击的控件是:
A.
B.
C.
D.
例2:
要使用户单击窗体Form1时,Form1的颜色才变为绿色,代码窗口中应有如下的事件过程。
(A)PrivateSubForm1_Click()
Form1.ForeColor="绿色"
EndSub
(B)PrivateSubForm_Click()
Form1.BackColor=vbGreen
EndSub
(C)PrivateSubcommand1_Click()
Form1.forecolor=vbGreen
EndSub
(D)PrivateSubForm_Load()
Form1.forecolor=vbGreen
EndSub
例3:
要从文本框TXTShowOut中输出"中国您好!
",代码为:
(A)TextBox.text="中国您好!
"(B)TxtShowOut.Text="中国您好!
"
(C)TxtShowOut.Label="中国您好!
"(D)TxtShowOut.Text=“中国您好!
”
例4:
下列叙述不正确的是:
(A)属性窗口是提供应用程序中的对象的属性显示与修改
(B)在程序运行时,一般都是通过窗体上的控制部件的交互来控制程序的运行
(C)工程资源管理器可以显示工程的结构列表及所含项目。
(D)工具箱中列出了所有VB的控件。
三、VB应用程序的运行和保存
1.运行:
单击工具栏中"运行"选项中的启动按钮,运行应用程序。
2.保存:
在"文件"菜单中选"工程另存为",该应用程序的窗体和工程分别存储到文件中,其相应的文件扩展名分别是".frm"和".vbp"。
也可以选"文件"菜单中的"生成工程xxx.exe",这样,就可在Windows环境中直接运行这个应用程序了。
”.vbp”为工程文件,一个程序一般保存为一个工程,”.frm”为窗体文件,一个工程中可以有多个窗体。
四、基本数据类型、常量、变量、数组
1.数据:
数据是信息的一种记录形式。
在VB中,常用的基本数据类型有以下几种:
Integer:
整数型,-32768至32767内的任何整数
Long:
长整数型,-2147483648至2147483647范围内的任何整数
Single:
单精度实数型,绝对值在1.401298E-45至3.402823E38内的任何实数、有效位数约6到7位
Double:
双精度实数型,绝对值在10E-324至1.79E308内的任何实数、有效位数约14到15位
String:
字符串型,一段文字和符号(需要在英文状态下的双引号引起来)
Boolean:
逻辑型,判断的结果,只有真(true)和假(false)两个值
Date:
日期型,日期和时间
以上数据类型要记住
2.常量:
常量是在程序执行过程中其值不变的存储单元或数据。
在VB中,常量有整数常量、实数常量、字符串常量、符号常量和逻辑常量这几种类型。
整数常量:
35、459; 实数常量:
-27.8、998.568字符串常量:
”dg4ew”、”52235”
逻辑常量:
false、true符号常量:
下面定义的Pi、VB中已经定义的VBred表示红色
符号常量定义格式:
ConstPi=3.1415926
3.变量:
变量用来表示数据的存储区,在程序运行过程中,这些存储区中的值是可以改变的。
VB变量是一个名字,给变量命名时应遵循以下规则:
(1)名字只能由字母、数字和下划线组成;
(2)名字的第一个字符必须是英文字母;
(3)名字的有效字符为255个; (4)不能用VB的保留字作为变量名;
(5)VB不区分变量名和其它名字中字母的大小写,但习惯上,符号常量一般用大定字母定义。
变量说明语句的常用形式为:
Dim 变量名 As 变量的类型。
例:
Dimxasinteger
Dimx,a1,yasinteger
4.数组:
数组是由一批同类型的变量构成的一个序列,组成数组的每一个变量被称为数组的元素,也称为下标变量,下标是一个整数,用来指出某个元素在数组中的位置。
一维数组的常用形式为:
Dim数组变量名(A1ToA2)As元素的类型。
二维数组的常用形式为:
Dim数组变量名(A1ToA2,B1ToB2)As元素的类型。
Dima(1to5)asinteger
定义的数组元素为:
a
(1)、a
(2)、a(3)、a(4)、a(5)
Dimb(1to4,1to4)asdouble
定义的数组元素为:
b(1,2)、b(1,3)、b(1,4)、b(2,1)、b(2,2)、b(2,3)、b(2,4)、b(3,1)、b(3,2)、b(3,3)、b(3,4)、b(4,1)、b(4,2)、b(4,3)、b(4,4)
对数组的操作往往通过循环来操作:
例如把第一个数组的值分别赋值为6、7、8、9、10
Fori=1to5
a(i)=5+i
nexti
例如把第二个数组的值全部赋值为10
Fori=1to4
Forj=1to4
a(i,j)=10
nextj
nexti
例1:
以下是合法的VisualBasic变量的是
A.abc B.Const C.9abcD.a#x
例2:
下列各组变量声明正确的是:
(A)DimnumasLong (B)Dimfor,sumasLong
(C)Publicnum%,sum$asSingle (D)Dimnum1%,num2!
,sum$,num1#
例3:
下列属于VisualBasic字符串常量的是
(A)1/2(B)Int(3.4)(C)"1/2"(D)1+2
例4:
在VisualBasic中,要定义一个一维数组a,用于存储100个整数型数值,则正确的数组定义语句是
(A)Dima100AsInteger (C)Dima(1,100)AsInteger
(B)Dima(1-100)AsInteger (D)Dima(1To100)AsInteger
五、常用的标准函数
1.常用数学函数:
(1)Abs(X):
求X的绝对值(abs(-5)=5)
(2)Int(X):
求不大于X的最大整数(int(6.79)=6,int(-6.78)=-7)
(3)Sqr(X):
求X的算术平方根(sqr(25)=5,sqr(6.25)=2.5)
(4)Rnd():
随机函数,返回一个小于1但大于或等于0的值。
(5)Exp(X):
求e的X次方
(6)Log(X):
求以e为底的X的对数
(7)Sin(X):
求X的正弦值
(8)Cos(X):
求X的余弦值
(9)Tan(X):
求X的正切值
2.常用类型转换函数和字符串函数:
(1)Asc(X):
字符转换为ASCII码()
(2)Chr(X):
ASCII码转换为字符()
(3)Val(X):
数字字符转换为数值(val(“56”)=56,val(“5.6”)=5.6)
(4)Str(X):
数值转换为字符串(str(56)=”56”,str(5.6)=”5.6”)
(5)Len(X):
计算字符串的长度(len(“fd546l”)=6,len(“abc45av”)=9)
(6)Mid(X,n,k):
取字符串X中第n个字符起长度为k的子串(mid(“abcdefgh12”,4,3)=”def”))
(7)Fix(X):
截掉数据的小数部份(fix(15.658)=15,fix(-15.658)=-15)
以上各函数需要识记
例1:
在VisualBasic中,求实数x的绝对值的函数是
(A)Abs(x) (B)Int(x) (C)Sqr(x) (D)Log(x)
例2:
在VisualBasic中,设x=951,能得到其百位数字“9”的正确表达式是
(A)Int(x/10) (B)Int(x/10)*10 (C)Int(x/100) (D)x-Int(x/100)*100
例3:
在VisualBasic中,将数值转换成字符串的函数是
(A)Str(x)(B)Val(x)(C)Abs(x) (D)Int(x)
例4:
下列各表达式能产生[2,10]随机整数的是:
(A)Rnd()*8+2 (B)Rnd()*9+1
(C)Int(Rnd()*9)+2(D)Int(Rnd()*11)-1
例5:
VisualBasic表达式Int(3.1415926*100+0.5)/100的值是(取几位小数的方法,加不加0.5决定要不要四舍五入)
(A)314(B)3.146(C)3.14(D)314.6
六、算术类、关系类、逻辑类表达式及基本操作
1.算术类基本运算有:
^:
指数-:
取负*:
乖/:
除+、-:
加减
\:
整除(5\6=0,7\6=1)Mod:
取余(5mod6=5,7mod6=1)
例1:
表达式2^4\3的值是
例2:
下列表达式中的值不为6的是:
(A)19\3(B)19/3(C)Int(19/3)(D)19mod13
2.关系类基本运算有:
=、<>、<、>、<=、>=
当进行字符串比较时,其运算逻辑是:
按自左至右的顺序,逐一比较两个字符串对应位置的ASCII码值,第一次遇到ASCII码值不同时,哪个值最大则哪个字符串就大。
比如"abcd">"abCD"的值为True。
因为"c"的ASCII码值为99,"C"的ASCII码值为67。
3.逻辑类基本运算有:
Not:
非,NotTrue=False,NotFalse=True
And:
与,TrueAndTrue=True,FalseAndFalse=False,TrueAndFalse=False,FalseAndTrue=False
Or:
或,TrueOrTrue=True,FalseOrFalse=False,TrueOrFalse=True,FalseOrTrue=True
例1:
下列逻辑表达式中值为False的是:
A.Int(14/3)=4B.((1+2)≤3)and(4+5>7)
C.Int(Rnd()*3)≤3D.“abc”>“bc”
例2:
下列能正确表示“x、y、z不全是负数”的VB逻辑表达式是:
A.x<0,y<0,z<0B.(x<0)and(y<0)and(z<0)
C.not((x<0)and(y<0)and(z<0))D.(x<0)or(y<0)or(z<0)
例3:
公历闰年的简单计算方法是,年份能被4整除而不能被100整除或者能被400整除。
下面能正确判断年份uYear是闰年的逻辑表达式是:
A.(uYearmod400=0)or(uYearmod100<>0)or(uYearmod4=0)
B.(uYearmod400=0)and(uYearmod100<>0)and(uYearmod4=0)
C.(uYearmod400=0)and(uYearmod100<>0)or(uYearmod4=0)
D.(uYearmod400=0)or(uYearmod100<>0)and(uYearmod4=0)
例4:
下列能表示“x小于10且y大于0”的VisualBasic逻辑表达式是
(A)x<10Andy>0 (C)x<10Ory>0 (B)x<10:
y>0 (D)x<10,y>0
4.表达式:
表达式主要用来规定值的计算过程,以及对于某些情况或条件的判断。
一个表达式中可能包括算术运算、关系运算和逻辑运算等多种基本运算,以及这些基本运算所涉及的数据(变量和常量)。
5.基本运算的优先级从高到低为:
^(1级),-(指负号,2级),﹡、/(3级),\(4级),Mod(5级),+、-(6级),=、<>、<、>、<=、>=(7级),Not(8级),And(9级),Or(10级)。
例1:
下列属于正确的VisualBasic表达式是
(A)2ab(B)2×a×b (C)2•a•b (D)2*a*b
例2:
在VisualBasic中,关系表达式x/y=x\y为真,则说明
(A)x不能被y整除 (C)x与y一定不相等
(B)x与y一定相等 (D)x能被y整除
例3:
表达式
的VB表达式为
例4:
7*4mod(-8)*5的值为
例5:
Exp(3*log
(2))的值为
例6:
2*log
(2)/log(10)的值为
6.字符运算:
字符串是由两个双引号””包括的字母和数字的组合体,字符串连接符的作用是将字符串常量、变量和函数连接起来,从而形成一个较大的字符串,主要要“+”和“&”两个符号,它们的运算结果基本相同。
比如:
”Abcd”+”1234”将得到一个新的字符串”abcd1234”。
例1:
有如下程序段
a=456:
b=123:
c=a+b:
d=str(a)+str(b)
执行完成c的值为;d的值为。
七、赋值语句、选择语句、循环语句、注释语句
1.赋值语句:
变量名=表达式 或 对象名.属性名=表达式
例1:
下列不是合法的赋值语句的是:
(A)iNumber_1=45 (B)(4+5)*3.5=num
(C)Label1.caption=time(D)num=(4+5)*3.5
2.选择语句:
行If语句:
If条件表达式 Then语句1Else语句2
或 If条件表达式 Then语句
块If语句:
If条件表达式1 Then
语句块1
ElseIf条件表达式2 Then
语句块2
……
ElseIf条件表达式n Then
语句块n
Else
语句块0
End If
例1:
有如下VisualBasic程序段,该程序段运行后,变量a的值是
a=12
Ifa<4Then
a=a-2
Else
Printa
Endif
例2:
若整型变量a的值为2、b的值为3,则下列程序段执行后整型变量c的值为
ifa>5then
ifb<4thenc=a-belsec=b-a
else
ifb>3thenc=a*belsec=amodb
endif
例3:
假设x,y均为整型变量,则执行下列程序段后,y的值为
x=130
ifx>50theny=x*2elsey=x*3
3.循环语句: