首页
登录
从业资格
已知函数f()、g()的定义如下所示,执行表达式"x=f(5)"的运算时,若函数
已知函数f()、g()的定义如下所示,执行表达式"x=f(5)"的运算时,若函数
资格题库
2022-08-02
76
问题
已知函数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/2415813.html
本试题收录于:
中级 软件评测师题库软件水平考试初中高级分类
中级 软件评测师
软件水平考试初中高级
相关试题推荐
进程P1、P2、P3、P4和P5的前趋图如下所示: 若用PV操作控制进程P
在页式存储管理方案中,如果地址长度为32位,并且地址结构的划分如下图所示,则
某分页存储管理系统中的地址结构如下图所示。若系统以字节编址,则该系统每个页面的大
在CPU中,常用来为ALU执行算术逻辑运算提供数据并暂存运算结果的寄存器是(1)
程序计数器(PC)是(8)中的寄存器。A.运算器 B.控制器 C.Cache
构成运算器的部件中,最核心的是()。A.数据总线 B.累加器 C.算术和逻
与XθY(即仅当X与Y不相同时,XθY的结果为真)等价的逻辑表达式为()。
调用函数时若是引用调用方式,则是将(请作答此空)。下面所定义的函数f1为值调用方
调用函数时若是引用调用方式,则是将( )。下面所定义的函数f1为值调用方式,函数
已知一个文件中出现的各个字符及其对应的频率如下表所示。若采用定长编码,则该文件中
随机试题
Itisperhapsthehardestreformofall.Pensionsystemsorenergyshortages
TheUnitedStatesofAmericaisoftenseenasanationinwhichthepursuit
FiveCommonMistakesinConversationsandTheirSolutionsⅠ.Notlis
CorettaScottKingCorettaScottKing,thewidowof
中国最早的近代军事工业是()A.安庆军械所 B.天津制造局 C.福州船政
在一个计算机房内要实现所有的计算机联网,一般应选择()网。A.GAN B.
舌根的淋巴管汇入A.颌下淋巴结 B.颈浅淋巴结 C.腮腺淋巴结 D.颈深上
某企业本月期初库存材料计划成本为200万元,材料成本差异账户借方余额10万元。本
下面谱例出自里姆斯基一科萨科夫《舍赫拉查达》,其中两乐之间的关系是()。 A.
临床上判断心脏舒张功能最实用的方法是 A.心脏X线片B.超声多普勒C.放射
最新回复
(
0
)