首页
登录
从业资格
已知函数f()、g()的定义如下所示,执行表达式“x=f(5)”的运算时,若函数
已知函数f()、g()的定义如下所示,执行表达式“x=f(5)”的运算时,若函数
练习题库
2022-08-02
105
问题
已知函数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
答案
A
解析
本题考查程序语言基础知识。
若实现函数调用时,将实参的值传递给对应的形参,则称为是传值调用。这种方式下形式参数不能向实参传递信息。引用调用的本质是将实参的地址传给形参,函数中对形参的访问和修改实际上就是针对相应实际参数变量所作的访问和改变。
根据题目说明,调用函数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/2427300.html
本试题收录于:
初级程序员题库软件水平考试初中高级分类
初级程序员
软件水平考试初中高级
相关试题推荐
美国建筑协会(AIA)定义建筑信息模型中数据细致程度(LOD)的概念,分LOD1
Revit布尔运算的方式有?()A.粘贴 B.剪切 C.拆分 D.打断
启用工作集后,第一次保存的文件将被定义为()。A.本地文件 B.副本文件 C
美国建筑师协会(AIA)定义了建筑信息模型中数据细致程度(LOD)的概念,LOD
某护士洗手时,涂擦皂液后,进行了如下的揉擦,请问她漏洗了哪个部位 A.手掌
护士小张为病人进行肌内注射。涂擦皂液后,小张进行了如下的揉擦,请问她漏洗了哪个部
某护士洗手时,涂擦皂液后,进行了如下的揉擦,请问她漏洗了哪个部位 A.手掌
护士小张为病人进行肌内注射。涂擦皂液后,小张进行了如下的揉擦,请问她漏洗了哪个部
某护士洗手时,涂擦皂液后,进行了如下的揉擦,请问她漏洗了哪个部位 A.手掌
护士小张为病人进行肌内注射。涂擦皂液后,小张进行了如下的揉擦,请问她漏洗了哪个部
随机试题
TheBritishEmpirewasoncehometothirdofthe【M1
Cheatinginsportisasoldassportitself.TheathletesofancientGreece
工人生产工作成绩的考核,主要包括()等方面。
一座厂房中或防火分区有甲类、乙类生产时,如果甲类生产在发生事故时,可燃物质足以构
舞蹈病患者出现的肌张力表现是()。A.降低 B.增高 C.先降低后亢进
常年性变应性鼻炎鼻腔检查可见()A.鼻和鼻道内多脓涕,豆腐渣样物堆积
行常速扩张时,不能作为注水安全扩张的标志为A.表面皮肤颜色 B.表面皮肤毛细血
阴道清洁度I度,指白细胞每高倍视野不超过A.1个 B.5个 C.10个 D
尿干化学分析仪检测血红蛋白的原理是A.偶氮偶联法B.马来酐试剂C.葡萄糖氧化酶法
在股指期货套期保值中,通常采用()方法。 A.动态套期保值策略 B.交叉套
最新回复
(
0
)