统考复习题答案.doc_第1页
统考复习题答案.doc_第2页
统考复习题答案.doc_第3页
统考复习题答案.doc_第4页
统考复习题答案.doc_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

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

文档简介

一、判断题1. No!CLS方法用于清除窗体和图片框中使用Print语句打印的内容以及使用Point、Line、Circle等方法绘制的图形;窗体或图片框用Picture属性装载的图片只能用LoadPicture()语句卸载。2. Yes!只有从工具箱中直接放到容器中的控件或粘贴到其中的控件才真正放入容器。而容器中的控件随容器的移动而移动。3. No!VB的程序必须从某个具体的模块(包括窗体模块)启动。4. No!关闭运行的窗体后静态变量也被释放,故再运行窗体时,静态变量的初值声明为默认初值(例如数值型变量的默认初值为0,逻辑性变量的默认初值为False)。5. No!别说用鼠标拖,哪怕编程序都不行。6. Yes!控件的Enabled属性值设置为False的唯一正确解释是:控件不会对用户的交互操作(即用鼠标或键盘进行的操作)作出直接反应(错误的解释是:1.控件不能使用;2.控件不会响应事件)。窗体是容器,而容器的Enabled属性值设置为False后,容器上的对象Enabled属性值必定为False。7. No!当定时器控件的Interval属性值设置为0后,“相当于”将定时器控件的Enabled属性值设置为False。8. No!文本框控件的MaxLength属性设置为0时,在文本框内部输入的字符字数不限。9. Yes!Load事件引发时,VB开始绘制窗体,而没有绘制好的窗体上不能进行打印或绘图。但可以在窗体的Active事件中打印或绘图,因Active事件的引发是在Load事件之后,此时窗体已经绘制好。10. No!在用Append或OutPut方式打开文件时,文件如果不存在会新建一个。11. Yes!只有在松开鼠标(MouseUp)后才能确定滚动条新的Value值,即确定滚动条Value的变化,才能引发Change事件。12. No!只有在FillStyle属性设置为0之后绘制的封闭图形才是实心的;先前绘制的图形不会变化。13. Yes!OutPut就是覆盖写方式。14. Yes!15. No!清除列表框的全部列表是用Clear方法。16. Yes!用Scale方法只改变了容器本身的坐标系统,而没有改变衡量容器位置和大小的外坐标系统。17. No!可以从一个过程调用任意其他过程(包括Sub过程和函数过程)。18. Yes!否则函数值无法从函数剁成返回给调用过程。19. No!单击命令按钮数组(控件数组)中任意一个按钮都只会引发相同的一个Click事件。20. No!滚动条的LargeChange属性值设置不必大于SmallChange属性值,可以等于甚至小于SmallChange属性值。二、选择题(包括单选和多选)1C 2C 3D 4D 5B6C 7A 8A 9B 10D11、C 12B 13D 14D 15C16C 17D 18B 19C 20A21D 22C 23C 24A 25D26C 27A、B、C、D 28B 29B、C 三、程序阅读题1. 答案36 25 16 9 4 12. 答案 A C E3. 答案y = 5 a = 5 y = 15 a = 10 y = 30 a = 154. 答案1 12 33 64 105 155. 答案1、6、15、28、45(窗体运行初始文本框内就显示“1”)6. 答案5 5 010 5 015 5 020 5 07. 答案(1) (2) (3)+*/ abc34 +*/xy12$ xy12$ xy$abc34 +*/ abc请各位同学注意:如果焦点位于文本框时按键,必将引发文本框的KeyPress事件,此事件有一个形参KeyAscii(可简化为K):(1) 如果在KeyPress事件过程中不改变KeyAscii(或K)的值,则按下什么键文本框中就会出现什么字符(当然不可见字符是不会出现的);(2)如果在KeyPress事件过程中改变KeyAscii(或K)的值,则文本框中出现的字符将是Chr(KeyAscii) 或Chr( K)(当然不可见字符是不会出现的),也就是说,不一定按下什么键就出现什么字符。例如KeyPress事件过程中的代码为“KeyAscii = 65”或“K = 65”,则除了按下一些功能键例如、等不显示外,按下其他大部分键文本框中出现的字符都会是“A”。8. 答案(1) 1 4 9(2) 2 6 12(3) 1 -2 3(4) 1 3 89. 答案(1) 1101 (2) 33 (3) -1110 (4) 7b五、程序填空题(1) Open e:dateout.txt For OutPut As #1(2) t1 Mod t2 = 0(3) if flag Then(4) Prin count = ; count(5) Until n=1 And n= A And Ucase(Mid(s, i, 1)= a And Lcase(Mid(s, i, 1)= z (33) Close #2六、编程题1Private Sub Form_Load()Text1.Text = Command1.Enabled = FalseCommand2.Enabled = FalseEnd SubPrivate Sub Text1_KeyPress(KeyAscii As Integer) 在列表框中添加若干四位数Dim i As IntegerList1.ClearIf KeyAscii 13 Then Exit SubFor i = 0 To Val(Text1.Text) List1.AddItem Int(Rnd * 9000) + 1000Next iText1.Locked = TrueCommand1.Enabled = TrueEnd SubPrivate Sub Command1_Click() 删除列表框中的奇数Dim i As Integeri = 0Do While i List1.ListCount If Val(List1.List(i) Mod 2 0 Then List1.RemoveItem i Else i = i + 1 End IfLoopCommand1.Enabled = FalseCommand2.Enabled = TrueEnd SubPrivate Sub Command2_Click() 列表框排序(注意和数组排序的微小区别)Dim i As Integer, j As Integer, t As IntegerFor i = 0 To List1.ListCount - 2 k = i For j = i To List1.ListCount - 1 If List1.List(j) = 0 and a(i)= 9print 共有 & Cstr(n1) & 个字母 & Cstr(n2) & 个数字 & 个其他字符六、程序设计题1.Const Pi = 3.1415926Private Sub Command1_Click()Dim x As singleDo Until x 0 x =InputBox(x=)LoopPrint y = ;g(x+2) + Exp(x) * h(x * x)/g(x)End SubPrivate Function g(Byval x As single) As Singleg = pi * x * x + Sin(x * pi / 180) * 360End FunctionPrivate Function h(Byval x As single) As Singleh = 3 * Log(Abs(x)/Log(10)End Function2.Dim a(1 to 20 ) as integerPrivate Sub Command1_Click()Dim i as integerFor i = 1 to 20 a(i) = Int(Rnd * 291)+10Next iEnd SubPrivate Sub Command2_Click()Dim i as integerFor i = 1 to 20 If Prime(a(i) Then Print a(i);Next iEnd SubPrivate Function prime(Byval n As integer) As BooleanDim i as integerPrime = trueFor i = 2 to sqr(n) If n Mod i = 0 then prime = false : Exit forNext iEnd Function3.Private Sub Command1_Click()Dim n As Integer, xm As string , VBcj As IntegerDim i as integer , j as integer , k as integerOpen c:aaa.txt For Input As #1n = 0Do Until EOF(1) 统计文件中学生的人数 Input #1, xm , VBcj n = n + 1LoopClose #1Redim xs(n) as string , cj(n) as integerOpen c:aaa.txt For Input As #1 将学生姓名和VB成绩分别放入相应数组For i = 1 to n Input #1, xs(i) , cj(i)Next iClose #1For i = 1 to n 1 重排姓名和成绩数组的次序 k = iFor j = i to n if c(j) c(k) then k = j next i t = cj(i) : cj(i) = cj(k) : cj(j) = t t = xs(i) : xs(i) = xs(k) : xs(j) = tnext iOpen c:bbb.txt For Output As #1 将学生记录按成绩顺序写入一个新文件中For i = 1 to n Write #1, xs(i) , cj(i)Next iClose #1End sub 附件二:2011/13第一学期程序设计基础VB答案一、选择题1. D (此题选择答案有错,D应该为215-1) 2. C 3. A 4. C 5. B 6. C 7. C 8. A 9. D 10. A二、填空题 1. ScaleMode = 3 2. (1)按键 (2)使用SetFocus方法 3. i 为15 ,s为45 4. Form1.x 5. 400 6. Pic1.ScaleTop + Pic1.ScaleHeight / 2 Pic1.ScaleLeft + Pic1.ScaleWidth / 2 7. SmallChange 8. AutoSize 9. c256256 10. Dir1.Path = Drive1.Drive三、程序阅读题1.Label1.caption: DC*BALabel2.caption: AB*CDLabel1.caption: DCBA2. 25 52 2343. 1 1 2 3 3 5 四、程序选择填空题1. (1) n2 (2) Exit For (3) j= 2 Then y = Exp(x) + Sin(x*3.14159/180)Else y = (x + 5)-3 * Log(x)/Log(10)End IfPrint y =; yEnd Sub2. 编写事件过程Command1_Click,输入x后按下列公式计算并显示y的值,要求将其中计算阶乘的运算写作自定义函数过程。Private Sub Command1_Click()Dim x As Single , y As As SingleDim i As Integer, n As Integerx = InputBox(x =)n = InputBox(n =)y = 0For i = 0 To n y = y + xi/ Fact(i)Next iPrint y =;yEnd SubPrivate Function Fact(n As Integer) As LongDim i As IntegrFact = 1For i = 1 To n Fact = Fact * iNext iEnd Function3. 某文本文件以下列各式存储学生的学号和两门成绩,编写单击窗体的事件过程。要求:用通用对话框控件CommonDialog1选择该文件,用Label1(0)Label1(1)分别显示总分最高的学生学号与总分。 文本文件格式12010101 , 78 , 8912010102 , 83 , 79 Private Sub Form1_Click()Dim xh As String , cj1 As Byte , cj2 As ByteDim xhmax As cjmax As Byte , c

温馨提示

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

评论

0/150

提交评论