中国地质大学北京秋研究生VB期末试卷及答案详解与拓展.docx_第1页
中国地质大学北京秋研究生VB期末试卷及答案详解与拓展.docx_第2页
中国地质大学北京秋研究生VB期末试卷及答案详解与拓展.docx_第3页
中国地质大学北京秋研究生VB期末试卷及答案详解与拓展.docx_第4页
中国地质大学北京秋研究生VB期末试卷及答案详解与拓展.docx_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

中国地质大学(北京)研究生试卷(A) 2015秋季学期课程号:SG04002VB程序设计考试试卷(A)考试形式:闭卷考试 考试时间:120分钟所有答案答在答题纸上院系 学号 姓名 得分 题号一二三四五总分一 判断题(正确划,错误划)(10分)1. 事件的编程可以在代码设计窗口中进行,系统为不同对象提供了不同的事件集。事件是对象特有的,不能主观臆造 (事件不是对象特有的,方法是对象所特有的)2. 即使单选按钮控件数组中的元素分属在多个容器中也只能从中选择一个控件 3. 过程和函数的区别在于有无返回值 4. 只要把Image控件的Stretch属性设置为 True,控件会自动调整大小以适应所装载的图片的大小(说反了,应该是图片适应控件的大小)5. Left(Val(1234ab), 2)的结果是”12” Val 返回的是数,把1234给left, 但是left 返回是串,取串里的两个字符12,所以结果是12这个串,要加双引号。6. 列表框控件的Style属性为1(Checkbox)时,MultiSelect属性必须为0(None) Style 只有0和1,0是标准的,1是复选checkbox,组合框是三个值0,1,27. 没有通用对话框控件文件就没办法读写 对话框不负责文件的读写,只负责传串,文件读写由读写语句进行。读图形文件是函数完成的,load picture, 写图形文件是save picture.8. 通过PaintPicture方法可以对图片进行缩放和裁剪等变换 还可以翻转9. Doloop while和Do while loop 在循环条件为True时循环结果一样 当循环条件为false时不一样10. 只有顶级菜单和二级菜单才能调用窗体的PopupMenu方法制作弹出式菜单 只有父菜单才能备调用二 单项选择填空题(共40分)1 有value属性的控件是【 D 】A TextBox BListBoxCComboBox DScrollBar 有value属性的有三个控件:opptionbutton, checkbox, scrollbar2 下列属性中不属于组合框控件是【 B 】AListIndex BSelected CTextDList3 能画横半轴为3,纵半轴为2的语句是【 C 】AMe.Circle (0, 0), 3, , , 2 / 3BMe.Circle (0, 0), 3, , , , 3/2CMe.Circle (0, 0), 3, , , , 2 / 3 DMe.Circle (0, 0), 3, , , 3/2.Circle Step(x, y), , , 纵比横 中间缺3个参数,颜色,起和止幅度,用四个逗号分隔4 下列控件没有change事件是【 B 】ATextBox BListBoxCScrollBar DComboBox5 命令按钮控件能响应用户的单击必须保证其【 C 】属性均为真AVisible和CaptionBEnabled和ToolTipTextCEnabled和Visible DCaption和ToolTipText6 下面标识符哪个可作为数组的名字【 B 】A1abc Babc1Cab(c1)Da.bc1标识符命名规则:以字母和汉字开头,不能和已有函数重名,标识符由字母、数字和下划线组成。7 下列对象中没有Caption属性的是【 D 】AMDI FormB SDI Form CLabelD ScrollBar8 下列【 A 】方法是MDI Form特有的方法A ArrangeB HideCSetFocus DShow 9 下面【 A 】对象拥有AutoRedraw属性APictureBox和窗体BFrame和窗体CPictureBox和Frame DPictureBox和Image AutoRedraw是存储动态输出信息的,在窗体重绘时还拿出来描绘的窗体,就要把autoredraw置为true. 窗体最小化后展开,窗体被其他窗体覆盖,窗体由小变大的时候。窗体和picturebox支持绘图。10 下列【 D 】属性是SDI Form特有的AEnabledBDrawWidthCCaptionDMDIChild 11 下列控件中没有事件的是【 D 】ATimer控件和Shape控件BShape控件和菜单 CTimer控件和菜单DShape和Line控件Timer有timer事件,菜单有click事件12 不能作为容器是【 D 】A FrameBFormCPictureBoxDImage容器有四个,窗体的容器MDI,SDI窗体,frame控件,picturebox.13 动态数组重定义应使用【 D 】关键字A Dim BPreserveCTypeDReDimDim 可以定义窗体级变量,也可以定义局部变量,窗体级在通用段定义,局部在函数和过程内定义。静态局部变量可以保留上次函数调用的值。14 下列对象中拥有KeyPreview属性是【 B 】A MDI FormBSDI Form CComboBoxD ListBox15 可以删除列表框所有列表条目的方法是【 A 】A ClearBRemoveItemCAdditemDCls Cls是清屏16 可以向列表框添加列表条目的方法是【 C 】AClearBRemoveItemCAdditemDCls17 下列【 B 】语句可以让T控件1秒中自动激发10次Timer事件AT.Interval =50BT.Interval = 100CT.Interval =150DT.Interval =2001秒=1000毫秒18 下列【 A 】方法能完成窗体逻辑坐标系统的设置A ScaleBSetFocusCShow DPaintPicture徒手写不用坐标系统19 【 C 】属性可以设置TextBox输入文本的掩码A MaxLengthBFontSizeCPasswordCharDMultiLineMaxLength 设置文本框,接纳的最大文本数20 窗体第一个和最后一个发生的事件是【 A 】AInitialize和Terminate BTerminate和InitializeCLoad和UnloadDUnload和Load21 若要处理程序运行过程中的错误应使用【 C 】语句先捕获错误 AOn Error GoTo 0BOn Error Resume Next COn Error GoTo 语句行号DResume Next捕获的时候有三种情况:On Error GoTo 0:系统处理错误的方法 On Error Resume Next :忽略错误 On Error GoTo 语句行号 正确的处理方式三种错误:语法错误,逻辑错误,运行错误恢复错误:Resume Next,Resume 行号,Resume 0(从错误行开始执行)三 阅读下面程序,写出单击Command1后的程序运行结果(10分)1. Private Sub Ch(ByVal a As Integer, ByRef b As Integer) Dim k As Integer k = a: a = b: b = kEnd SubPrivate Sub Command1_Click() Dim x As Integer, y As Integer x = 10: y = 20 Ch x, y Print x, yEnd Sub (10 10)不能是(10,10)2. Private Sub Command1_Click()Dim x As Integer, y As Integerx = 91y = x Mod 10 * 10 + x 10Print y End Sub 乘的优先级比mod高Mod是求余数答案是1003. Private Sub Command1_Click() Print av(3, 4, 6, 8, 10)End SubPublic Function av(ParamArray s() As Single Dim H As Integer Dim i As Variant Dim C As Integer For Each i In s H = H + i C = C + 1 Next i av = H / CEnd Function这个是求平均值 31/5=6.24. Public Function ABC(a As Single, Optional b = 5) As Integer If IsMissing(b) = True Then ABC = a * a Else ABC = a * b End IfEnd FunctionPrivate Sub Command1_Click() Print ABC(10, 2), ABC(3)End Sub答案是(20,15)缺省参数 IsMissing(b) = True 的意思是如果b是缺省的,但是b已经给了默认值了,就不可能再缺省了,所以这条不执行。ABC(3) 没有给b,就默认b是5ABC(10, 2) 给了b的值,就不用b的默认值了,用2.5. Private Function ABC(A As Integer) Static K As Integer K = K + A ABC = KEnd FunctionPrivate Sub Command1_Click() Dim I As Integer, S As Integer For I = 1 To 5 S = S + ABC(I) Next Print SEnd Sub静态局部变量可以保留上次函数调用的值。(35)1+1+2+1+2+3+1+2+3+4+1+2+3+4+5=35四 程序填空(30分)1. 下面函数的功能是随机产生一个字母(大小写都可能),并返回该字母,阅读并理解程序,填写缺失的代码。Private Function zm() As String Randomize Dim k As Integer Do 【 k=int(rnd*58+65) 】这个的意思是要产生一个65到122的随机数 Loop【 until 】Not (k 90) 这个的意思是大小写字母之间的其他如果是while, 就不要那个not 【 zm 】= Chr(k) End Function2. 有下面界面(图1)用于学习标兵的评选,选择合适的人选后(必须选择5人)按提交按钮(Commadn1)把本次的选择结果写到文件a.txt中(a.txt中将记录所有的评选结果,如图2所示)。程序控制人数的多选,但少选按提交按钮时程序给予提示。当一个选民提交选择后,程序将清除所有选择以备下一个选民选择。请填写缺失的代码图1图2Option ExplicitDim k As IntegerPrivate Sub C_Click(Index As Integer) If C(Index).Value = 1 Then 【 k=k+1 】 Else k = k - 1 End If If k 5 Then【 C(Index).Value = 0 】End SubPrivate Sub Command1_Click()If k = 5 Then Dim s As String Dim i As Integer For i = 0 To C.UBound If 【 C(i).Value = 1 】Then s = s & C(i).Caption & End If Next i For i = 0 To C.UBound If C(i).Value = 1 Then C(i).Value = 0 End If Next i Open d:a.txt For 【 append 】As #1 这个是追加,output是会重写的 Print #1, s CloseElse MsgBox 人员选少了,请继续选择!, vbExclamationEnd IfEnd Sub3. 下面是绘图程序,模仿系统附件中的“画图”程序(程序设计界面如图3)。当单击t(0)后,按住鼠标左键可以实现徒手写的功能;当单击t(1)后,按住鼠标左键可以画直线;当单击t(2)后,按住鼠标左键可以擦除鼠标移动区域内的图形;当单击t(3)后,按住鼠标左键可以画圆,圆心为鼠标移动距离的中心点,半径为该距离长度的一半;如图4所示。当单击保存按钮(Command1)时,弹出对话框如图5并保存绘制的图形;单击退出按钮(Command2)时,卸载窗口,结束程序运行。根据上述功能填写缺失代码图3图4图5根据程序的运行特征可以判断T数组中的控件是【 opptionbutton 】控件Option Explicit Dim ts As String Dim xx As Single, yy As SinglePrivate Sub Command1_Click() C.ShowSave SavePicture P.Image, 【 C.filename 】End SubPrivate Sub Command2_Click() Unload MeEnd SubPrivate Sub Form_Load() P.AutoRedraw = True t(0).Value = True ts = 笔End SubPrivate Sub P_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) If Button = 1 Then Select Case ts Case 笔 P.CurrentX = X P.CurrentY = Y Case 直线 【 xx=X:yy=Y 】 Case 圆 xx = X: yy = Y Case 橡皮 P.Line (X - 40, Y - 40)-(X + 40, Y + 40), P.BackColor, BF End Select End IfEnd SubPrivate Sub P_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) If Button = 1 Then Select Case ts Case 笔 【 P.pset (x,y) 】 Case 橡皮 P.Line (X - 40, Y - 40)-(X + 40, Y + 40), P.BackColor, BF End Select End IfEnd SubPrivate Sub P_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single) If Button = 1 Then Select Case ts Case 直线 【 P.line (xx,yy)-(x,y) 】 Case 圆 Dim xc As Single, yc As Single, r As Single xc = (xx + X) / 2 yc = (yy + Y) / 2 【 r 】 = Sqr(X - xx) 2 + (Y - yy) 2) / 2 【 P.circle (xc,yc), r 】 End Select End IfEnd SubPrivate Sub t_Click(I As Integer) 【 Case i 】 Case 0 ts = 笔 Case 1 ts = 直线 Case 2 ts = 橡皮 Case 3 ts = 圆 End SelectEnd Sub五 程序设计(10分)1. 编写一段代码将D:a

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论