版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精选优质文档-倾情为你奉上VB程序设计教程(第3版)习题解答习题1答案一、选择题1.1 Visual Basic 6.0分为3种版本,不属于这3种版本的是A)学习版B)专业版C)企业版D)业余版【答】D。1.2 下列方法中不能退出Visual Basic的是A)按Alt+Q组合键B)按下Alt+F组合键,然后按Esc键C)按F10键,然后按F键,再按X键D)打开“文件”菜单“退出”命令【答】B。1.3 Visual Basic集成的主窗口中不包括A)属性窗口B)标题栏C)菜单栏D)工具栏【答】A。1.4 下列操作可以打开立即窗口的是A)Ctrl+DB)Ctrl+FC)Ctrl+GD)Ctrl+
2、E【答】C。二、填空题1.5 与传统的程序设计语言相比,Visual Basic最突出的特点是_。【答】事件驱动编程机制。1.6 如果不使用鼠标,用键盘打开菜单和执行菜单命令,第一步应按_键。【答】功能键F10或Alt键。1.7 建立一个新的标准模块,应该选择_菜单下的“添加模块”命令。【答】“工程”菜单。三、思考题1.8 简述Visual Basic的特点。【答】与一般的程序设计语言相比,VB具有以下特点: (1) 可视化的设计平台; (2) 面向对象的设计方法; (3) 事件驱动的编程机制; (4) 结构化的设计语言; (5) 充分利用Windows资源; (6) 开放的数据库功能与网络支
3、持。1.9 简述Visual Basic集成开发环境的组成。【答】VB 6.0集成开发环境除了具有标准Windows环境的标题栏、菜单栏、工具栏外,还有工具箱、属性窗口、工程管理器窗口、窗体设计器、立即窗口、窗体布局窗口等有用的开发工具。(1) 标题栏和菜单栏:标题栏中显示的有窗体控制菜单图标、当前激活的工程名称、当前工作模式以及最小化、最大化还原、关闭按钮。菜单栏中显示了“文件”、“编辑”、“视图”、“工程”、“格式”等菜单项,其中包含了VB编程的常用命令。单击菜单栏中的菜单名,即可打开下拉菜单。在下拉菜单中显示了各种功能子菜单,包含执行该项功能的热键和快捷键。(2) 工具栏及数字显示区:在
4、菜单栏的下面是工具栏,工具栏提供了许多常用命令的快速访问按钮。单击某个按钮,即可执行对应的相关操作。数字显示区包含两个部分,左数字区显示的是对象的坐标位置(窗体工作区的左上角为坐标原点,即(0,0)位置),右数字区显示的是对象的高度(向下递增)和宽度,即对象的大小。(3) 工具箱:标准工具箱包含了建立应用程序所需的各种控件。另外,VB还提供了很多ActiveX控件可以添加到工具箱中。(4) 工程管理器窗口:采用Windows资源管理器式的界面,层次分明地列出当前工程中的所有文件。(5) 属性窗口:“属性”窗口包含选定对象(窗体或控件)的属性列表,在设计程序时可通过修改对象的属性设计其外观和相关
5、数据,这些属性值将是程序运行时各对象属性的初始值。(6) 窗体设计器:也称为“对象窗口”,每一个应用程序中的窗体,都有与之对应的窗体设计器窗口。(7) 窗体布局窗口:用来显示窗体在屏幕中的位置。(8) 立即窗口:使用立即窗口可以在中断状态下查询对象的值,也可以在设计时查询表达式的值或命令的结果。1.10 属性窗口主要包括哪些内容?【答】“属性窗口”的内容包括:(1) 对象下拉列表框:标识当前选定对象的名称以及所属的类。单击右端的下拉箭头,可列出当前窗体以及所包含的全部对象的名称,可从中选择要更改其属性的对象。(2) 选项卡:可按字母排序和分类排序两种排序方式显示所选对象的属性。(3) 属性列表
6、框:属性列表框中列出了当前选定的窗体或控件的属性设置值。左半边显示所选对象的所有属性名,右半边是属性值。可以直接在属性窗口中修改属性值,有的属性取值具有预定值,如右侧显示“三点”式按钮或“下拉箭头”式按钮,都有预定值可供选择。在“属性”列表中双击属性值可以遍历所有选项。选择任一属性并按F1键可得到该属性的帮助信息。(4) 属性说明:显示当前属性的简要说明。可通过右键快捷菜单中的“描述”菜单来切换显示或隐藏“属性说明”。1.11 打开属性窗口的方法有哪些?【答】可通过以下方法之一打开属性窗口:(1)单击工具栏中的“属性窗口”按钮。(2)单击“视图”菜单“属性窗口”命令。习题2答案一、选择题2.1
7、 在VB中,被称为对象的是A)窗体B)控件C)控件和窗体D)窗体、控件和属性【答】C。2.2 关于VB“方法”的概念错误的是A)方法是对象的一部分B)方法是预先定义好的操作C)方法是对事件的响应D)方法用于完成某些特定的功能【答】C。2.3 确定窗体控件启动位置的属性是A)Width和HeightB)Width或HeightC)StartUpPositonD)Top和Left【答】C。2.4 下列说法正确的是A)对象的可见性可设为True或FalseB)标题的属性值不可设为任何文本C)属性窗口中属性只能按字母顺序排列D)某些属性的值可以跳过不设置,自动设为空值【答】A。2.5 下列说法错误的是
8、A)方法是对象的一部分B)在调用方法时,对象名是不可缺少的C)方法是一种特殊的过程和函数D)方法调用格式和对象属性使用格式相同【答】B。2.6 下列说法错误的是A)窗体文件的扩展名为.frmB)一个窗体对应一个窗体文件C)VB中一个工程只包含一个窗体D)VB中一个工程最多可以包含255个窗体【答】C。2.7 一个工程必须包含的文件的类型是A)*.vbp *.frm *.frxB)*.vbp *.cls *.basC)*.bas *.ocx */res D)*.frm *.cls *.bas【答】A。2.8 新建一个窗体,其BorderStyle属性设置为Fixed Single,但运行时却无最
9、大化和最小化按钮,可能的原因是A)BorderStyle的值设为Fixed.Single,其设置值的作用即禁止最大化和最小化按钮B)窗体的MaxButton和MinButton值设为FalseC)正常情况下新建的窗体都没有最大化和最小化按钮D)该窗体可用鼠标拖动框的方法改变窗体的大小【答】B。二、填空题2.9 VB程序设计采用的编程机制是_。【答】事件驱动。2.10 VB对象可以分为两类,分别为_和_。【答】预定义对象;用户定义对象。三、思考题2.11 什么是对象?什么是对象的属性、事件和方法?【答】在可视化编程语言中,对象是代码和数据的集合,它可以是窗体和控件,也可以是菜单或数据库等。从可视
10、化编程的角度来看,这些对象都具有属性(数据)和方法(行为方式)。简单地说,属性是用于描述对象的一组特征,方法是对象实施的一些动作,对象的动作则常常要触发事件,而触发事件又可以修改属性。一个对象建立以后,其操作就通过与该对象有关的属性、事件和方法来描述。2.12 如何创建一个应用程序?【答】(1)设计界面。先建立窗体,再利用控件在窗体上创建各种对象。(2)设置属性。设置窗体或控件等对象的属性。(3)编写代码。编写对象的事件代码。(4)运行调试程序。2.13 如何在当前窗体上创建和删除一个对象?【答】向窗体中添加控件的步骤为:(1)单击工具箱中的控件图标,鼠标指针变成一个十字指针。(2)在窗体的工
11、作区按住鼠标左键拖动鼠标,即可在窗体上画出对应控件。删除一个对象的方法为:选中要删除的对象,按键盘上的Delete键。2.14 如何设置对象的属性?【答】设置对象的属性有两种方式:(1) 预设法:在设计界面时,使用属性窗口设置对象的属性。这时只要在属性窗口中选中要修改的属性,然后在右列中键入新的值即可。(2) 现改法:在编写代码的过程中,通过程序代码更改对象的属性。在程序中设置属性的语法格式为:对象名.属性名 属性值2.15 建立对象后,每个属性都有一个默认值,“(名称)”属性和Caption属性的默认值相同,它们有什么区别?能否用代码修改“(名称)”属性?【答】建立对象后,名称属性是事件驱动
12、的标识,而Caption属性是显示在窗体上标签提示。在编写代码中,不能用代码修改“(名称)”属性,而能用代码修改Caption属性。2.16 在没有关闭程序的情况下,如果又添加了一个工程,但运行时会发现运行的仍是第一个工程,这是什么原因?如何解决?【答】这是因为VB默认“工程1”为启动工程。解决办法为:在工程资源器窗口中,右键单击添加的“工程”,在快捷菜单中选择“设置为启动”即可。习题3答案一、选择题3.1 以下关于VB数据类型的说法,不恰当的是A)VB 6.0提供的数据类型主要有字符串型和数值型,此外还有字节、货币、对象、日期、布尔和变体数据类型等B)目前Decimal数据类型只能在变体类型
13、中使用C)用户不能定义自己的数据类型D)布尔型数据只能取两种值,用两个字节存储【答】C。3.2 以下各项,可以作为VB变量名的是A)BookB)2_SeekC)123.58D)Book-1【答】A。3.3 下列哪个符号不能作为VB中的变量名?A)ABCDEFGB)PC)89TWDDFFD)xyz【答】C。3.4 下列( )是VB中的合法变量名。A)AB7B)7ABC)IFD)AB7【答】A。3.5 表达式2 *32 + 2 * 8 / 4 + 32的值为A)64B)31C)49D)22【答】B。3.6 函数Int(Rnd(0)*10)是在( )范围内的整数。A)( 0 , 1 ) B)( 1
14、, 10 ) C)( 0 , 9 ) D)( 1 , 9 )【答】C。3.7 表达式3 2 Mod 1423的值是A)1B)0C)2D)3【答】B。3.8 在VB中,下列两个变量名相同的是A)Japan和Ja_panB)English和ENGLishC)English和EnglD)China和Chin【答】B。3.9 数学式子sin25°写成VB表达式是A)Sin25 B)Sin(25) C)Sin(25°)D)Sin(25*3.14/180)【答】D。3.10 在VB中,要强制用户对所用的变量进行显式声明,可以在( )设置。A)“属性”对话框B)“程序代码”窗口C)“选项
15、”对话框D)对象浏览器【答】C。3.11 下列符号常量的声明中,不合法的是A)Const a As Single = 1.1B)Const a =OKC)Const a As Double = Sin(1)D)Const a As Integer =12【答】C。3.12 在代码编辑器中,续行符是换行书写同一个语句的符号,用以表示续行符的是A)一个空格加一个下划线“_”B)一个下划线“_”C)一个造字符“-”D)一个空格加一个连字符“-”【答】A。二、填空题3.13 如果希望使用变量x来存放数据765 432.123 456,应将变量x声明为_类型。【答】双精度型。3.14 把VB算术表达式a
16、/(b + c/(d + e/Sqr(f)改写成数学表达式为_。【答】。3.15 如果x是一个正实数,对x的第3位小数四舍五入的表达式是_。【答】0.01 * Int(100 * (x + 0.005)。3.16 函数Str(256.36)的值是_。【答】256.36。三、思考题3.17 VB定义了哪几种数据类型?变量有哪几种数据类型?常量有哪几种数据类型?【答】VB 6.0定义了11种数据类型,它们是整型、长整型、单精度浮点型、双精度浮点型、字符型(变长字符串、定长字符串)、逻辑型、日期型、货币型、字节型、对象型、可变类型(数值、字符)。变量的数据类型有数值型、字符型、逻辑型、日期型、对象型
17、、可变数据类型。其中,数值型变量的数据类型有:整型、长整型、单精度浮点型、双精度浮点型、货币型和字节类型。字符型变量的数据类型有变长字符串和定长字符串。常量的数据类型有:字符串常量、数值常量、逻辑常量、日期常量。3.18 下列数据哪些是变量?哪些是常量?是什么类型的常量?(1)name(2) "name"(3)False(4)ff(5)"11/16/99"(6)cj(7)"120"(8)n(9)#11/16/1999# (10)12.345【答】变量有(1),(4),(6),(8)。常量有(2),(3),(5),(7),(9),(10
18、)。其中:(2),(5),(7)为字符型常量,(3)为逻辑型常量,(9)为日期型常量,(10)为数值型常量。3.19 在VB中,对于没有赋值的变量,系统默认值是什么?【答】使用声明语句建立一个变量后,VB自动将数值类型的变量赋初值0,变长的字符串被初始化为一个零长度的字符串(""),而定长的字符串则用空格填充。Variant变量被初始化为Empty,逻辑型的变量则初始化为False。3.20 将下列数学表达式改写为等价的VB算术表达式。(1)(2)(3)【答】VB中的算术表达式与数学中的表达式写法有所区别,主要表现在:VB中每个符号占1格,所有符号都必须一个一个并排写在同一
19、横线上,不能在右上角或右下角写方次或下标;在数学表达式中省略的内容必须重新写上;所有括号都要使用小括号“( )”,而且括号必须配对;数学表达式中的有些符号,需要改成VB中可以表示的符号。(1)(1 + y / x) / (1 y / x)(2)(Abs( a * b c3)0.5 或 (Abs(a * b c3)(1 / 2) 或 Sqr(Abs(a * b c3)(3)(s * (s a) * (s b) * (s c)0.5 或 (s * (s a) * (s b) * (s c) )(1 / 2) 或 Sqr(s * (s a) * (s b) * (s c)3.21 写出下列表达式的值
20、。(1)( 2 + 8 * 3 ) / 2(2)32 + 8(3)#11/22/99# 10 (4)"ZYX" & 123 & "ABC"【答】题中各表达式的值分别为:(1)13(2)17(3)#11/12/99#(4)"ZYX123ABC"3.22 设A = 7, B = 3, C = 4,求下列表达式的值:(1)A + 3 * C(2)A2 / 6(3)A / 2 * 3 / 2(4)A Mod 3 +B3 / C 5【答】题中各表达式的值分别为:(1)19(2)8.667(3)5.25(4)23.23 写出下列表
21、达式的值。(1)"Visual"+"Basic"(2)"xyz" & 1234 & "ABCD"【答】题中各表达式的值分别为:(1)"VisualBasic"(2)"xyz1234ABCD"3.24 写出下列函数的值。(1)Int(3.14159) (2)Sqr(Sqr(64)(3)Int(Abs(99100)/2) (4)Sgn(7*3+2) 【答】函数的值为:(1) 4 (2)2.(3) 3 (4)1习题4答案一、选择题4.1 要将名为MyForm的窗体显
22、示出来,正确的使用方法是A)MyForm.ShowB)Show.MyFormC)MyForm LoadD)MyForm Show【答】A。4.2 如果要将窗体中的某个命令按钮设置成无效状态,应设置命令按钮的( )属性。A)ValueB)VisibleC)EnabledD)Default【答】C。4.3 输入代码时,VB可以自动检测( )错误。A)语法错误B)编译错误C)运行错误D)逻辑错误【答】A。4.4 在VB中,要将一个窗体加载到内存进行预处理但不显示,应使用的语句是A)LoadB)ShowC)HideD)Unload【答】A。4.5 以下能在窗体Form1的标题栏中显示"Vis
23、ualBasic窗体"的语句是A)Form1.Name="VisualBasic窗体"B)Form1.Title="VisualBasic窗体"C)Form1.Caption="VisualBasic窗体"D)Form1.Text="VisualBasic窗体"【答】C。4.6 对下列程序段,说法正确的是( ) Text1.Top=2000 : Text1.Left=800A)Text对象的左边界距窗体的左边界是800twip,上边界距窗体的上边界为2000twipB)Text1的左边界距屏幕的左边界为8
24、00twip,上边界距屏幕的上边界为2000twipC)Text1对象的宽度为2000twip,高度为800twipD)Text1对象的高度为800点,宽度为2000点【答】A。4.7 单击窗体上的关闭按钮时,触发的事件是A)Form_Initialize()B)Form_Load()C)Form_Unload()D)Form_Click()【答】C。4.8 用于将屏幕上的对象分组的控件是A)列表框B)组合框C)标签D)框架【答】D。4.9 能够获得一个文本框中被选取文本的内容的属性是A)TextB)LengthC)SeltextD)SelStart【答】C。4.10 用InputBox函数设
25、计的对话框,其功能是A)只能接收用户输入的数据,但不会返回任何信息B)能接收用户输入的数据,并能返回用户输入的信息C)既能用于接收用户输入的信息,又能用于输出信息D)专门用于输出信息【答】B。二、填空题4.11 下列语句的输出结果为_。Print Format(5689.36,000,000.000)【答】005,689.360。4.12 为了使一个窗体从屏幕消失但仍在内存中,所使用的方法或语句为_。【答】Hide方法。4.13 当对象得到焦点时,会触发_事件,当对象失去焦点时将触发_事件。【答】GotFocus;LostFocus。4.14 新建一个工程,内有两个窗体,窗体Form1上有一个
26、命令按钮Command1,单击该按钮,Form1窗体消失,显示Form2窗体,试补充程序。Private Sub Command1_Click() _ Form2._End Sub【答】Me.Hide或者Forml.Hide或者Unload Me;Show。4.15 在文本框中要使键入的所有字符显示为*号,应设置_属性为"*"。【答】PasswordChar。三、编程题4.16 设计工程,已知圆的半径r,求圆面积S。【解答】 设圆半径为r,圆面积为S。根据数学知识,已知圆半径r,求圆面积S的公式为:。设计步骤如下。(1)建立应用程序用户界面,如图4-1所示。(2)设置对象属
27、性:Label1的Caption属性为“已知圆半径r=”;Text1的Text属性为空;Command1的Caption属性为“圆面积为:”;Label2的Caption属性为空;Label2的BorderStyle属性为1-Fixed Single。各控件的属性设置如图4-2所示。 图4-1 建立用户界面 图4-2 设置各控件的属性(3)编写程序代码。写出“圆面积为:”命令按钮Command1的Click事件代码为:Private Sub Command1_Click( ) Const pi = 3.14 Dim r As Single, S As Single r = Val(Text1.
28、Text) S = pi * r 2 Label2.Caption = SEnd Sub运行程序时,在文本框输入圆半径的值,单击“圆面积为:”按钮后,输出结果如图4-3所示。也可以不用文本框接收输入值,改用InputBox函数接收圆的半径r,求圆面积S,代码如下。图4-3 程序运行结果Private Sub Form_Load( ) Show Const pi = 3. Dim r As Single, S As Single r = Val(InputBox("输入半径:", "计算圆面积", "10") FontSize = 18
29、 S = pi * r 2 Print "圆面积:" SEnd Sub程序运行时,首先显示如图4-4所示的对话框,在该对话框的文本框中输入数字,按Enter键或单击“确定”按钮后,才能显示窗体。图4-4 输入对话框用InputBox函数输入文本虽然很方便,但是由于输入框弹出后将暂停程序的运行,直到用户响应,因此输入框不符合VB自由环境的精神。输入框适合于像要求用户输入口令等这样不常见的输入方式。还可以用更好的用户输入方式,如文本框、选项按钮等。4.17 已知平面坐标系中两点的坐标,求两点间的距离。【解答】 由数学知识可知,已知两点坐标(xA, yA)、(xB, yB),求两
30、点间距离的计算公式为建立用户界面如图4-5所示。在该界面中用TextBox控件输入数据,用Label控件输出数据。为了形象地表示两点之间的距离,可用Picture控件插入一幅图,该图用画图软件绘制。命令按钮Command1的Click事件代码为:Private Sub Command1_Click( ) Dim xa As Single, xb As Single Dim ya As Single, yb As Single Dim s As Single xa = Val(Text1.Text) ya = Val(Text2.Text) xb = Val(Text3.Text) yb = V
31、al(Text4.Text) s = Sqr(xb - xa) 2 + (yb - ya) 2) Label6.Caption = sEnd Sub程序运行结果如图4-6所示。 图4-5 设计用户界面 图4-6 程序运行结果4.18 在文本框中输入三种商品的单价、购买数量,计算并输出所用的总金额。【解答】 假设第一种商品的单价和购买数量分别是a1和a2,第二种商品的单价和购买数量分别是b1和b2,第三种商品的单价和购买数量分别是c1和c2,所用总金额为x。通过TextBox控件输入这三种商品的单价、购买数量,然后利用公式x = a1*a2+b1*b2+c1*c2进行计算,最后输出x的值。设计步
32、骤如下。(1)建立应用程序用户界面,并设置对象属性,如图4-7所示。图4-7 计算商品总金额(2)编写程序代码。写出Command1_Click( )的事件代码为:Private Sub Command1_Click( ) Dim a1 As Single, b1 As Single, c1 As Single Dim a2 As Integer, b2 As Integer, c2 As Integer Dim x As Single a1 = Val(Text1.Text) a2 = Val(Text2.Text) b1 = Val(Text3.Text) b2 = Val(Text4.T
33、ext) c1 = Val(Text5.Text) c2 = Val(Text6.Text) x = a1 * a2 + b1 * b2 + c1 * c2 Text7.Text = xEnd Sub4.19 设计工程,输出在指定范围内的三个随机数,范围在文本框中输入。【解答】 随机函数Rnd( )可以返回一个(0,1)区间中的随机小数,那么,Rnd * a语句可以返回(0, a)区间中的随机实数(带小数)。若n, m均为整数,则表达式:Int(m + 1 n) * Rnd) + n的值是闭区间 n, m 中的一个随机整数。设计步骤如下。(1)设计程序界面及设置控件属性。新建一个工程,进入窗体
34、设计器,在窗体中增加一个框架控件Frame1,一个命令按钮Command1和三个标签Label1Label3。选定Frame1,在其中增加两个文本框Text1和Text2以及一些标签。修改对象属性参见表4-1。设置属性后的窗体如图4-8所示。表4-1 属性设置对 象属 性属 性 值说 明Frame1Caption请指定随机整数的范围:框架的标题Command1Caption生成随机数按钮的标题Label1Label3Caption0Text1, Text2Text0, 1(2)编写程序代码。Private Sub Command1_Click( ) Randomize n = Val(Text
35、1.Text) m = Val(Text2.Text) Label4.Caption = Int(m + 1 n) * Rnd) + n Label5.Caption = Int(m + 1 n) * Rnd) + n Label6.Caption = Int(m + 1 n) * Rnd) + nEnd Sub运行程序,在文本框中输入范围值后,单击“生成随机数”按钮,可以不断生成指定范围之内的随机整数,如图4-9所示。 图4-8 设计用户界面 图4-9 生成随机数4.20 使用大小写转换函数设计程序,实现在文本框中输入英文字母,按“转大写”按钮,文本变为大写;按“转小写”按钮,文本变为小写。
36、【解答】 本题主要使用大小写转换函数UCase( )和LCase( ),另外还用到了KeyUp(键抬起)事件。设计步骤如下。(1)建立应用程序用户界面,并设置对象属性。新建一个工程,进入窗体设计器,在窗体中增加一个标签Label1,一个文本框Text1和三个命令按钮Command1Command3,参照图4-10设置各个对象的属性。(a) (b) (c)图4-10 大小写转换(2)设计代码。首先设计文本框的KeyUp事件代码,使得输入的字符存入文本框的Tag属性中:Private Sub Text1_KeyUp(KeyCode As Integer, Shift As Integer) Tex
37、t1.Tag = Text1.TextEnd Sub编写命令按钮Command1的Click事件代码:Private Sub Command1_Click( ) Text1.Text = UCase(Text1.Tag)End Sub编写命令按钮Command2的Click事件代码:Private Sub Command2_Click( ) Text1.Text = LCase(Text1.Tag)End Sub编写命令按钮Command3的Click事件代码:Private Sub Command3_Click( ) Text1.Text = Text1.TagEnd Sub4.21 设某职
38、工应发工资x元,试求各种票额钞票总张数最少的付款方案。【解答】 可以从最大的票额(100元)开始,算出所需的张数,然后在剩下的部分算出较小票额的张数,直到最小票额(1元)。设计步骤如下。(1)建立应用程序用户界面。新建一个工程,进入窗体设计器,增加一个命令按钮Command1,14个标签Label1Label14,七个文本框Text1Text7。用户界面如图4-11(a)所示。 (a) (b)图4-11 建立程序界面与程序运行结果(2)设置对象属性,参见表4-2。其中标签的标题属性参见图4-11(a)。表4-2 属性设置对 象属 性属 性 值说 明Text1Text0文本框的内容Text2Te
39、xt7Text文本框的内容Alignment1-Right Justify文本内容右对齐LockedTrue文本内容只读Command1Caption应付按钮标题DefaultTrue窗体的默认按钮(3)编写程序代码。编写命令按钮Command1的Click事件代码:Private Sub Command1_Click( ) x = Val(Text1.Text) ' x为实发工资数 y = x 100 : Text2.Text = y ' 求100元票张数并显示 x = x 100 * y ' 求剩余款项 y = x 50 : Text3.Text = y '
40、 求50元票张数并显示 x = x 50 * y ' 求剩余款项 y = x 10 : Text4.Text = y ' 求10元票张数并显示 x = x 10 * y ' 求剩余款项 y = x 5 : Text5.Text = y ' 求5元票张数并显示 x = x 5 * y ' 求剩余款项 y = x 2 : Text6.Text = y ' 求2元票张数并显示 x = x 2 * y : Text7.Text = x ' 求1元票张数并显示End Sub编写文本框Text1的Change事件代码:Private Sub Text
41、1_Change( ) ' 当在Text1中输入新数时,清空其他文本框中的内容 Text2.Text = "" Text3.Text = "" Text4.Text = "" Text5.Text = "" Text6.Text = "" Text7.Text = ""End Sub运行结果如图4-11(b)所示。【说明】 文本框的Change事件当文本框中的内容被改变时发生。下面用信息对话框来输出各种票额钞票张数的付款方案,如图4-12所示。图4-12 信息对话框只
42、需将图4-11中多余的文本框和标签删去,并改写命令按钮的Click事件代码如下:Private Sub Command1_Click( ) x = val(Text1.Text) ' x为实发工资数 y1 = x 100 ' 求100元票张数 x = x Mod 100 ' 求剩余款项 y2 = x 50 ' 求50元票张数 x = x Mod 50 ' 求剩余款项 y3 = x 10 ' 求10元票张数 x = x Mod 10 ' 求剩余款项 y4 = x 5 ' 求5元票张数 x = x Mod 5 ' 求剩余款项
43、y5 = x 2 ' 求2元票张数 x = x Mod 2 ' 求1元票张数 Text1.SelStart = 0 Text1.SelLength = Len(Text1.Text) Text1.SetFocus a = "=" & Chr(13) a = a & Format(Y1 & "张 百元票,", "") & _ Format(Y2 & "张 50元票", "") & Chr(13) a = a & Format(
44、Y3 & "张 10元票,", "") & _ Format(Y4 & "张 5元票", "") & Chr(13) a = a & Format(Y5 & "张 2元票,", "") & _ Format(x & "张 1元票", "") & Chr(13) a = a & "=" & Chr(13) a = a & &
45、quot;共计" & Text1.Text & "元" c = MsgBox(a, 0, "应发工资")End Sub【说明】 文本框的SelStart属性用来设置(或返回)所选择的文本的起始点,如果没有文本被选中,则指出插入点的位置。SelLength属性用来设置(或返回)所选择的字符数。函数Len( )返回字符串数据的长度。在命令按钮的Click事件代码中调用SetFocus方法,可使光标重新回到输入框Text1。使用Mod运算可以得到相除的余数。习题5答案一、选择题5.1 下面语句正确的是A)If x<3*y And
46、 x>y Then y=x3B)If x<3*y And x>y Then y=3xC)If x<3*y : x>y Then y=x3D)If x<3*y : x>y Then y=x*3【答】A。5.2 下列语句正确的是A)If A B Then Print "A不等于B"B)If A < >B Then Printf "A不等于B"C)If A < >B Then Print "A不等于B"D)If A B Print "A不等于B"【答】C。
47、5.3 计算z的值,当x大于y时,z=x;否则z=y。下列语句错误的是A)If x>=y Then z=x : z=yB)If x>=y Then z=x Else z=yC)z=y : If x>=y Then z=xD)If x<=y Then z=y Else z=x【答】A。5.4 下列程序段的执行结果为X=2Y=5If X * Y <1 Then Y=Y-1 Else Y=-1Print Y - X>0A)TrueB)FalseC)-1D)1【答】B。5.5 下列程序段执行结果为x=5y=-6If Not x>0 Then x=y-3 Els
48、e y=x+3Print x-y;y-xA)-3 3B)5 -9C)3 -3D)-6 5【答】A。5.6 下列程序段的执行结果为a=95If a>60 Then I=1If a>70 Then I=2If a>80 Then I=3If a>90 Then I=4Print I=; IA)I=1B)I=2C)I=3D)I=4【答】D。5.7 下面程序段执行结果为x=Int(Rnd()+4)Select Case x Case 5 Print "excellent" Case 4 Print "good" Case 3 Print
49、"pass" Case Else Print "fail"End SelectA)excellentB)goodC)passD)fail【答】B。5.8 在窗体上画一个名称为Timer1的计时器控件,要求每隔0.5秒发生一次计时器事件,则以下正确的属性设置语句是A)Timer1.Interval=0.5B)Timer1.Interval=5C)Timer1.Interval=50D)Timer1.Interval=500【答】D。二、填空题5.9 闰年的条件是:年号(year)能被4整除,但不能被100整除;或者能被400整除。闰年的VB布尔表达式是_。
50、【答】设y表示年份,判断闰年的布尔表达式为:(y Mod 4 = 0 And y Mod 100 <> 0) Or (y Mod 400 = 0)或表示为:(Int(y / 4) = y / 4 And Int(y / 100) <> y / 100) Or (Int(y / 400) = y / 400)5.10 一元二次方程ax2 + bx + c = 0有实根的条件为:a 0,并且b2 - 4ac 0,其相应的VB布尔表达式为_。【答】a <> 0 And b2 4 * a * c >= 05.11 有下面一个程序段,从文本框中输入数据,如果该数
51、据满足条件,除以4余1,除以5余2,则输出,否则,将焦点定位在文本框中,并清除文本框的内容。Private Sub Command1_Click() x=Val(Text1.Text) If _ Then Print x Else Text1.Text="" _ End IfEnd Sub【答】x Mod 4 = 1 And x Mod 5 = 2; Text1.Setfoucs。5.12 下列程序的功能是:当x<50时,y=0.8×x;当50x100时,y=0.7×x;当x100时,没有意义。请填空。Private Sub Command1_Cl
52、ick() Dim x As Single x=InputBox("输入x的值") _ Case Is<50 y=0.8 * x Case 50 To 100 y=0.7 * x _ Print "输入的数据出界!" End Select Print x , yEnd Sub【答】Select Case x;Case Else。5.13 在窗体上画一个文本框和一个计时器控件,名称分别为Text1和Timer1,在属性窗中把计时器的Interval属性设置为100,Enabled属性设置为False。程序运行后,如果单击命令按钮,则每隔一秒钟在文本框中显示一次当前的时间。请补充程序。Private Sub Command1_Click() Timer1._End SubPrivate Sub Timer1_Timer() Text1.Text=TimeEnd Sub【答】Enabled=True。三、编程题5.14 x, y关系如下,设计程序,输入x,可计算出y的值。【解答】 该题是数学中的一个分段函数,它表示当x 0时,用公式y = 1 + x来计算y的值;当x 0时,用公式y = 1 2x来计算y的值。在选择条件时,既可以选择x0作为条件,也可以选择x 0作为条件。在这里,选x0作为
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 玻璃瓶生产车间员工培训
- 2024年车展场地租赁条款3篇
- 2024年示范文本:动产让与担保协议2篇
- 胆囊癌的临床护理
- 2024年式电动车短期租赁协议4篇
- (2024)小年活动主题方案
- 2024年环保项目政府贴息借款协议3篇
- 科技大会主持人录用协议
- 烟草制造事故防范条例
- 主持人选拔赛代理协议
- 学术规范与论文写作智慧树知到答案2024年浙江工业大学
- 2024年典型事故案例警示教育手册15例
- 《非计划性拔管》课件
- 酒店企业员工消防防火安全知识培训
- MSDS(10-100048)聚脂烤漆
- 船舶风险辩识、评估及管控须知
- 减资专项审计报告
- 投标流程及管理制度
- 机场现场指挥培训副本ppt课件
- 章质谱法剖析PPT课件
- 加强高含硫气田开采安全管理工作的建议
评论
0/150
提交评论