GESP 四级 · GESP 四级样题(C++ 组) 第 13 题

选择题 · 答案 B · 考点:函数

← 整套速查表 GESP 四级 全部真题

题目

在下列代码的横线处填写( ),可以使得输出是“20 10”。 ![](https://cdn.luogu.com.cn/upload/image_hosting/p7frxxqf.png)

答案:B

考点

函数

解题思维

这题核心就在看参数传递方式。输出要变说明函数里改了原变量,所以必须用引用。再看主调函数声明的是 x 和 y,参数名得跟它们对上号,只有 B 选项同时满足引用和名字匹配。

常见错误

很多考生只盯着‘引用’这个点,忽略了参数名必须和主调变量一致。比如看到 C 或 D 里有引用符号就以为对了,其实 a 和 b 在主函数里根本没定义,编译器会报错,或者即使定义了也改不到 x 和 y 上。还有人容易把值传递和引用传递搞混,觉得 A 选项名字对就选它,完全忘了值传递在函数里改的是副本,原变量纹丝不动,输出自然不对。

详细解析(节选)

【考点】引用传递与参数名一致性

1. 命题视角

GESP 四级常考‘引用作为参数传递’,但命题人很狡猾,往往把‘引用’和‘参数名必须与实参同名’两个条件揉在一起。这道题就是典型:如果不看名字,光看符号,C 和 D 都有&,很容易误导;如果不看引用,光看名字,A 和 C 名字都对,很容易误选。考生必须同时满足两个条件才能拿分。

同考点真题

在 OI伴学 里做这道题
登录后可计时作答、查看完整六段式解析,并按你的错题自动生成同类练习。
去刷题先做一次 AI 学情诊断