首页
登录
从业资格
已知函数f()、g()的定义如下所示,执行表达式“x=f(5)”的运算时,若函数
已知函数f()、g()的定义如下所示,执行表达式“x=f(5)”的运算时,若函数
题库
2022-08-02
90
问题
已知函数f()、g()的定义如下所示,执行表达式“x=f(5)”的运算时,若函数调用g(a)是引用调用(call by reference)方式,则执行“x=f(5)”后x的值为( );若函数调用g(a)是值调用(call by value)方式,则执行“x=f(5)”后x的值为( )。
A.20B.25C.60D.75
选项
A.20
B.25
C.60
D.75
答案
D
解析
本题考查程序语言基础知识。
若实现函数调用时,将实参的值传递给对应的形参,则称为是传值调用。这种方式下形式参数不能向实参传递信息。引用调用的本质是将实参的地址传给形参,函数中对形参的访问和修改实际上就是针对相应实际参数变量所作的访问和改变。
根据题目说明,调用函数f时,实参的值为5,也就是在函数f中,x的初始值为5,接下来先通过“a=x-1”将a的值设置为4,再调用函数g(a)。函数g()执行时,形参y的初始值为4,经过“y=y*y-1”运算后,y的值就修改为15。
在引用调用方式下,g函数中y是f函数中a的引用(可视为形参y与实参a是同一对象),也就是说函数f中a的值被改为15,因此,返回函数f中再执行“a*x”运算后得到75(x=5,a=15),因此第一空应填入的值为75。
在值调用方式下,g函数中y只获得f函数中a的值(形参y与实参a是两个不同的对象),也就是说在函数g中修改y的值与函数f中a的值已经没有关系了,因此,返回函数f再执行“a*x”运算后得到20(x=5,a=4),因此第二空应填入的值为20。
转载请注明原文地址:https://tihaiku.com/congyezige/2427301.html
本试题收录于:
初级程序员题库软件水平考试初中高级分类
初级程序员
软件水平考试初中高级
相关试题推荐
美国建筑协会(AIA)定义建筑信息模型中数据细致程度(LOD)的概念,分LOD1
Revit布尔运算的方式有?()A.粘贴 B.剪切 C.拆分 D.打断
启用工作集后,第一次保存的文件将被定义为()。A.本地文件 B.副本文件 C
()定义了一些适用于建筑项目各领域(如建筑设计、施工管理、设备管理等)的通用概念
患者,女性。慢性心力衰竭,因下肢水肿服用利尿剂治疗两周,血气分析结果如下:血pH
患者,女性。慢性心力衰竭,因下肢水肿服用利尿剂治疗两周,血气分析结果如下:血pH
护士小张为病人进行肌内注射。涂擦皂液后,小张进行了如下的揉擦,请问她漏洗了哪个部
WHO对社区定义是:一个有代表性的社区,人口约在10万~30万,面积为A.500
某护士洗手时,涂擦皂液后,进行了如下的揉擦,请问她漏洗了哪个部位 A.手掌
护士小张为病人进行肌内注射。涂擦皂液后,小张进行了如下的揉擦,请问她漏洗了哪个部
随机试题
区域管制中心的主要职责包括()。A.实施空中交通管制放行许可 B.为在本区
A.1—1断面和2—2断面 B.2—2断面和3—3断面 C.1—1断面和3—
错
以下检测幽门螺杆菌的方法中,最简便的方法是A.细菌培养 B.快速尿素酶试验
骨折愈合过程中第三期为A:原始骨痂形成期 B:血肿机化演进期 C:骨痂改造塑
患者,男性,45岁。诊断为胆总管结石,拟行胆总管切开取石、T管引流术,放置T管的
互助土族自治县位于六盘山集中连片特困地区。土族是全国28个人口较少的民族之一,自
在我国货币政策间接传导过程中,运用货币政策工具首先影响到的是货币政策的()。A
下列关于集团财务报表审计中合并过程审计的表述,正确的有( )。A.如果组成部分财
在地下水环境影响评价中,下列确定污水池及管道正常状况泄漏源强的方法,正确的有(
最新回复
(
0
)