VB程序设计课后习题答案.docx
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《VB程序设计课后习题答案.docx》由用户(最好的沉淀)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VB 程序设计 课后 习题 答案
- 资源描述:
-
1、VB 课后习题解答第一、二章:1、 简述 VB6.0的主要特点答:方便、直观的可视化设计工具;面向对象程序设计方法;事件驱动的编程机制;易学易用的应用程序集成开发环境;结构化程序设计语言;完备的联机帮助功能;强大的多媒体、数据库和网络功能。2、 当正常安装 VB6.0后,误把Windows 子目录删除。当重新安装Windows 后,是否需要再次安装VB6.0? 答:要重新安装的。因为安装 VB6.0时,有些 VB 程序被系统自动安装在 Windows 目录下,所以一旦删除 Windows 子目录,就必须重新安装 VB6.0。3、 Visual Basic 6.0分为学习版、专业版和企业版,如何
2、知道所安装的是哪个版本? 答:在 VB6.0的启动界面上,能显示对应的版本。4、 叙述建立一个完整应用程序的过程答:首先建立用户界面的控件对象(简称控件);然后对控件属性进行设置;再对控件事件过程及编程;保存应用程序;程序调试和运行。5、 Visual Basic 6.0有多种类型窗口,若要在设计时看到代码窗口,应怎样操作?答:选择“视图”“代码窗口”命令或单击“工程资源管理器”窗口中的“查看代码”按钮。6、 当建立好一个简单的应用程序后,假定该工程仅有一个窗体模块。试问该工程涉及多少个要保存的文件? 若要保存该工程的所有文件,应先保存什么文件?再保存什么文件?若不这样做,系统会出现什么信息?
3、 答:涉及两个文件要保存。先保存窗体文件(.frm),再保存工程文件(.vbp)。若先保存工程文件,系统也会先弹出“文件另存为”对话框,要求先保存窗体文件。7、 保存文件时,若不改变目录名,则系统默认的目录是什么? 答:系统默认的目录是 VB988、 安装 Visual Basic 6.0后,帮助系统是否也已安装?答:没有。VB6.0的帮助系统在两张光盘上,即MSDN Library,其中还包含了VC、VFP 等其他语言的帮助系统。9、 如何使用 Visual Basic 6.0的帮助系统?答:最方便的方法是选定要帮助的内容,然后按 F1功能键,这时系统打开 MSDN Library 查阅器,
4、直接显示与选定内容有关的帮助信息。10、什么是类?什么是对象?什么是事件过程?答:类是同类对象集合的抽象,它规定了这些对象的公共属性和方法; 对象是类的一个实例,对象包含三个要素:属性、方法和事件。当在对象上发生了事件后,应用程序就要处理这个事件,而处理的步骤就是事件过程。11、属性和方法的区别是什么?答:属性是对象的特征,方法是对象的行为。前者有值,可以被赋值或引用;后者没有值,表示能够执行的操作。12、当标签边框的大小由 Caption 属性的值进行扩展或缩小时,应对该控件的什么属性进行何种设置? 答:将该控件的 Autosize 属性值设置为 true。13、在 VB6.0中,命令按钮的
5、显示形式可以有标准的和图形的两种选择,它们通过什么属性来设置?若选择图形的,则通过什么属性来装入图形?若已在规定的属性里装入了某个图形文件,但该命令按钮还是不能显示该图形,而显示的是 Caption 属性设置的文字,应怎样修改?答:命令按钮的显示形式通过将Style 属性值设置为Graphical 来实现。 通过Picture 属性来装入图形。 不能显示图形是因为 Style 属性值被设置为 Standard,只要将其改为 Graphical,并且将 Caption 的值设置为空即可。14、 如果文本框要显示多行文字,应对什么属性设置为何值? 答:将 MultiLine 属性的值设置为 Tru
6、e。15、 标签和文本框的区别是什么?答:在程序运行时,标签只能显示文字,不能输入文字,显示文字通过对Caption 属性赋值来实现;而文本框既能显示文字,也能输入文字,这通过text 属性来实现。16、 要让文本框获得焦点的方法是什么? 答:SetFocus 方法。17、 简述文本框的 Change 和 KeyPress 事件的区别答:相同点是当在文本框输入内容时,同时激发上述两个事件;不同点是Keypress 事件可通过参数KeyAscii 返回所按键的编码值,可依此判断数据输入的正确性或数据输入结束与否,因而该事件使用较多;change 事件还可以发生在程序改变文本框的 text 属性时
7、。18、 当某文本框输入数据后(按了回车键),经判断后认为是数据输入错,应怎样删除原来文本框中的数据?答:假定文本框的名称为 Text1,则事件过程如下: Private Sub Text1_KeyPress(KeyAscii As Integer )if KeyAscii = 13 thenif 出错条件判断成立thenText1=”end ifend if end sub注意:删除刚输入的字符,通过 KeyAscii=0语句实现;焦点定位文本框对象采用 SetFocus 方法。19、在程序运行前,对某些控件设置属性值,除了在窗体中直接设置外,还可以通过代码设置,这些代码一般存放在什么事件中
8、?如果要将命令按钮定位在窗体的中央,试写出事件过程代码。答:这些代码一般放在 Forem_Load()事件过程中。将窗体定位在屏幕的中央,只能在属性窗口中将 Form1窗口的 StartUpPosition 属性值设置为2(表示屏幕中心),该属性不能在运行时设置。要将按钮定位在窗体的中央,事件过程如下:Private sub Form_Load()Command1.left= Form1.scaleWidth2-command1.Width2 Command1.Top = Form1.ScaleHeight 2 command1.Height 2End Sub其中,ScaleWidth、Sca
9、leHeight 表示窗体的相对宽度和高度。20、 VB6.0提供的大量图形文件存放在哪个目录?若你的计算机上没有安装,应怎样安装这些图形文件? 答:存放在 Graphics 目录下。在 VB6.0的安装盘上可以找到 Graphics 子目录,将其复制到硬盘上的 VB 目录下。21.略(书上page36)第3章:1、 合法的有:(1)单精度(3)单精度(4)双精度(6)整形(7)字符型(9)日期型(10)双精度(12)八进制表示(14)十六进制表示(15)逻辑型(18)单精度数2、 合法变量有:(1),(2),(6),(9),(10),(11)3、 算术表达式写成 VB 表达式(1)| x+y
10、 | + z5 abs(x+y) +z5(2)(a+xy)6 (1 + x * y ) 6(3)(10*x + sqr(3*y) ) / (x * y ) (4)( -b+sqr(b2-4*a*c) )/2/a(5)1 / (1/r1+1/r2+1/r3)(6) sin(45*3.14/180)+ ( exp(10)+ log(10) )/ sqr( x+y+1) 4、 根据条件写出相应的 VB 表达式(1) chr( int ( Rnd * 10 +67 )(2) int ( Rnd * 101 +100 )(3) x * y 0(4) x%5=0 or x % 7 =0(5) (x mod
11、 10) 10 + x /10(6)Round(123.2389*100)/100(7) Ucase (c ) =”A” and Ucase(c )=”a” and Lcase(c )=10 and x 20(10) ( x z ) or ( x z and y z and y z5、 下出下列表达式的值:(1) 123+23 mod 10 7 +Asc(“A”) 188,(2) 100+”100” & 100 200100(3) Int ( 68.555*100+0.5)/100 68.56(4) 已知 A$=“87654321”,求表达式 Val(Left$(A$,4)+ Mid(A,4,
12、2)的值 876554(5)DateAdd(“m”,1,#1/30/2000#) 2000-2-29(6) Len(”VB 程序设计”) 6 6 、 略第4章:VB 控制语句1、 结构化程序设计的三种基本结构是什么? 答:顺序结构、选择结构和循环结构。2、 指出下列赋值语句中的错误(包括运行时错误):(1)10x=sin(x)+y10x 是非法变量名(2) c=3+sqr(-3)待求平方根的数为负数(3) c+x+y=c*y赋值符左边是表达式了(4) x=sin(x)/(20 mod 2)分母为零了3、 Msgbox 函数与 InputBox 函数之间有什么区别?各自获得什么值?答:两个函数共
13、同之处都显示对话框。区别:Inputbox 函数等待用户在文本框中输入数据,获得的是输入的字符串数据;Msgbox 函数等待用户按一按钮,获得的是表示按钮的整数值,以决定程序的流向。4、 要使单精度变量 x,y,z 分别保留1位、2位、3位小数,并在窗体显示,应使用什么函数?如何编写对应的print 方法?答:使用 format 函数,具体如下:print Format(x,”0.0” )printFormat ( y , “ 0.00 “ ) printFormat ( z , “ 0.000 “ )5 、 语句if then 中的表达式可以是算术、字符、关系、逻辑表达式中的哪些? 答:算术
14、、关系、逻辑表达式6、 指出下列语句中的错误:(1) if xy then print x表达式书写错误,应写成:x=y(2) if 10x20 then x=x+20表达式书写错,应是:10x and x 20y = x * x + 3 * x +2 case is=10y = sqr ( 3 * x ) 2 case is 0y= 1 / x + Abs ( x ) end selectprint y end sub(2) 利用 if 语句、select case 语句两种方法计算分段函数:答:private sub command1.click() x=val( text1)if x 2
15、0 theny = x * x + 3 * x +2 elseifx=10 theny = sqr ( 3 * x ) 2 elseif x0 theny= 1 / x + Abs ( x ) end ifprint y end sub(3) 利用 if 语句和 iif 函数两种方法求三个数 x,y,z 中的最大值并存入变量 max 中。if xy then max=x else max = y if zmax then max = zmax = iif ( xy , x , y ) :max = iif ( max z, max , z )8、 在多分支结构的实现中,可以用 ifthenel
16、seifendif 形式的语句,也可以用 select caseend Select 形式的语句,由于后者的条件书写更灵活、简洁,是否完全可以取代前者?答:虽然 Select Caseend Select 形式的语句中条件书写更灵活、简洁,程序可读性强,但使用它有限制。(适合于对一个变量判断的)首先,看该语句的形式:Select Case case case Case elseEnd Select其中变量或表达式只能含有一个变量,任何含有多个变量的形式都是错误的。如,要判断x,y 是否在第一、三象限内,若输入如下语句:select case x,y, VB 程序会显示“缺少:语句结束”。其次,
17、在后面的 case 表达式列表中不能出现 Select case 变量或表达式中使用的变量,也不能出现主教材上列出的四种形式以外的符号或关键字(符号是:逗号;关键字是:is, to)。9、 计算下列循环语句的次数(1)For I = -3 to 20 step 46(2) For I = -3.5 to 5.5 step 0.519(3) For I = -3.5 to 5.5 step -0.5无循环,因为步长0 ,循环初值小于终值(4) For I = -3 to 20 step 0无限循环,因为步长=010、下列30-90为语句标号,分别标记该语句,第40名共执行了几次,第50名共执行了
18、几次,执行第90号 语句后显示的结果是多少?30Forj =1 to 12 Step 3循环4次40For k = 6 to 2 step -2循环3次,被执行4次50mk = k共执行4*3=12次60print j , k70next k80next j90print j , k , mk130211、如果事先不知道循环次数,如何用forNext 结构来实现?答:将循环终值设置得足够大,再在循环体内设置条件语句,满足条件退出循环。12、利用循环结构,实现如下功能:(1)s=0: for I =1 to 10s = s + ( i+1)*(2*i+1)13、next i(2) 分别统计110
19、0中,满足3的倍数、7的倍数的数各是多少?s3 = 0: s7 = 0for I =1 to 100if I mod 3 = 0thens3 = s3 +1ifI mod7 = 0thens7 = s7 +1 next i(3) 将输入的字符串以反序显示。例如,输入“ASDFGHJKL”,显示“LKJHGFDSA”。s = InputBox(“ 请输入字符串”)forI = Len( s )to1 step -1 printMid ( s, I, 1 )next i下面程序的运行结果是什么?该程序的功能是什么?10100将20转换成2进制数表示14、Private Sub Command1_C
20、lick() Dim x$, n%n = 20Do While n 0 a = n Mod 2 n = n 2x = Chr(48 + a) & x LoopPrint x End Sub下面程序的运行结果是什么?该程序的功能是什么?22,484利用相差法求 x,y 的最大公约数和最小公倍数Private Sub Command2_Click() Dim x%, y%, z%x = 242: y = 44z = x * yDo Until x = yIf x y Then x = x - y Else y = y x LoopPrint x, z / x End Sub15、利用随机函数产生5
展开阅读全文