VB程序设计作业(二)答案
- 格式:doc
- 大小:43.50 KB
- 文档页数:3
VB第二次作业〔5~7章〕一、选择题〔每题2分,共2×20=40分〕1、当在滚动条内拖动滚动块时触发A.KeyUp事件B.KeyPress事件C.Scroll事件D.Change事件2、设已经在"菜单编辑器"中设计了窗体的快捷菜单,其顶级菜单为Bs,取消其"可见"属性,运行时,在以下事件过程中,可以使快捷菜单响应鼠标右键菜单的是A.Private Sub Form_MouseDown(Button As Integer, Shift As Integer, _X As Single, Y As Single)If Button=2 Then PopupMenu Bs, 2End SubB.Private Sub Form_MouseDown(Button As Integer, Shift As Integer, _X As Single, Y As Single)PopupMenu BsEnd SubC.Private Sub Form_MouseDown(Button As Integer, Shift As Integer, _X As Single, Y As Single)PopupMenu Bs,0End SubD.Private Sub Form_MouseDown(Button As Integer, Shift As Integer, _X As Single, Y As Single)If (Button=vbLeftButton) Or (Button=vbRightButton) Then PopupMenu BsEnd Sub3、图像框有一个属性,可以自动调整图形的大小,以适应图像框的尺寸,这个属性是A) Autosize B) StretchC) AutoRedraw D) Appearance4、以下表达中正确的选项是A) 在窗体的Form_Load事件过程中定义的变量是全局变量B) 局部变量的作用域可以超出所定义的过程C)在某个Sub过程中定义的局部变量可以与其它事件过程中定义的局部变量同名,但其作用域只限于该过程D) 在调用过程时,所有局部变量被系统初始化为0或空字符串5、以下表达中错误的选项是A) 如果过程被定义为Static类型,则该过程中的局部变量都是Static类型B) Sub过程中不能嵌套定义Sub过程C) Sub过程中可以嵌套调用Sub过程D) 事件过程可以像通用过程一样由用户定义过程名6、以下表达中错误的选项是A) 在同一窗体的菜单项中,不允许出现标题相同的菜单项B) 在菜单的标题栏中,“&”所引导的字母指明了访问该菜单项的访问键C) 程序运行过程中,可以重新设置菜单的Visible属性D) 弹出式菜单也在菜单编辑器中定义7、设在菜单编辑器中定义了一个菜单项,名为menu1。
第2章 Visual Basic语言基础知识2.1 Visual Basic定义了几种数据类型,变量有哪几种数据类型,常量有哪几种数据类型。
【答】Visual Basic基本数据类型:1. 字符串型(String):字符串分为变长字符串和定长字符串两种。
2. 数值型:数值型数据分为整型数和浮点数两类。
3. 货币型(Currency)4. 变体型(Variant)5. 字节型(Byte)6. 布尔型(Boolean)7. 日期型(Date)8. 对象型(Object)Visual Basic中包含两种常量,即文字常量和符号常量。
变量的基本数据类型:Byte(字节型),Boolean(布尔型),Integer(整型),Long (长整型),Single(单精度型),Double(双精度型),Currency(货币型),Date(日期型),Object(对象型),String(变长字符串),String(定长字符串),Variant(变体型、数字),Variant(变体型、字符)2.2 符号常量和变量有什么不同点?【答】符号常量一经定义,就不能在程序中的其他位置改变其值。
变量的值在程序中可以改变。
2.3 指出下列正确的变量名:g(1-k) 6adhs *sss kL2.1 Printx+1 ahi π .ex3 j5h【答案】正确的变量名:ahi,j5h2.4 指出下列正确的数字形式-1.25 ±0.123 89E D2585 10^(2.7) 3^5【答案】2.5 下列表达式若有错误,请改正(1) ts+cos(300) (2) (x+y)^(25÷s)(3) [(X1+X2)*(X1-3)-6]*7 (4) (X÷-2)+sin(1.2+π)【答案】(1) ts+cos(30*3.141593/180)(2) (x+y)^(25/s)(3) ((X1+X2)*(X1-3)-6)*7(4) (X/(-2))+sin(1.2+3.141593)2.6 写出下列数学式的Visual Basic表达式(1) sin(a)[cos(b)+1.5](2) (x1+4)5(e2-a)(3) 36[(x1+π)(x1÷3.3)-b](4) x-2π)【答案】Visual Basic表达式:(1) sin(a)*(cos(b)+1.5)(2) (x1+4)^5*(Exp(2)-a)(3) 36*((X1+3.141593)*(x1/3.3)-b)(4) x^(-2)+5.8*sin(3.5*3.141593)第3章顺序结构程序设计3.1 下列语句是否有错?若有,请改正。
《VB程序设计基础》试题一、选择题:(每空 2 分,共 20 分)1. VB不具备以下的________________特点。
A. VB是结构化程序设计语言B. VB是面向过程的程序设计语言C. VB采用面向对象的程序设计方法D. VB提供了可视化的工具2. 在Visual Basic中,语句Dim x As Single所说明的变量x属于____________。
A. 整数型B. 逻辑型C. 字符串型D. 单精度实数型3. 在Visual Basic中,表达式Fix(-13.8)的值是_____________。
A. -13B. -14C. 13D. 144. 下列属于正确的Visual Basic表达式是()A. a2+b*|c|B. 2n-1C. b3+2D. 2·h/g5. 设x是正数,下列能用于描述"x是否为偶数"的Visual Basic条件表达式是_____________。
A. x % 2 = 0B. x / 2 = 0 C.x \2 = 0 D. x Mod 2 = 06. 图片框有一个属性,可以自动调整图片框的大小,以适应图片的尺寸,这个属性是__________。
A. AutosizeB. StretchC. AutoRedrawD. Appearance7.语句Print Format(136.459862,“0.000”)的输出结果是___________。
A. 1.365B. 6.459C. 136.460D. 136.4598. 设S=“380”,表达式Mid(S,2,1)+ Right(S,1)+ Left(S,1)的值为__________。
A.“083”B.“803”C.“038”D.“308”9.一个数组说明为Dim a(3,4) As Integer,则该数组共有_________个元素。
A. 12B. 3C. 4D. 2010. 在过程定义中用__________表示形参的传值。
《VB语言程序设计》习题2一、单项选择题1.在Visual Bsaic代码中,将多个语句合并写在一行上的并行符是()。
A、撇号(')B、冒号(:)C、感叹号(!)D、星号(*)2.通过()可以在设计时直观地调整窗体在屏幕上的位置。
A、代码窗口B、窗体布局窗口C、窗体设计窗口D、属性窗口3.通过改变选项按钮(OptionButton)控件的()属性值,可以改变按钮的选取状态。
A、ValueB、StyleC、AppearanceD、Caption4.为了清除列表框中的所有内容,应使用的方法是()。
A、ClsB、ClearC、RemoveD、RemoveItem5.文本框能输入()。
A、控制字符B、ASCII字符C、回车D、文本和数字6.下列控件中,没有Caption属性的是()。
A、框架B、列表框C、复选框D、单选按钮7.文本框控件最多能处理()字节。
A、32KB、64KC、128KD、16K8.以下能够触发文本框Change事件的操作是()。
A、文本框失去焦点B、文本框获得焦点C、设置文本框的焦点D、改变文本框的内容9.要将一个组合框设置为简单组合框(Simple Combo),则应将其Style属性设置为()。
A、0B、1C、2D、310.要使标签所在处透明显示背景,应把BackStyle属性设置为()。
A、0B、1C、TureD、False11.用()属性可唯一标志控件阵列中的某一个控件。
A、NameB、IndexC、CaptionuD、TabIndex12.组合框控件是将()组合成一个控件。
A、列表框控件和文本框控件B、标签控件和列表框控件C、标签控件和文本框控件D、复选框控件和选项按钮控件13.()使图象(Image)控件中的图象自动适宜控件的大小。
A、将控件的AutoSize属性设为TrueB、将控件的AutoSize属性设为FalseC、将控件的Stretch属性设为TrueD、将控件的Stretch属性设为false14.如果要在命令按钮上显示图形文件,应设置命令按钮的()。
计算机二级《VB程序设计》练习题及答案2016计算机二级《VB程序设计》练习题及答案一、选择题1、以下能够触发文本框Change事件的操作是(C)A.文本框失去焦点B.文本框获得焦点C.设置文本框的焦点D.改变文本框的内容2、应用程序设计完成后,应将程序保存,保存的过程是(D )A.只保存窗体文件即可B.只保存工程文件即可C.先保存工程文件,之后保存窗体文件D.先保存窗体文件(或标准模块文件),之后还要保存工程文件3、VB应用程序的运行模式是(C)A.解释运行模式B.编译运行模式C.两者都有D.汇编模式4、任何控件都具有的属性是(A )A.TEXTB.CAPTIOND.FORECOLOR5、决定控件上文字的字体、字形、大小及效果的属性是( D)A.TEXTB.CAPTIOND.FONT6、在窗体上建立了多个控件,如TEXT、LABEL1、COMMAND1,若要使程序一运行焦点就定位在COMMAND1控件上,应将COMMAND1控件的(B )设置为0A.INDEXB.TABINDEXC.TABSTOPD.ENABLED7、运行时,当用户向文本框输入新的内容,或在程序代码中对文本框的TEXT属性进行赋值从而改变了文本框的TEXT属性值时,将触发文本框的( A)事件A.CLICKB.DBLCLICKC.GOTFOCUSD.CHANGE8、在运行时,按TAB键跳过了一个可以获得焦点的控件(如文本框),则可能是因为(B )A.该控件的TABSTOP属性值为TRUEB.该控件的TABINDEX属性值为FALSEC.该控件的ENABLED属性值为TRUED.该控件的ENABLED属性值为FALSE9、为了防止用户随意将光标置于控件上,应(A )A.将控件的TABINDEX属性设置为0B.将控件的TABSTOP属性设置为TRUEC.将控件的TABSTOP属性设置为FALSED.将控件的ENABLED属性设置为FALSE10、若要使标签控件显示时,不覆盖其背景内容,应设置标签控件的`( D)属性A.BACKCOLORB.BORDERSTYLEC.FORECOLORD.BACKSTYLE11、如果要在文本框中输入字符时,只显示某个字符,如星号(*),运行时,在文本框中输入的字符仍然显示出来,而不显示星号,原因可能是(B )A.文本框的MULTILINE属性值为TRUEB.文本框的LOCKED属性值为TRUEC.文本框的MULTILINE属性值为FALSED.文本框的LOCKED属性为FALSE12、在运行阶段,要在文本框TEXT1获得焦点时选中文本框中所有内容,对应的事件过程是(B )A.Private Sub Text1_GotFocus( )Text1.SelStart=0Text1.Sellength=Len(Text1.Text) End SubB.Private Sub Text1_LostFocus( )Text1.SelStart=0Text1.Sellength=Len(Text1.Text) End SubC.Private Sub Text1_Change( )Text1.SelStart=0Text1.Sellength=Len(Text1.Text) End SubD.Private Sub Text1_SetFocus( )Text1.SelStart=0Text1.Sellength=Len(Text1.Text) End Sub13、Visual Basic继承了Basic语言简单易用的语法特点,同时支持面向对象的编程机制,其中构成其控件对象的三要素是(D )A.属性、事件、事件过程B.控件、窗体、事件C.属性、过程、方法D.属性、事件、方法14、决定标签(Label)显示的属性是(C )A.TextC.CaptionD.Alignment下载文档。
第1章1. 按要求设置窗体属性2.在窗体上建立一个标签Label1。
程序代码如下:Private Sub Form_Click()Label1.Caption = "你单击了窗体"End SubPrivate Sub Form_DblClick()Label1.Caption = "你双击了窗体"End Sub3.在窗体上建立两个文本框Text1(输入数)、Text2(输出数)和一个命令按钮Command1。
两个文本框的Text属性均为空。
Private Sub Command1_Click()Dim x As Singlex = Val(Text1.Text)Text2.Text = 15 * xEnd Sub第2章1~3题:按要求完成操作练习。
4. Private Sub Command1_Click() '"最大化"按钮Form1.WindowState = 2 '最大化End SubPrivate Sub Command2_Click() '"还原"按钮Form1.WindowState = 0 '还原End SubPrivate Sub Command3_Click() '"最小化"按钮Form1.WindowState = 1 '最小化End Sub5.在窗体上建立三个文本框Text1(第一个数)、Text2(第二个数)、Text3(计算结果)和一个命令按钮Command1(“计算”)。
Private Sub Command1_Click()Dim x As SingleDim y As Singlex = Val(Text1.Text)y = Val(Text2.Text)Text3.Text = x * x + y * yEnd Sub6. 在窗体上建立两个文本框Text1(输入一串字符)、Text2(输出结果)和一个命令按钮Command1。
Vb专项练习第一套题目1、打开“考生文件夹\96\工程1.vbp”,完善程序并保存。
实现功能:假设有一个5位数密码。
只记得密码为67□□8,其中百位和十位的数字记不清了,但知道该密码能够被78整除,也能被67整除。
请完善算法帮忙找出这个密码。
''请不要更改源程序的结构,删除原题里的①、②、③。
填写正确的代码,使程序完善Private Sub Command1_Click()Dim x As LongFor x = ① To 67998 Step 10If (x Mod 67 = 0) And (x Mod 78 = 0) ThenPrint ②End If③End Sub2、“考生文件夹\51\工程1.vbp”是采用“穷举法”求出所有水仙花数的程序,请完善程序并保存。
说明:若一个三位数abc,满足:abc=a3+b3+c3,则称abc为水仙花数。
如三位数153满足:13+53+33=1+125+27=153,则153是水仙花数。
'请不要更改源程序的结构,删除原题里的①、②、③。
填写正确的代码,使程序完善Private Sub Command1_Click()Dim i, a, b As IntegerFor i = 100 To ①a = i \ 100b = (i - a * 100) \ 10c = ②If a * a * a + b * b * b + c * c * c = i ThenPrint CStr(i)③Next iEnd Sub3、打开“考生文件夹\12\工程1.vbp”,完善程序并保存。
实现功能:在Text1中输入一个代表秒数的整数后,单击“计算”按钮后,在Label1、Label2、Label3中显示对应的小时、分钟和秒数。
如在Text1中输入“3672”,Label1、Label2、Label3中分别显示“1”、“1”、“12”,即1小时1分12秒。
实验一问答题:1、答:常见的有visual Basic、C++、Java、SQL。
用途特点:(参考课本4-5页)2、答:代码是一行或几行命令。
程序是针对某个任务编写的有序代码的集合。
软件是程序和文档的集合。
它们的关系是:代码 < 程序 < 软件3、答:面向对象程序设计中的每一个对象都应该能够接受数据、处理数据并将数据传达给其它对象,因此它们都可以被看作一个小型的“机器”,即对象。
它能够让人们更简单地设计并维护程序,使得程序更加便于分析、设计、理解。
4、答:参考课本第9页5、答:类——是创建对象实例的模板, 包含了创建对象的属性描述和行为特征的定义。
对象——是类的一个实例,继承了类的属性、方法。
控件——是具有图形界面的对象,它同样具有属性、方法、事件,是用来设计用户界面的重要元素。
属性——是对象的性质,用来描述和反应对象特征的参数。
事件——响应对象的动作,它发生在用户与程序交互时。
如单击控件、鼠标移动、键盘按下。
过程——指附在该对象上的程序代码,是事件的处理程序。
6、答:参考课本12页到17页。
实验二问答题:1、答通用属性有:Caption标题、Enabled可用性、Visible可见性、ForeColor前景颜色、BackColor背景颜色等。
2、答标签label是用来显示信息的,不具有输入功能。
属性有Caption、BackStyle、Alignment、BorderStyle、AutoSize。
文本框用来输入、输出数据,编辑文本。
属性有Text、 Maxlength、MultiLine、 ScrollBars、 Locked 、 PassWord 。
3、答结果为:标签里显示一个“abc”,图片框里显示3行“欢迎您”。
4、答要保存2次,分别是工程文件.vbp和窗体文件.frm。
实验一:一、选择1.D2.D3.B4.A5.B6.C7.CD8.D9.D10.编程机制是C、设计方式是B11.A12.D13.D14.C15.A二、填空1.windows2. 中断3.工具箱4.代码5.分类6.form2.show7. 出现语法错误8. 错9. 事件10. 面向对象11. 工程文件结构及各文件名12. 工程13. 设计程序代码14.双击窗体15.vb的安装文件夹16.属性17.方法18.font 19. form_load() 20.对象1.Private Sub Command1_Click()Print Sqr(8), 8 ^ (1 / 3)End Sub2.Private Sub Command1_Click()For i = 100 To 110Print Sqr(i)Next iEnd Sub3.Private Sub Form_Load()Print " 郑州大学在前进!"End Sub4. Private Sub label_click()PrintLabel.caption=”蓝天白云绿水青山”End sub实验二:一、选择1.B2.C3.B4.C5.C6.C7.B8.B9.D10.A11.C12.C13.C14.B15.A16.C17.B18.D19.C20.C二、填空1. Form_Click()2. Interval、5003..vbp .frm4.left top Height、Width twip5.picture6.load7. locked8. font Alignment9. GotFocus() LostFocus() 10. 属性窗口程序代码1.Private Sub Command1_Click()Label3 = Val(Text1) * Val(Text2)Private Sub Command2_Click()Label3 = Val(Text1) / Val(Text2)End Sub2.Private Sub Command1_Click()Picture1.Visible = TruePicture1.Picture = LoadPicture("d:\tu1.jpg") End SubPrivate Sub Command2_Click()Picture1.Visible = TruePicture1.Picture = LoadPicture("d:\tu2.jpg") End SubPrivate Sub Command3_Click()Picture1.Visible = False'也可以改为:Picture1.Picture = LoadPicture("") End Sub3.Private Sub Command1_Click()Label3 = Val(Text1) * Val(Text2) End Sub4.Private Sub Command1_Click() Text2 = Text1End SubPrivate Sub Command2_Click() Text1 = ""Text2 = ""End SubPrivate Sub Form_Load() Command1.Visible = False Command2.Visible = FalseEnd SubPrivate Sub Text1_Change() Command1.Visible = True Command2.Visible = TrueEnd Sub5.Private Sub Form_Load()Image1.Picture = LoadPicture("d:\tu3.jpg")End SubPrivate Sub Command1_Click()Timer1.Enabled = TrueEnd SubPrivate Sub Command2_Click()Timer1.Enabled = FalseEnd SubPrivate Sub Timer1_Timer()Image1.Left = Int(Rnd * (Form1.ScaleWidth - Image1.Width)) Image1.Top = Int(Rnd * (Form1.ScaleHeight - Image1.Height)) End实验三:一、选择1.A2.BC3.BC4.A5.A6.A7.BCD8.D9.B10.B 11.B二、判断题不合法的变量:3. 4. 5. 6. 8. 10. 11. 14.15. 16.三、1、abs(x+y)2. (3+x*y)^23. (-b+sqr(b^2-4*a*c))/(2*a)4.sin(30*3.14/180)+exp(2)四、1. int(rnd* 71+20) 或int(rnd* 71)+202. x<0 and y>0 or x>0 and y<0 或者x*y<03. x mod 3=0 or x mod 7=0或x/3=x\3 or x/7=x\74. x>=10 and x<205. x>="A" and x<="Z"6. left(s,3) 或mid(s,1,3)操作题:2.Private Sub Command1_Click()Dim n%n = Abs(Val(Text1))Label2 = Format(n ^ 2, "#.000") & Space(2) & Format(Sqr(n), "#.000") & Space(2) & Format(n ^ 3, "#.000") & Space(2) & Format(n ^ (1 / 3), "#.000")'上句的输出也可以用下面的print方式:' Print Format(n ^ 2, "#.000"); Spc(2); Format(Sqr(n), "#.000"); Spc(2); Format(n ^ 3, "#.000"); Spc(2); Format(n ^ (1 / 3), "#.000")End Sub3.Private Sub Command1_Click()Dim x%, y%x = Int(Rnd * 900 + 100)Print "产生的随机数:"; xy = (x Mod 10) * 100 + (x \ 10 Mod 10) * 10 + x \ 100Print "反序数:"; Format(y, "000")End SubPrivate Sub Command2_Click()Dim x%, y As Stringx = Int(Rnd * 900 + 100)Print "产生的随机数:"; xy = Trim(Str(x))Print "反序数:" & Right(y, 1) & Mid(y, 2, 1) & Left(y, 1)End Sub4.Private Sub Command1_Click()Dim m%, n%Randomizem = Val(Text1): n = Val(Text2)x = Int(Rnd * (n - m) + m)y = Int(Rnd * (n - m) + m)z = Int(Rnd * (n - m) + m)Label3 = m & "到" & n & "之间的3个随机数为: " & x & Space(3) & y & Space(3) & zEnd Sub5.Private Sub Command1_Click()Label1.Caption = DateEnd SubPrivate Sub Command2_Click()Label2.Caption = TimeEnd SubPrivate Sub Command3_Click()Label3.Caption = WeekdayName(Weekday(Date))End Sub实验四:一、选择1.C2.D3. C4.D5.A6.D7.B8.B9.A10.C二、填空1. 48.71E-01, -4.87122. 关系、逻辑、算术3. 900,100,mid(s,2,1)4.m、1,2,3 、print m & "月是第二季度"、end select三、程序结果1. X=4 y=132. 10操作题:1.方法一:Private Sub Command1_Click()x = InputBox("请输入弧度数值", "弧度转换", 0)xx = Val(x)a = x * 180 / 3.14aa = Int(a)b = (a - aa) * 60bb = Int(b)c = (b - bb) * 60cc = Format(c, "#.000")MsgBox "弧度" & x & "转换为" & aa & "度" & bb & "分" & cc & "秒" End Sub方法二:Option ExplicitPrivate Sub Command1_Click()Dim x!, a!, aa%, b!, bb%, c!, cc$x = Val(Text1)a = x * 180 / 3.14aa = Int(a)b = (a - aa) * 60bb = Int(b)c = (b - bb) * 60cc = Format(c, "#.000")Label2 = "弧度" & Text1 & "转换为" & aa & "度" & bb & "分" & cc & "秒"End Sub2.Private Sub Command1_Click()Dim x%x = Val(Text1)If x / 400 = x \ 400 Or x Mod 4 = 0 And x Mod 100 <> 0 ThenLabel2 = Text1 & "年是闰年"ElseLabel2 = Text1 & "年不是闰年"End IfEnd Sub3.Private Sub Command1_Click()Dim x%, y%, z%x = InputBox("输入第一个数")y = InputBox("输入第二个数")z = InputBox("输入第三个数")Print "输入的数是:"; x; y; zIf x > y Then t = x: x = y: y = tIf y > z Then t = y: y = z: z = tIf x > y Then t = x: x = y: y = tPrint "排序结果是:"; x; y; zEnd Sub4.方法一:Private Sub Command1_Click() x = Val(InputBox("请输入上网时间:")) If x <> -1 ThenSelect Case xCase Is < 10fei = 25Case 10 To 50fei = x * 2Case 50 To 100fei = x * 1.5fei = x * 1End SelectMsgBox "上网费用为:" & fei & "元" End IfEnd SubPrivate Sub Command2_Click()EndEnd Sub方法二:Private Sub Command1_Click() Dox = Val(InputBox("请输入上网时间:", , -1)) If x <> -1 ThenSelect Case xCase Is < 10fei = 25Case 10 To 50fei = x * 2Case 50 To 100fei = x * 1.5Case Is >= 100End Selectzongfei = zongfei & Space(3) & fei MsgBox zongfei, , "上网费用为"ElseExit DoEnd IfLoopEnd SubPrivate Sub Command2_Click()EndEnd Sub实验五一、选择B C B A C二、填空(1)for x=2 to 10s*(1-1/x)(2) 1 t>1E-6(3) j t(4) 5 11 51.Private Sub Command1_Click()For n = 1 To 100s = s + nNext nPrint sEnd SubPrivate Sub Command2_Click()n = 1Do While n <= 100s = s + nn = n + 1LoopPrint sEnd Sub2.Private Sub Command1_Click()For i = 0 To 20For j = 0 To 33If i * 5 + j * 3 + 1 / 3 * (100 - i - j) = 100 Then Print i, j, 100 - i - j Next jNext iEnd Sub3.Private Sub Command1_Click()n = 0DoIf n Mod 2 = 1 And n Mod 3 = 2 And n Mod 5 = 4 And n Mod 6 = 5 And n Mod 7 = 0 Then Exit Don = n + 1LoopPrint nEnd Sub4.'已知x,y,z分别是0~9中的一个数,求x,y,z的值,使得xxz+yzz=532. Private Sub Command1_Click()Dim x%, y%, z%, i%, j%For x = 0 To 9For y = 0 To 9For z = 0 To 9If (x * 100 + x * 10 + z) + (y * 100 + z * 10 + z) = 532 Then Print x, y, z NextNextNextEnd SubPrivate Sub Command2_Click()For x = 0 To 9For y = 0 To 9For z = 0 To 9If Val(x & x & z) + Val(y & z & z) = 532 Then Print x; y; z NextNextNextEnd Sub5.Private Sub Command1_Click()x = Val(Text1)y = x * 4n = 0Do While x <= yx = x * (1 + 0.1)n = n + 1LoopPrint x, nEnd Sub6.Private Sub Command1_Click()n = Val(InputBox("输入计算到第几项:", , 0))For i = 1 To ns = s + (-1) ^ (i + 1) * iNextPrint n, sEnd SubPrivate Sub Command2_Click()n = Val(InputBox("输入计算到第几项:", , 0))p = 1For i = 1 To ns = s + p * ip = -pNextPrint n, sEnd Sub7.'s=(0+1)+(0+1+2)+(0+1+2+3)+(0+1+2+3+4)+……(0+1+2+3+4+……n) Private Sub Command1_Click()Dim n%, s%n = Val(InputBox("输入计算到第几项:", , 0))s = 0: t = 0For i = 1 To nt = t + is = s + tNext iPrint sEnd SubPrivate Sub Command2_Click()Dim n%, s%n = Val(InputBox("输入计算到第几项:", , 0)) s = 0: t = 0For i = 1 To nt = 0For j = 1 To it = t + jNexts = s + tNextPrint sEnd Sub8.Private Sub Command1_Click()Dim s As Double, pi As Doublen = 1: s = 0Do While 1 / (2 * n - 1) >= 0.0001 '也可以是Do Until 1 / (2 * n - 1)< 0.0001s = s + (-1) ^ (n + 1) * 1 / (2 * n - 1)n = n + 1Looppi = 4 * sPrint piEnd Sub9.'5-9:输出所有的“水仙花数”.'所谓的“水仙花数”是指一个3位数,其各位数字的立方和等于该数本身。
《VB程序设计》作业(二)
客观题部分:
选择题(每题1分,共15题)
1. 当VB执行下面语句后,A的值为(A )。
A=1 IF A>0 THEN A=A+1 IF A>1 THEN A=0
A)0 B)1 C)2 D)3
2. 当VB执行下面语句后,输出的结果是(B )。
Private Sub Form_Click()
score = Int(Rnd * 10) + 30 Select Case score Case Is < 10 A$ = "F" Case 10 To 19 A$ = "D"
Case 20 To 29 A$ = "C" Case 30 To 39 A$ = "B" Case Else A$ = "A" End Select Print A$ End Sub
A)A B)B C)C D)D
3. 执行下面的程序段后,x 的值为( C )。
x=2 For i=1 To 10 Step 3 x=x+i\2 Next i
A) 2 B) 4 C) 7 D) 9
4. 假定有以下循环结构:
Do Until 条件循环体Loop
则正确的描述是( D )。
A) 如果“条件”是一个为0的常数,则一次循环体也不执行
B) 如果“条件”是一个为0的常数,则至少执行一次循环体
C) 如果“条件”是一个不为0的常数,则至少执行一次循环体
D) 不论“条件”是否为“真”,至少要执行一次循环体
5. 假定有以下程序段:
For i= 1 To 3 For j = 5 To 1 Step -1 Print i * j Next j , i
则语句“Print i * j ”的执行次数是( C )。
A)20 B)24 C)15 D)18
6. 以下程序段的输出结果为( D )。
x = 2 y = 8 Do Until y>8 x = x * y y = y +1 Loop Print x
A)2 B)9 C)10 D)16
7. 用下面的语句所定义的数组的元素个数是(D )。
Dim A(-3 To 5)As Integer
A)6 B)7 C)8 D)9
8. 阅读下面的程序段:
For i=1 To 2 For j=1 To I For k=j To 2 x=x+1 Next k Next j Next i
执行上面的三重循环后,x的值为( C )。
A) 3 B) 4 C) 5 D) 6
9. 在窗体上画一个命令按钮,然后编写如下事件过程:
Private Sub Command1_Click()
For i=1 To 3 x=2 For j =1 To 2 x=4 For k=1 To 3 x=x+5 Next k Next j Next i
Print x End Sub
程序运行后,单击命令按钮,输出结果是( B )。
A) 11 B) 19 C) 57 D) 63
10. 在窗体上画两个文本框Text1和Text2,一个命令按钮Command1,然后编写如下事件过程:
Private Sub Command1_Click()
x=1 Do While x<50 x=(x+1)*(x+2) n=n+1 Loop Text1.Text=Str(n) Text2.Text=Str(x) End Sub
程序运行后,单击命令按钮,在两个文本框中显示的值分别为( B )。
A) 1和0 B) 2和56
C) 3和 70 D) 4和168 11. 以下正确的叙述是( C )。
A ) Select Case 语句中的测试表达式可以是任何形式的表达式
B ) Select Case 语句中的测试表达式只能是数值表达式或字符串表达式
C ) 在执行Select Case 语句时,所有Case 子句均按出现的次序被顺序执行
D ) 如下Select Case 语句中的Case 表达式是错误的:
Select Case x
Case 1 to 10 …… End Select 12. 在窗体上绘制一个命令按钮Command1,然后编写如下程序: Option Base 1 Private Sub Command1_Click()
Dim a a = Array(1, 2, 3, 4, 5) j = 1
For i = 5 To 1 Step -1 s = s + a(i) * j
j = j * 10 Next i Print s End Sub
运行程序,单击命令按钮,输出结果为( B )。
A )54321 B)12345 C)1234 D)4321
13. 在窗体上绘制一个命令按钮Commandl ,编写以下事件过程:
Private Sub Commandl_C1ick() Dim b b =Array(1,2,3,4,5) …… End Sub
此过程的功能是把数组b 中的5个数逆序存放。
为了实现此功能,省略号处的程序段应该是( C )。
A) For i =0 To 5-1\2 tmp =b(i)
b(i)=b(5-i-1) b(5-i-1)=tmp Next i B) For i =0 To 5 tmp=b(i)
b(i)=b(5-i-1) b(5-i-1)=tmp Next i C) For i =0 To 5\2
tmp =b(i) b(i)=b(5-i-1) b(5-i-1)=tmp Next i D) For i =1 To 5\2
b(5-i-1)=tmp tmp=b(i) b(i)=b(5-i-1) Next i 14. 在窗体上绘制一个命令按钮Commandl ,编写以下事件过程: Option Base 1
Private Sub Command1_Click()
Dim a(3, 3) As Integer
For i = 1 To 3 For j = 1 To 3 a(i, j) = 2 * i + j Next j Next i For i = 2 To 3 For j = 2 To 3 Print a(j, i) Next j Next iEnd Sub
程序运行后,单击命令按钮,输出的结果是( C )。
A ) 5
B )6 C) 6 D )5
6 7 8 7
7 8 7 6 8 9 9 8
15. 设有函数y =⎪⎩
⎪⎨⎧<=>)0()0(0
)0(*x x x x x x ,下面不能正确求得函数值的程序段是( D )。
A ) Select Case x
Case Is < 0
y=x Case 0 y=0
Case Is > 0
y=x*x
End Select B ) If x>0 Then y=x*x End If
If x=0 Then y=0 End If
If x<0 Then y=x End If
C)If x < 0 Theny = x Else
If x > 0 Then y = y * x Else y = 0 End If End If D)If x<=0 Theny=x End If
If x>0 Then y=x*x Else y=0 End If
主观题部分:
编程题(每题15分,共1题)
编程实现一个窗体Form的click事件,单击该窗体后从键盘接收变量n的数值然后计算并打印1+2+...+n 的值,如果和已经大于1000则停止计算。
Private Sub Command1_Click()
Dim i As Integer
Dim n As Integer
Dim s As Integer
i = 0
s = 0
n = InputBox("请输入整数n")
Do While (s <= 1000)
i = i + 1
s = s + i
Loop Until i >= n
Print "1+2+3+...+n=" & s
End Sub。