正在载入在线练习界面,本页内容可直接阅读…
AK CSP › CSP-J 2024 第一轮真题 › 第 27 题
CSP-J 2024 第一轮 第 27 题:程序(三):customFunction(2,3) 的返回值是否为64
题目
#include <iostream>
#include <cmath>
using namespace std;
int customFunction(int a, int b) {
if (b == 0) {
return a;
}
return a + customFunction(a, b-1);
}
int main() {
int x, y;
cin >> x >> y;
int result = customFunction(x, y);
cout << pow(result, 2) << endl;
return 0;
}
本小题
当输入为 2 3 时,customFunction(2, 3) 的返回值为 $64$。( )
选项
- √. 正确
- ×. 错误
答案
×
题解
答案:×,错误。
注意区分函数的返回值和程序最终的输出。
递归计算过程如下:
``text customFunction(2, 0) = 2 customFunction(2, 1) = 2 + 2 = 4 customFunction(2, 2) = 2 + 4 = 6 customFunction(2, 3) = 2 + 6 = 8 ``
所以,customFunction(2, 3) 的返回值是 8。
回到 main 后,pow(result, 2) 才将返回值平方,得到 \(8^2=64\)。因此,64 是程序的输出,不是函数的返回值。
真题版权归 CCF 所有,本站仅用于非商业教学用途。页面加载后可直接在线作答,作答记录保存在本浏览器或账号中。 京ICP备2026056990号-1
京公网安备11010502062986号