正在载入在线练习界面,本页内容可直接阅读…

AK CSP › CSP-J 2024 第一轮真题 › 第 31 题

CSP-J 2024 第一轮 第 31 题:程序(三):x=3,y=3 时程序的最终输出

阅读程序 · 函数与递归 · 难度 较难 · 答案 C

题目

#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;
}
CSP-J 2024 第一轮 第 31 题 原题
原题扫描(页面加载后可直接在线作答)

本小题

如果输入 x=3 和 y=3,则程序的最终输出为(  )。

选项

  • A. 27
  • B. 81
  • C. 144
  • D. 256

答案

C

题解

答案是 C. 144。

关键在于:当 b == 0 时,函数返回的是 a,所以 customFunction(3, 3) 一共累加了 4 个 3:

``text customFunction(3, 0) = 3 customFunction(3, 1) = 3 + 3 = 6 customFunction(3, 2) = 3 + 6 = 9 customFunction(3, 3) = 3 + 9 = 12 ``

因此 result = 12,pow(result, 2) 表示计算它的平方:

\[ 12^2 = 144 \]

程序最终输出 144。

真题版权归 CCF 所有,本站仅用于非商业教学用途。页面加载后可直接在线作答,作答记录保存在本浏览器或账号中。 京ICP备2026056990号-1 京公网安备11010502062986号