You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C++编写void check函数:数组奇数加5偶数加10功能实现求助

解决C++ check函数数组元素修改问题

以下是实现需求的正确check函数代码:

void check(int S[], int n) {
    for (int i = 0; i < n; ++i) {
        if (S[i] % 2 != 0) { // 兼容正负奇数的判断方式
            S[i] += 5;
        } else {
            S[i] += 10;
        }
    }
}

核心细节说明

  • 数组传参特性:C++中数组作为函数参数会退化为指针,直接修改S[i]会同步作用于原数组,无需额外返回值。
  • 奇偶判断修正:如果数组包含负奇数,S[i] % 2 == 1会失效(例如-3 % 2结果为-1),用S[i] % 2 != 0能覆盖所有奇数场景。
  • 循环边界控制:循环从0到n-1,确保遍历数组全部n个元素,避免越界或遗漏。

验证测试代码

可以用这段代码快速验证函数功能:

#include <iostream>
using namespace std;

void check(int S[], int n) {
    for (int i = 0; i < n; ++i) {
        if (S[i] % 2 != 0) {
            S[i] += 5;
        } else {
            S[i] += 10;
        }
    }
}

int main() {
    int arr[] = {1, 2, 3, 4, -5, -6};
    int len = sizeof(arr) / sizeof(arr[0]);
    
    check(arr, len);
    
    for (int num : arr) {
        cout << num << " ";
    }
    // 预期输出:6 12 8 14 0 4
    return 0;
}

内容的提问来源于stack exchange,提问作者jaris

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 23:51:19