初中信息VB复习资料与例题 - 图文

更新时间:2023-10-04 15:22:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

VB复习资料与例题

【知识归纳】

1.Visual Basic基本概念:

(1)工程:工程文件名的后缀是.vbp,指用于创建一个应用程序的文件的集合。

(2)窗体:窗体文件名的后缀是.frm。该文件存储窗体上的所有对象、对象的属性及事件处理过程代码。

(3)对象和类:VB“工具箱”中的每种控件都是一个类。对象指的是窗体和控件生成的工具。每个对象都有自己的属性、方法,并且可以响应外部事件。

(4)对象的属性:对象的属性是标识一个对象的所有特征。常用的公共属性:

序号 属性名 意义 Name(名称) 用于设置控件的名称,这个名称是用来标识该控件的。 1 Font(字体) 用于设置控件中文字所用的字体样式,字号和特殊显示方式等。 2 Text(文本) 用于设置文本框中输入和输出的文本。 3 Caption(标题) 设置窗体、命令按钮、标签控件的显示标题 4 BackColor(背景色) 用于设置控件中显示文字或绘制图形的背景颜色。 5 Width(宽度) 用于设置控件的宽度。 6 Height(高度) 用于设置控件的高度。 7 Left(左边距) 设置控件左上角的横坐标,坐标原点为窗体Form1的左上角。 8 Top(顶边距) 设置控件的纵坐标。 9 设置控件是否可见,如果设置为False则控件会消失。 10 Visible(可视) 注:属性的设置方法:A.选定对象后,从“属性”窗口中设置;B.在代码窗口中设置,格式是:对象名.属性名=属性值 如:Label1.Caption = \应用程序\(5)事件处理过程的一般格式如下:

Private Sub 对象名_事件名( ) ……

事件响应程序代码 …… End sub

(6)VB预设的事件有:Click(单击)、DblClick(双击)、KeyPress(按键)、Load(装载)、Change(改变)等。

VB的一些常用对象上的常见事件的标准名有:文本框

Text:Text1_Click、Text1_DblClick、Text1_KeyPress、Text1_Change;命令按钮Command:Command1_Click;标签Label:Label1_Click;窗体Form:Form_Load(窗体装载)

2.常用控件的简介(见右图,记牢常用的几个控件:标签、文本框、命令按钮、列表框、图像框、时钟) 3.常用控件简介 控件名 控件简介 显示用户不能直接改变的文本,主要应用其“Caption”属性。 1 Label(标签) 2 TextBox(文本框) 供用户输入和输出数据,主要应用其“Text”属性。 CommandButton 用户可以更改按钮显示文本(“Caption”属性),主要事件为3 (按钮控件) Click(鼠标单击)。 可修改Picture属性加载图像,也可使用函数LoadPicture()4 Image(图像框) - 1 -

