VB第+7课函数过程练习答案.docx

上传人:b****6 文档编号:7354447 上传时间:2023-01-23 格式:DOCX 页数:5 大小:16.80KB
下载 相关 举报
VB第+7课函数过程练习答案.docx_第1页
第1页 / 共5页
VB第+7课函数过程练习答案.docx_第2页
第2页 / 共5页
VB第+7课函数过程练习答案.docx_第3页
第3页 / 共5页
VB第+7课函数过程练习答案.docx_第4页
第4页 / 共5页
VB第+7课函数过程练习答案.docx_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

VB第+7课函数过程练习答案.docx

《VB第+7课函数过程练习答案.docx》由会员分享,可在线阅读,更多相关《VB第+7课函数过程练习答案.docx(5页珍藏版)》请在冰豆网上搜索。

VB第+7课函数过程练习答案.docx

VB第+7课函数过程练习答案

第6章过程与函数

一、填空题

1.数组名作为过程或函数实参,相应的形参传递方式为________。

2.一维长整型数组a作过程形参写作:

a()AsLong,二维长整型数组b作过程形参写作:

________。

3.过程形参为整型,对应实参为5.64,传递给形参的值为________。

4.调用过程时对形参的改变不会导致相应实参变量的改变,则该形参采用________方式。

5.调用过程时对形参的改变就是对相应实参变量的改变,则该形参采用________方式。

6.声明Single类型全局变量x,写作________;声明Integer类型静态变量x,写作________。

7.在窗体Form1的过程中引用窗体Form2中的全局变量y,写作________。

8.阅读如下代码,单击窗体后,窗体上的显示结果为________。

DimiAsInteger,nAsInteger

PrivateSubForm_Click()

DimiAsInteger

Fori=1To3

s=sum(i):

Print"s=";s;

Nexti

EndSub

PrivateFunctionsum(nAsInteger)

StaticjAsInteger

j=j+n+1:

sum=j

EndFunction

二、选择题

1.VB程序设计语言中,函数过程与子过程必须分别用关键字()声明。

(A)Private,Public(B)Public,Private

(C)Function,Sub(D)Sub,Function

2.要调用一个已经定义好的函数myfunction(),用语句的方式调用函数,下列写法哪个是正确的()

(A)Callmyfunction(B)myFunction

(C)myFunction()(D)CallmyFunction()

3.定义过程时,如果在过程名前加关键字Private,则该过程为()。

(A)它是私有过程,仅在定义该过程的模块内有效,模块内的过程可以调用该过程

(B)它是公有过程,在整个工程内有效,模块外的过程可以调用该过程

(C)它是私有过程,在整个工程内有效,模块外的过程可以调用该过程

(D)它是公有过程,仅在定义该过程的模块内有效,模块内的过程可以调用该过程

4.在过程中用Dim保留字定义的变量是()

(A)全局变量(B)局部变量(C)静态变量(D)以上都不是

5.防止递归函数进入死锁的机制是()

(A)在适当的条件下返回(B)通过Stop语句终止递归调用

(C)通过End语句终止递归函数(D)不需要返回

6.关于函数与子程序的关系,下面说法正确的是()

(A)函数执行完后将得到一个返回值,而子程序只是执行一系列动作

(B)函数可以不带参数,而子程序必须带参数

(C)在函数中只用到传地址的方式,而子程序只能用到传值方式

(D)子程序可以被其他子程序调用,而函数不能被其他函数调用

7.VisualBasic6.0中缺省的参数传递机制是()

(A)传值(B)传址(C)传值和传地址(D)从实参到形参

8.使用()语句可以实现过程的特殊出口。

(A)PublicSub/Function(B)Call过程名

(C)ExitSub/Function(D)PrivateSub/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()AsSingle,mAsbyte,nAsByte,xmaxAsSingle,kiAsByte,kjAsByte)。

9.输出100—300间的素数,要求:

(1)用函数判断素数。

(2)每行输出10个数。

10.设计一个将一维数组按降序排列的子过程(假设数据个数不知道),然后编程:

(1)自动产生并输出100个[100,999]间的正整数,并要求每行输出10个数据。

(2)调用该过程对数据按降序排列后再按每行10个输出。

1.按地址传递2.b()AsLong3.64.按值传递5.按地址传递6.PublicxAsSingle(或Publicx!

)、StaticxAsInteger(或Staticx%)7.Form2.y8.s=2s=5s=9

2.选择题:

1.C2.D3.A4.B5.A6.A7.B8.C

 

6-3-7解答:

PrivateSubForm_Click()

Dima()AsSingle

ReDima(10)

Print"反序前:

"

Fori=1To10

a(i)=Rnd*201-100

PrintFormat(a(i),"###.##");

Nexti

Print

Callinver(a(),10)

Print"反序后:

"

Fori=1To10

PrintFormat(a(i),"###.##");

Nexti

Print

EndSub

PrivateSubinver(a()AsSingle,nAsInteger)

DimiAsInteger,tAsSingle

Fori=1Ton\2

t=a(n-i+1)

a(n-i+1)=a(i)

a(i)=t

Nexti

EndSub

6-3-8解答:

6-3-9解答:

PrivateSubForm_Click()

s=0

Fori=100To300

Ifprime(i)Then

Printi;:

s=s+1

IfsMod10=0ThenPrint

EndIf

Nexti

EndSub

PrivateFunctionprime(x)AsBoolean

Ifx<2Then

prime=False

ExitFunction

EndIf

k=Sqr(x)

Fori=2Tok

IfxModi=0Then

prime=False

ExitFunction

EndIf

Next

prime=True

EndFunction

6-3-10解答:

PrivateSubForm_Click()

DimiAsInteger,nAsInteger

Dima(100)AsInteger

Print"排序前:

"

Fori=1To100

a(i)=Int(900*Rnd()+100)

Printa(i);

IfiMod10=0ThenPrint

Nexti

Print

Print"排序后:

"

Callss(a(),100)

Fori=1To100

Printa(i);

IfiMod10=0ThenPrint

Nexti

EndSub

PrivateSubss(a()AsInteger,nAsInteger)

Fori=1Ton-1

Forj=i+1Ton

Ifa(i)

t=a(i):

a(i)=a(j):

a(j)=t

EndIf

Nextj

Nexti

EndSub

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 语文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1