欢迎来到装配图网! | 帮助中心 装配图网zhuangpeitu.com!
装配图网
ImageVerifierCode 换一换
首页 装配图网 > 资源分类 > DOC文档下载
 

VB程序设计教程 习题解答

  • 资源ID:28299181       资源大小:1,005KB        全文页数:83页
  • 资源格式: DOC        下载积分:15积分
快捷下载 游客一键下载
会员登录下载
微信登录下载
三方登录下载: 微信开放平台登录 支付宝登录   QQ登录   微博登录  
二维码
微信扫一扫登录
下载资源需要15积分
邮箱/手机:
温馨提示:
用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
支付方式: 支付宝    微信支付   
验证码:   换一换

 
账号:
密码:
验证码:   换一换
  忘记密码?
    
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

VB程序设计教程 习题解答

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+E【答】C。二、填空题1.5 与传统的程序设计语言相比,Visual Basic最突出的特点是_。【答】事件驱动编程机制。1.6 如果不使用鼠标,用键盘打开菜单和执行菜单命令,第一步应按_键。【答】功能键F10或Alt键。1.7 建立一个新的标准模块,应该选择_菜单下的“添加模块”命令。【答】“工程”菜单。三、思考题1.8 简述Visual Basic的特点。【答】与一般的程序设计语言相比,VB具有以下特点: (1) 可视化的设计平台; (2) 面向对象的设计方法; (3) 事件驱动的编程机制; (4) 结构化的设计语言; (5) 充分利用Windows资源; (6) 开放的数据库功能与网络支持。1.9 简述Visual Basic集成开发环境的组成。【答】VB 6.0集成开发环境除了具有标准Windows环境的标题栏、菜单栏、工具栏外,还有工具箱、属性窗口、工程管理器窗口、窗体设计器、立即窗口、窗体布局窗口等有用的开发工具。(1) 标题栏和菜单栏:标题栏中显示的有窗体控制菜单图标、当前激活的工程名称、当前工作模式以及最小化、最大化还原、关闭按钮。菜单栏中显示了“文件”、“编辑”、“视图”、“工程”、“格式”等菜单项,其中包含了VB编程的常用命令。单击菜单栏中的菜单名,即可打开下拉菜单。在下拉菜单中显示了各种功能子菜单,包含执行该项功能的热键和快捷键。(2) 工具栏及数字显示区:在菜单栏的下面是工具栏,工具栏提供了许多常用命令的快速访问按钮。单击某个按钮,即可执行对应的相关操作。数字显示区包含两个部分,左数字区显示的是对象的坐标位置(窗体工作区的左上角为坐标原点,即(0,0)位置),右数字区显示的是对象的高度(向下递增)和宽度,即对象的大小。(3) 工具箱:标准工具箱包含了建立应用程序所需的各种控件。另外,VB还提供了很多ActiveX控件可以添加到工具箱中。(4) 工程管理器窗口:采用Windows资源管理器式的界面,层次分明地列出当前工程中的所有文件。(5) 属性窗口:“属性”窗口包含选定对象(窗体或控件)的属性列表,在设计程序时可通过修改对象的属性设计其外观和相关数据,这些属性值将是程序运行时各对象属性的初始值。(6) 窗体设计器:也称为“对象窗口”,每一个应用程序中的窗体,都有与之对应的窗体设计器窗口。(7) 窗体布局窗口:用来显示窗体在屏幕中的位置。(8) 立即窗口:使用立即窗口可以在中断状态下查询对象的值,也可以在设计时查询表达式的值或命令的结果。1.10 属性窗口主要包括哪些内容?【答】“属性窗口”的内容包括:(1) 对象下拉列表框:标识当前选定对象的名称以及所属的类。单击右端的下拉箭头,可列出当前窗体以及所包含的全部对象的名称,可从中选择要更改其属性的对象。(2) 选项卡:可按字母排序和分类排序两种排序方式显示所选对象的属性。(3) 属性列表框:属性列表框中列出了当前选定的窗体或控件的属性设置值。左半边显示所选对象的所有属性名,右半边是属性值。可以直接在属性窗口中修改属性值,有的属性取值具有预定值,如右侧显示“三点”式按钮或“下拉箭头”式按钮,都有预定值可供选择。在“属性”列表中双击属性值可以遍历所有选项。选择任一属性并按F1键可得到该属性的帮助信息。(4) 属性说明:显示当前属性的简要说明。可通过右键快捷菜单中的“描述”菜单来切换显示或隐藏“属性说明”。1.11 打开属性窗口的方法有哪些?【答】可通过以下方法之一打开属性窗口:(1)单击工具栏中的“属性窗口”按钮。(2)单击“视图”菜单“属性窗口”命令。习题2答案一、选择题2.1 在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 下列说法错误的是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,但运行时却无最大化和最小化按钮,可能的原因是A)BorderStyle的值设为Fixed.Single,其设置值的作用即禁止最大化和最小化按钮B)窗体的MaxButton和MinButton值设为FalseC)正常情况下新建的窗体都没有最大化和最小化按钮D)该窗体可用鼠标拖动框的方法改变窗体的大小【答】B。二、填空题2.9 VB程序设计采用的编程机制是_。【答】事件驱动。2.10 VB对象可以分为两类,分别为_和_。【答】预定义对象;用户定义对象。三、思考题2.11 什么是对象?什么是对象的属性、事件和方法?【答】在可视化编程语言中,对象是代码和数据的集合,它可以是窗体和控件,也可以是菜单或数据库等。从可视化编程的角度来看,这些对象都具有属性(数据)和方法(行为方式)。简单地说,属性是用于描述对象的一组特征,方法是对象实施的一些动作,对象的动作则常常要触发事件,而触发事件又可以修改属性。一个对象建立以后,其操作就通过与该对象有关的属性、事件和方法来描述。2.12 如何创建一个应用程序?【答】(1)设计界面。先建立窗体,再利用控件在窗体上创建各种对象。(2)设置属性。设置窗体或控件等对象的属性。(3)编写代码。编写对象的事件代码。(4)运行调试程序。2.13 如何在当前窗体上创建和删除一个对象?【答】向窗体中添加控件的步骤为:(1)单击工具箱中的控件图标,鼠标指针变成一个十字指针。(2)在窗体的工作区按住鼠标左键拖动鼠标,即可在窗体上画出对应控件。删除一个对象的方法为:选中要删除的对象,按键盘上的Delete键。2.14 如何设置对象的属性?【答】设置对象的属性有两种方式:(1) 预设法:在设计界面时,使用属性窗口设置对象的属性。这时只要在属性窗口中选中要修改的属性,然后在右列中键入新的值即可。(2) 现改法:在编写代码的过程中,通过程序代码更改对象的属性。在程序中设置属性的语法格式为:对象名.属性名 属性值2.15 建立对象后,每个属性都有一个默认值,“(名称)”属性和Caption属性的默认值相同,它们有什么区别?能否用代码修改“(名称)”属性?【答】建立对象后,名称属性是事件驱动的标识,而Caption属性是显示在窗体上标签提示。在编写代码中,不能用代码修改“(名称)”属性,而能用代码修改Caption属性。2.16 在没有关闭程序的情况下,如果又添加了一个工程,但运行时会发现运行的仍是第一个工程,这是什么原因?如何解决?【答】这是因为VB默认“工程1”为启动工程。解决办法为:在工程资源器窗口中,右键单击添加的“工程”,在快捷菜单中选择“设置为启动”即可。习题3答案一、选择题3.1 以下关于VB数据类型的说法,不恰当的是A)VB 6.0提供的数据类型主要有字符串型和数值型,此外还有字节、货币、对象、日期、布尔和变体数据类型等B)目前Decimal数据类型只能在变体类型中使用C)用户不能定义自己的数据类型D)布尔型数据只能取两种值,用两个字节存储【答】C。3.2 以下各项,可以作为VB变量名的是A)BookB)2_SeekC)123.58D)Book-1【答】A。3.3 下列哪个符号不能作为VB中的变量名?A)ABCDEFGB)P000000C)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 , 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)“选项”对话框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/(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种数据类型,它们是整型、长整型、单精度浮点型、双精度浮点型、字符型(变长字符串、定长字符串)、逻辑型、日期型、货币型、字节型、对象型、可变类型(数值、字符)。变量的数据类型有数值型、字符型、逻辑型、日期型、对象型、可变数据类型。其中,数值型变量的数据类型有:整型、长整型、单精度浮点型、双精度浮点型、货币型和字节类型。字符型变量的数据类型有变长字符串和定长字符串。常量的数据类型有:字符串常量、数值常量、逻辑常量、日期常量。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)。其中:(2),(5),(7)为字符型常量,(3)为逻辑型常量,(9)为日期型常量,(10)为数值型常量。3.19 在VB中,对于没有赋值的变量,系统默认值是什么?【答】使用声明语句建立一个变量后,VB自动将数值类型的变量赋初值0,变长的字符串被初始化为一个零长度的字符串(""),而定长的字符串则用空格填充。Variant变量被初始化为Empty,逻辑型的变量则初始化为False。3.20 将下列数学表达式改写为等价的VB算术表达式。(1)(2)(3)【答】VB中的算术表达式与数学中的表达式写法有所区别,主要表现在:VB中每个符号占1格,所有符号都必须一个一个并排写在同一横线上,不能在右上角或右下角写方次或下标;在数学表达式中省略的内容必须重新写上;所有括号都要使用小括号“( )”,而且括号必须配对;数学表达式中的有些符号,需要改成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 写出下列表达式的值。(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.16666666666667(3)5.25(4)23.23 写出下列表达式的值。(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.828427(3) 3 (4)1习题4答案一、选择题4.1 要将名为MyForm的窗体显示出来,正确的使用方法是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的标题栏中显示"VisualBasic窗体"的语句是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的左边界距屏幕的左边界为800twip,上边界距屏幕的上边界为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函数设计的对话框,其功能是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上有一个命令按钮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)设置对象属性: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.Text) S = pi * r 2 Label2.Caption = SEnd Sub运行程序时,在文本框输入圆半径的值,单击“圆面积为:”按钮后,输出结果如图4-3所示。也可以不用文本框接收输入值,改用InputBox函数接收圆的半径r,求圆面积S,代码如下。图4-3 程序运行结果Private Sub Form_Load( ) Show Const pi = 3.1415926 Dim r As Single, S As Single r = Val(InputBox("输入半径:", "计算圆面积", "10") FontSize = 18 S = pi * r 2 Print "圆面积:" SEnd Sub程序运行时,首先显示如图4-4所示的对话框,在该对话框的文本框中输入数字,按Enter键或单击“确定”按钮后,才能显示窗体。图4-4 输入对话框用InputBox函数输入文本虽然很方便,但是由于输入框弹出后将暂停程序的运行,直到用户响应,因此输入框不符合VB自由环境的精神。输入框适合于像要求用户输入口令等这样不常见的输入方式。还可以用更好的用户输入方式,如文本框、选项按钮等。4.17 已知平面坐标系中两点的坐标,求两点间的距离。【解答】 由数学知识可知,已知两点坐标(xA, yA)、(xB, yB),求两点间距离的计算公式为建立用户界面如图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 = Val(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的值。设计步骤如下。(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.Text) 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)设计程序界面及设置控件属性。新建一个工程,进入窗体设计器,在窗体中增加一个框架控件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(Text1.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 使用大小写转换函数设计程序,实现在文本框中输入英文字母,按“转大写”按钮,文本变为大写;按“转小写”按钮,文本变为小写。【解答】 本题主要使用大小写转换函数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) Text1.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 设某职工应发工资x元,试求各种票额钞票总张数最少的付款方案。【解答】 可以从最大的票额(100元)开始,算出所需的张数,然后在剩下的部分算出较小票额的张数,直到最小票额(1元)。设计步骤如下。(1)建立应用程序用户界面。新建一个工程,进入窗体设计器,增加一个命令按钮Command1,14个标签Label1Label14,七个文本框Text1Text7。用户界面如图4-11(a)所示。 (a) (b)图4-11 建立程序界面与程序运行结果(2)设置对象属性,参见表4-2。其中标签的标题属性参见图4-11(a)。表4-2 属性设置对 象属 性属 性 值说 明Text1Text0文本框的内容Text2Text7Text文本框的内容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 求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 Text1_Change( ) 当在Text1中输入新数时,清空其他文本框中的内容 Text2.Text = "" Text3.Text = "" Text4.Text = "" Text5.Text = "" Text6.Text = "" Text7.Text = ""End Sub运行结果如图4-11(b)所示。【说明】 文本框的Change事件当文本框中的内容被改变时发生。下面用信息对话框来输出各种票额钞票张数的付款方案,如图4-12所示。图4-12 信息对话框只需将图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 求剩余款项 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(Y3 & "张 10元票,", "") & _ Format(Y4 & "张 5元票", "") & Chr(13) a = a & Format(Y5 & "张 2元票,", "") & _ Format(x & "张 1元票", "") & Chr(13) a = a & "=" & Chr(13) a = a & "共计" & Text1.Text & "元" c = MsgBox(a, 0, "应发工资")End Sub【说明】 文本框的SelStart属性用来设置(或返回)所选择的文本的起始点,如果没有文本被选中,则指出插入点的位置。SelLength属性用来设置(或返回)所选择的字符数。函数Len( )返回字符串数据的长度。在命令按钮的Click事件代码中调用SetFocus方法,可使光标重新回到输入框Text1。使用Mod运算可以得到相除的余数。习题5答案一、选择题5.1 下面语句正确的是A)If x<3*y And 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。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 Else 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 "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布尔表达式是_。【答】设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 有下面一个程序段,从文本框中输入数据,如果该数据满足条件,除以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.8x;当50x100时,y=0.7x;当x100时,没有意义。请填空。Private Sub Command1_Click() 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作为选择条件。这时,当x0为真时,执行y = 1 + x;为假时,执行y = 1 2x。设计步骤如下。(1)建立应用程序用户界面并设置对象属性,参见图5-1。图5-1 计算分段函数的值(2)编写程序代码。命令按钮Command1的Click事件代码为:Private Sub Command1_Click() Dim x As Single, y As Single x = Val(Text1.Text) If x >= 0 Then y = 1 + x Else y = 1 - 2 * x Text2.Text = yEnd Sub程序运行结果如图5-1所示。也可以利用多行If语句编写代码:Private Sub Command1_Click() Dim x As Single, y As Single x = Val(Text1.Text) If x >= 0 Then y = 1 + x Else y = 1 2 * x End If Text2.Text = y Text2.Locked = TrueEnd Sub5.15 若基本工资大于等于600元,增加工资20%;若小于600元,且大于等于400元,则增加工资15%;若小于400元,则增加工资10%。请根据用户输入的基本工资,计算出增加后的工资。【解答】 设计步骤如下。(1)建立应用程序用户界面,并设置对象属性,如图5-2所示。图5-2 计算基本工资(2)编写程序代码。编写文本框Text1的KeyPress(按键)事件代码:Private Sub Text1_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then n = Val(Text1.Text) Select Case n Case Is >= 600 gz = n * 1.2 Case Is >= 400 gz = n * 1.15 Case Else gz = n * 1.1 End Select Label1.Caption = "增加后的基本工资为:" & gz & "元" Text1.SelStart = 0 Text1.SelLength = Len(Text1.Text) End IfEnd Sub5.16 利用单选钮组控制输入文本的字体,界面如图5-3所示。图5-3 使用单选钮组【解答】 设计步骤如下。(1)建立应用程序用户界面并设置对象属性。新建一个工程,进入窗体设计器,增加一个标签Label1,一个文本框Text1和四个单选钮Option1Option4,如图5-4所示。图5-4 添加控件然后设置对象属性,见表5-1。表5-1 属性设置对 象属 性属 性 值说 明Label1Caption请输入文本Text1Text清空Option1Caption宋体ValueTrue单选钮组中的默认按钮Option2Caption隶书Option3Caption黑体Option4Caption楷体并设置适当的字体大小,如图5-3所示。(2)编写程序代码。编写单选钮Option1的Click事件代码:Private Sub Option1_Click( ) Text1.FontName = "宋体"End Sub编写单选钮Option2的Click事件代码:Private Sub Option2_Click( ) Text1.FontName = "隶书"End Sub编写单选钮Option3的Click事件代码:Private Sub Option3_Click( ) Text1.FontName = "黑体"End Sub编写单选钮Option4的Click事件代码:Private Sub Option4_Click( ) Text1.FontName = "楷体_GB2312"End Sub【说明】 一个单选钮可以用以下方法之一进行选择。在运行期间单击单选钮。用Tab键定位到单选钮组,然后在组内使用方向键(箭头键)定位

注意事项

本文(VB程序设计教程 习题解答)为本站会员(仙***)主动上传,装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知装配图网(点击联系客服),我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!