首页
登录
从业资格
已知函数f( )、g( )的定义如下所示,执行表达式"x=f(5)"的运算时,若
已知函数f( )、g( )的定义如下所示,执行表达式"x=f(5)"的运算时,若
最全题库
2022-08-02
63
问题
已知函数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://tihaiku.com/congyezige/2415304.html
本试题收录于:
中级 软件评测师题库软件水平考试初中高级分类
中级 软件评测师
软件水平考试初中高级
相关试题推荐
某计算机系统页面大小为4K,若进程的页面变换表如下所示,逻辑地址为十六进制1D1
在某C/C++程序中,整型变量a的值为0且应用在表达式"c=b/a"中,则最可能
以下那个函数可以帮助我们计算平方根:A.abs B.exp C.sqrt
在CPU中,()的主要功能是在控制器的控制下完成各种算术运算和逻辑运算。(
假设系统中进程的三态模型如下图所示,图中的a、b和c的状态分别为(请作答此空);
现有行情数据如下:stock_price={'000001':15.34,
定义类的关键词是什么?
函数定义的关键词是什么?
特殊函数__init__()的作用是什么?
定义一个求和函数:计算所有传入参数的和
随机试题
TheLondonMarathonisadifficultrace.______,thousandsofrunnersparticipat
Youaretryingtofillabathwithbothtapson,buthaveaccidentallyleftout
(1)WHYSHOULDanyonebuythelatestvolumeintheever-expandingDictionary
Weshould______studyhardduringourtimeintheuniversity.A、allB、everyC、so
阅读《前赤壁赋》中的一段文字, 况吾与子渔樵于江渚之上,侣鱼虾而友麋鹿,驾
男,38岁,进食时左颌下腺肿大1年,检查见左颌下腺稍肿大,无压痛。首先应选择下列
某混凝土试块强度值不满足规范要求,但经法定检测单位对混凝土实体强度经过法定检测后
左边给定的是纸盒的外表面,下面哪一项能由他折叠而成?
关于心房颤动的药物治疗,下列哪项正确A.IA类药物奎尼丁防止心房颤动发作效果确
对于红细胞沉降率的临床意义描述正确的是A.一般来说,除一些生理性因素外,凡体内有
最新回复
(
0
)