首页
登录
从业资格
已知函数f()、g()的定义如下所示,执行表达式“x=f(5)”的运算时,若函数
已知函数f()、g()的定义如下所示,执行表达式“x=f(5)”的运算时,若函数
题库
2022-08-02
110
问题
已知函数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://www.tihaiku.com/congyezige/2427301.html
本试题收录于:
初级程序员题库软件水平考试初中高级分类
初级程序员
软件水平考试初中高级
相关试题推荐
美国建筑协会(AIA)定义建筑信息模型中数据细致程度(LOD)的概念,分LOD1
Revit布尔运算的方式有?()A.粘贴 B.剪切 C.拆分 D.打断
启用工作集后,第一次保存的文件将被定义为()。A.本地文件 B.副本文件 C
()定义了一些适用于建筑项目各领域(如建筑设计、施工管理、设备管理等)的通用概念
患者,女性。慢性心力衰竭,因下肢水肿服用利尿剂治疗两周,血气分析结果如下:血pH
患者,女性。慢性心力衰竭,因下肢水肿服用利尿剂治疗两周,血气分析结果如下:血pH
护士小张为病人进行肌内注射。涂擦皂液后,小张进行了如下的揉擦,请问她漏洗了哪个部
WHO对社区定义是:一个有代表性的社区,人口约在10万~30万,面积为A.500
某护士洗手时,涂擦皂液后,进行了如下的揉擦,请问她漏洗了哪个部位 A.手掌
护士小张为病人进行肌内注射。涂擦皂液后,小张进行了如下的揉擦,请问她漏洗了哪个部
随机试题
Angerisanemotionthatcanbehardtocontrol.【C1】_____this,weshouldle
CulturalDifferencesbetweenEastandWestI.Factorsleading
Howdosuccessfulpeoplethink?Whatdrivesthem?Interviewsandinvestigatio
It’sdifficulttoimaginetheseaeverrunningoutoffish.It’ssovast,so
下列关于β受体阻断药的药理作用说法正确的是A:可使心率加快、心排出量增加 B:
男性,42岁,B超发现左肾结石1cm大小,平时无明显症状,偶有腰部酸胀不适感,既
关于钠泵生理作用的描述,错误的是A.仅分布在可兴奋细胞的细胞膜上 B.具有分解
10、起吊重物前,应由工作负责人检查悬吊情况及所吊物件的捆绑情况,认为可靠后方准
《2005中国人才报告》指出,随着改革开放的不断深入,国有企业职工人数和人才
下列关于公益慈善事业捐赠个人所得税的规定,说法正确的有( )。A.个体工商户发生
最新回复
(
0
)