来加载图像。Stretch属性值为True时,图像会自动适应图像框的尺寸。 用AddItem方法来显示项目。主要事件为:DblClick(鼠标5 ListBox(列表框) 双击)。 产生一个Timer事件以自动执行某过程。可设Interval属性(单位:ms)来定时,同时设Enabled属性为True来打开Timer6 Timer(时钟) 事件。 4. VB常量、变量、数组及定义 VB常用的 Integer(整型)、Long(长整型)、Single(实数)、Double(实数)、String(字数据类型 符串,带” ”)、Boolean(逻辑型)、Date(日期型,带# #) 常量及定义 Const 常量名=数值 如:Const pi = 3.14 Dim 变量名 As 数据类型 如:Dim a As Integer 变量名规则:①变量及定义 由字母、数字、下划线组成②只能字母开头③不能使用VB保留字(如caption) 一维数组变量的定义:Dim 数组变量名(a1 To a2) As 元素的类型 数组变量 二维数组变量的定义:Dim 数组变量名(a1 To a2, b1 To b2) As 元素的类型 注释语句 以单引号(‘)开头的一串文字,对附近的程序段进行简要的说明 赋值语句 变量名=表达式 或 对象名.属性名=表达式 If 条件表达式 Then 语句1 Else 语句If 条件表达式1 Then 语句块1 2 ElseIf 条件表达式2 Then 语句块2 选择语句 无论条件表达式的值为True或False进行…… 处理的语句都只有一个时,可采用行If语Else 语句块0 句,也可采用块If语句;而如果进行处理End If 的语句不止一个时,必须采用块If语句。 For 循环变量=初值 To 终值 Step 步长 Do While 条件表达式 循环体语句块 循环体语句块 循环语句 Loop Next 循环变量 5.运算符号 基本运算 运算符号 优先级 表达式举例 示例表达式的 值 乘幂 ^ 1 2^3 8 取负 a的相反值 - 2 -a 乘法 3*2.5 7.5 * 3 实数除法 2.5 / 3 5/2 算术 运算 整除 \\ 4 5\\2 2 取余数 Mod 5 5 mod 2 1 加法 a+b的值 + 6 a+b 减法 a-b的值 - 6 a-b 相等 = 7 1=2 False 关系 运算 不相等 <> 7 1<>2 True - 2 -

小于 < 7 大于 > 7 小于等于 <= 7 大于等于 >= 7 非 Not 8 逻辑 与 And 9 运算 或 Or 10 6.常用标准函数 函数名 函数功能 求绝对值 Abs(x) 求不大于x的最大整数 Int(x) 截去x的小数部分 Fix(x) 求x的算术平方根 Sqr(x) 字符转换为ASCII编码 Asc(x) ASCII编码转换为字符 Chr(x) 将数字字符串转换为数值 Val(x) 将数值转换为数字字符串 Str(x) 计算字符串的长度 Len(x) Mid(x,n,取字符串x中第n个字符起长度为k的子串 k) 1<2 1>2 10 mod 2 <=20 10 \\ 2>=7 Not 5>10 2<3 And 5<>5 2<3 Or 5<>5 应用举例 Abs(-3.5) Int(4.1) Fix(4.1) Sqr(100) Asc(“A”) Chr(65) Val(“-170”) Str(-170) Len(“abc”) True False True False True False True 函数返回值 3.5 4 4 10 65 A -170 “-170” 3 Mid(“abcde”,3,2) “cd” 产生一个求[0,1)之间的一个随机数,使Randomize 1~100的随机Rnd() 用前用Randomize初始化 A=Int(Rnd()*100+1) 整数 7.VB常用算法 将问题的可能解一个个地列举,逐一判断,即使中途找到符合的解也要继枚举算法 续找下去,将所有可能都找完才结束。 解析算法 用数学公式描述客观事物间的数量关系。 【例题】

1.某VB程序如下:Private Sub Text1_KeyPress(KeyAscii As Integer) If KeyAscii=13 Then

Text2.Text=Text1.Text+Str(5) End If End Sub

程序运行时,能触发该事件过程的是( )

A.单击文本框Text1 B.单击文本框Text2 C.文本框Text1被激活后,用户在键盘上按下某一个键 D.文本框Text2被激活后,用户在键盘上按下某一个键

选C [事件处理过程名必须符合规则:对象名_事件的标准名。Text1_KeyPress(KeyAscii As Integer)中Text1是这个事件过程的触发对象,所以排除B、D选项。KeyAscii是事件过程的参数,意思是键盘输入后传递给程序的ASCII码。结合if语句,当按下键盘上某一个键传递给程序的ASCII码值等于13的时候执行then后面的语句。]

- 3 -

2.小明在VB中定义了以下函数,功能是求a和b的最大公约数。 Function gcd(a As Integer,b As Integer) As Integer Do While b>0 c=a Mod b a=b b=c Loop

End Function

调试中发现计算结果一直是0。经过仔细观察与分析,发现错误的原因是( ) A.函数名有错 B.变量c没有定义 C.函数没有返回值 D.b>0应该改为b>=0

选C [A选项函数名的命名规则同变量名。VB中可以省略一些变量的定义,未定义的变量即为通用类型,即根据赋值变化数据类型,所以B选项局部变量c未定义,不影响程序运行。D选项把循环条件改成b>=0反而会使Do Whihe……Loop循环进入死循环。]

3.某对象的一个事件过程代码如下: Private Sub Obj_Click( ) s=s+1

Text1.Text=Str(s) End Sub

下列说法正确的是( )

A.该过程的过程名为“Obj” B.该对象的类名为“Sub” C.该对象的对象名为“Obj_Click” D.该事件是一个“单击”事件 选D [由题中可以看出是一个“单击”事件。]

4.窗体装载事件过程可以对程序进行初始化。VB窗体装载事件过程的名称是( ) A.Command1_Click B.Form_Keypress C.Form_Load D.Form_DblClick 选C

5.下面VB程序的功能是判断一个整数是否为素数。在文本框Text1中输入一个整数x,如果x是素数,则在标签Label1中显示“Y”,否则显示“N”。程序中有两处错误,请改正。

Private Sub Command1_Click( )

Dim i As Integer,x As Integer,pd As Boolean Val(Text1.Text)=x pd=True i=1

Do While i<x And pd=True If x Mod i=0 Then pd=False Else i=i+1 End If Loop

If pd=True Then

- 4 -

Label1.Caption=“Y” Else

Label1.Caption=“N” End If End Sub

错误语句1:________改为:________; 错误语句2:________改为:________。 填Val(Text1.Text)=x x=Val(Text1.Text) i=1 i=2 [变量x的值由文本框Text1中输入得到,因此为x=Val(Text1.Text);除数应从2开始。]

6.如果一个4位数恰好等于它的各位数字的4次方和,则这个数被称为“玫瑰花”数。例如1634就是一个玫瑰花数:1634=14+64+34+44。如果要求出所有的玫瑰花数,下列算法合适的是( )

A.查找法 B.解析法 C.枚举法 D.排序法

选C [本题要求是求出所有的玫瑰花数,即是将求解对象一一列举出来。] 7.计算两个并联电阻总电阻值的算法如下:

R1R2①输入两电阻R1,R2的值;②计算总电阻R=;③输出总电阻R

R1+R2上述算法属于( )

A.枚举算法 B.解析算法 C.排序算法 D.查找算法 选B [由题可知,本题为解析算法。]

8.有一个8位数,前4位是4623,后4位数字的特点如下:(1)后4位数字中的前2位数字相同;(2)后4位数字中的后2位数字也相同;(3)后4位数字正好是一个完全平方数。

某同学编写了一个VB程序用于寻找这个8位数。程序运行时,单击“计算”按钮Command1,在标签Label2中显示这个8位数,程序运行界面如图所示。

Private Sub Command1_Click()

Dim i As Long,a As Integer,b As Integer,c As Integer,d As Integer,x As Integer For i=32 To 99 n=i*i

x=____①____ y=____②____ a=x/10

b=x Mod 10 c=y\\10

d=y Mod 10

If a=b And c=d Then ____③____ Next i End Sub

为实现上述功能,请在程序划线处填入合适的语句。

划线①处应填入的语句为:_______________;划线②处应填入的语句为:____________;

划线③处应填入的语句为: ___________。

填①x=n Mod 100 ②y=n\\100 ③Label2.Caption=Str(46230000+n) [后4位数

- 5 -

本文来源:https://www.bwwdw.com/article/u5ad.html

Top