VB第6章课后练习答案.doc_第1页
VB第6章课后练习答案.doc_第2页
VB第6章课后练习答案.doc_第3页
VB第6章课后练习答案.doc_第4页
VB第6章课后练习答案.doc_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

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

文档简介

第6章 过程与函数一、填空题 1数组名作为过程或函数实参,相应的形参传递方式为_按地址传递_。2一维长整型数组a作过程形参写作:a() As Long,二维长整型数组b作过程形参写作:_b() As Long _。 3过程形参为整型,对应实参为5.64,传递给形参的值为_6_。 4调用过程时对形参的改变不会导致相应实参变量的改变,则该形参采用_按值传递_方式。 5调用过程时对形参的改变就是对相应实参变量的改变,则该形参采用_按地址传递_方式。 6声明Single类型全局变量x,写作_Public x As Single(或 Public x!)_;声明Integer类型静态变量x,写作_Static x As Integer (或 Static x%)_。 7在窗体Form1的过程中引用窗体Form2中的全局变量y,写作_Form2.y_。 8阅读如下代码,单击窗体后,窗体上的显示结果为_s = 2 s = 5 s = 9_。 Dim i As Integer, n As Integer Private Sub Form_Click() Dim i As Integer For i = 1 To 3 s = sum(i): Print s =; s; Next i End Sub Private Function sum(n As Integer) Static j As Integer j = j + n + 1: sum = j End Function 二、选择题 1.VB程序设计语言中,函数过程与子过程必须分别用关键字( C )声明。 (A)Private,Public (B)Public,Private (C)Function, Sub (D)Sub, Function 2.要调用一个已经定义好的函数myfunction( ),用语句的方式调用函数,下列写法哪个是正确的( D )(A)Call myfunction (B)myFunction (C)myFunction ( ) (D)Call myFunction( ) 3.定义过程时,如果在过程名前加关键字Private,则该过程为( A )。 (A)它是私有过程,仅在定义该过程的模块内有效,模块内的过程可以调用该过程 (B)它是公有过程,在整个工程内有效,模块外的过程可以调用该过程 (C)它是私有过程,在整个工程内有效,模块外的过程可以调用该过程 (D)它是公有过程,仅在定义该过程的模块内有效,模块内的过程可以调用该过程 4.在过程中用Dim保留字定义的变量是( B ) (A)全局变量 (B)局部变量 (C)静态变量 (D)以上都不是 5.防止递归函数进入死锁的机制是( A )(A)在适当的条件下返回 (B)通过Stop语句终止递归调用 (C)通过End语句终止递归函数 (D)不需要返回 6.关于函数与子程序的关系,下面说法正确的是( A ) (A) 函数执行完后将得到一个返回值,而子程序只是执行一系列动作 (B) 函数可以不带参数,而子程序必须带参数 (C) 在函数中只用到传地址的方式,而子程序只能用到传值方式 (D)子程序可以被其他子程序调用,而函数不能被其他函数调用 7.Visual Basic 6.0 中缺省的参数传递机制是( B ) (A) 传值 (B) 传址 (C) 传值和传地址 (D)从实参到形参 8.使用( C )语句可以实现过程的特殊出口。 (A) Public Sub/Function (B) Call 过程名 (C) Exit Sub/Function (D)Private Sub/Function 三、思考题 1.静态变量和动态变量的区别是什么? 2.函数过程与子程序过程有什么区别? 3.子过程调用有哪几种形式? 4.什么是形参?什么是实参?什么是值引用?什么是地址引用?对应的实参有没有限制? 5.怎样引用其他模块的过程和变量? 6.编制通用函数过程,计算Double类型一维数组所有元素的平均值。 7.编制通用Sub过程,将Single类型一维数组反序排放(如实参数组元素依次为6、5、9、7,调用后为7、9、5、6;若为-3.2、4、2.6、31、7.3,调用后为7.3、31、2.6、4、-3.2)。 8编制通用Sub过程,在一个m行n列二维数组中查找绝对值最大的元素,以及该元素的行号、列号(提示:Sub过程的形参列表如x() As Single, m As byte, n As Byte, xmax As Single,ki As Byte,kj As Byte)。 9.输出100300间的素数,要求:(1) 用函数判断素数。(2) 每行输出10个数。10 设计一个将一维数组按降序排列的子过程(假设数据个数不知道),然后编程:(1) 自动产生并输出100个100,999间的正整数,并要求每行输出10个数据。(2) 调用该过程对数据按降序排列后再按每行10个输出。6-3-7解答:Private Sub Form_Click()Dim a() As SingleReDim a(10)Print 反序前:For i = 1 To 10 a(i) = Rnd * 201 - 100 Print Format(a(i), #.# );Next iPrintCall inver(a(), 10)Print 反序后:For i = 1 To 10Print Format(a(i), #.# );Next iPrintEnd SubPrivate Sub inver(a() As Single, n As Integer) Dim i As Integer, t As Single For i = 1 To n 2 t = a(n - i + 1) a(n - i + 1) = a(i) a(i) = t Next iEnd Sub6-3-8解答:6-3-9解答:Private Sub Form_Click()s = 0For i = 100 To 300 If prime(i) Then Print i;: s = s + 1 If s Mod 10 = 0 Then Print End IfNext iEnd SubPrivate Function prime(x) As Boolean If x 2 Then prime = False Exit Function End If k = Sqr(x) For i = 2 To k If x Mod i = 0 Then prime = False Exit Function End If Next prime = TrueEnd Function6-3-10解答:Private Sub Form_Click() Dim i As Integer, n As Integer Dim a(100) As Integer Print 排序前: For i = 1 To 100 a(i) = Int(900 * Rnd() + 100) Print a(i); If i Mod 10 = 0 Then Print Next i Print Print 排序后: Call ss(a(), 100) For i = 1 To 100 Print a(i); If i Mod 10 = 0 Then Print Next iEnd S

温馨提示

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

评论

0/150

提交评论