习题6答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
习题六
一、简述子过程与函数过程的共同点和不同之处。
答:函数与子过程的异同
二者没有本质的区别,相同点:都可以实现某一确定的功能;不同点:函数有1个返回值;子过程没有返回值或者返回多个值。由此造成二者存在一定的语法区别。
声明:
调用:
二、什么是形参,实参?什么是值引用?地址引用?地址应用对实参有什么限制?
答:在声明函数或者子过程时,()内的变量,称为形参,不表示具体数值,只表示参数的类型、数量、位置。在主调程序内调用(使用)函数的时候,()内提供的变量名或者常数,称为实参,表示具体的数值。
值引用(ByVal )和地址引用(ByRef)是实参将具体数值传递给形参的2种不同方式。前者实参仅仅将具体数值传递给形参,二者没有联系。后者实参不仅将具体数值传递给形参,二者共用一个存储单元,在函数体内或者子过程体内,对形参的任何改变也会改变实参。要求实参必须是变量名形式,不可以是常数。
三、四的题目都是根据上述理论,对过程、函数的声明、调用做正确的判断。
三、指出下面过程语句说明中的错误:
(1)Sub f1(n%) as Integer
(2)Function f1%(f1%)
(3)Sub f1(ByVal n%())
(4)Sub f1(x(i) as Integer)
答:
(1) AS INTEGER 错误
(2) F1重复声明
(3) ByVal 错误
(4) X(i)错误
四、已知有如下求两个平方数和的fsum 子过程:
Public Sub fsum(sum%, ByVal a%, ByVal b%)
sum = a * a + b * b
End Sub
在事件过程中若有如下变量声明:
Private Sub Command1_Click()
Dim a%, b%, c!
a = 10:
b = 20
则指出如下过程调用语句的错误所在:
(1)fusum 3, 4, 5
(2)fsum c, a, b
(3)fsum a + b, a, b
(4)Call fsum(Sqr(c), Sqr(a), Sqr(b))
(5)Call fsum c,a,b
答:
(1)3错误
(2)c数据类型不符
(3)a+b错误
(4)sqr(c)错误
(5)少括号,c数据类型不符
六、要使变量在某事件过程中保留值,有哪几种变量声明的方法?
答:声明为static或者全局变量
七、为了使某变量在所有的窗体中都能使用,应在何处声明该变量?
答:应在窗体\模块的通用声明段用Public关键字声明为全局变量。
八、在同一模块、不同过程中声明的相同变量名,两者是否表示同一个变量?两者之间有没有联系?
答:不是,没有联系