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

C++编程求助:如何将指定数组中的奇数替换为偶数?

解决方案

你的代码目前只输出了奇数乘2的结果,没有保留偶数,也没完成打印原数组和完整更新数组的要求,以下是修正后的代码和说明:

关键问题点

  • 未遍历打印全部原数组元素,只处理了奇数
  • 仅输出了奇数乘2的结果,没有将修改后的值存回数组,也没输出偶数
  • 输出时用了endl导致每个结果换行,不符合期望的空格分隔格式

修正后的代码

#include <iostream>
using namespace std;

int main()
{
    const int size = 10;
    int values[size] = {42, 9, 23, 101, 99, 22, 13, 5, 77, 28};

    // 打印原数组
    cout << "The original array is: ";
    for (int i = 0; i < size; i++)
    {
        cout << values[i] << " ";
    }
    cout << endl; // 换行分隔

    // 修改数组:奇数乘2转为偶数
    for (int i = 0; i < size; i++)
    {
        if (values[i] % 2 != 0)
        {
            values[i] *= 2; // 将修改后的值存回数组
        }
    }

    // 打印更新后的数组
    cout << "Your even number array is: ";
    for (int i = 0; i < size; i++)
    {
        cout << values[i] << " ";
    }
    cout << endl;

    return 0;
}

代码说明

  1. 打印原数组:新增第一个循环,遍历数组所有元素,按空格分隔输出,先打印标题再逐个输出元素
  2. 修改数组元素:把原来直接输出values[i]*2的逻辑,改成values[i] *= 2,这样修改后的值会存回数组,保留原偶数不变
  3. 打印更新后数组:新增第三个循环,遍历修改后的数组,同样按空格分隔输出完整内容
  4. 调整输出格式:用空格分隔元素,最后用endl换行,符合期望的输出样式

运行这段代码后,就能得到你想要的输出结果。

内容的提问来源于stack exchange,提问作者samu-chan

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 06:50:45