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

如何在不使用函数的情况下保存循环迭代值,分别求和数组奇偶元素?

解决方法

要实现分别累加偶数和奇数的总和,你只需要在循环外定义两个累加变量,在判断分支里分别累加对应数值即可,不用函数也能轻松搞定。

修改后的完整代码:

int eo_array[] = { 1,2,3,4,5,6,7,8 };
int even_total = 0; // 用来存所有偶数的总和
int odd_total = 0;  // 用来存所有奇数的总和

// 输出数组大小
cout << "Size of array: " << sizeof(eo_array) / sizeof(eo_array[0]) << endl;

for (int i = 0; i < sizeof(eo_array) / sizeof(eo_array[0]); i++) {
    if (eo_array[i] % 2 == 0) {
        cout << eo_array[i] << endl;
        even_total += eo_array[i]; // 把当前偶数加到总和里
    } else {
        cout << eo_array[i] << endl;
        odd_total += eo_array[i];  // 把当前奇数加到总和里
    }
}

// 最后输出两个总和
cout << "\n所有偶数的总和: " << even_total << endl;
cout << "所有奇数的总和: " << odd_total << endl;

关键说明

你之前尝试的临时变量被覆盖,核心问题是变量声明位置不对:如果把累加变量放在for循环内部,每次循环迭代都会重新创建并初始化这个变量,之前存储的累加值自然会丢失。把even_total和odd_total放在循环外面,就能让它们在整个循环过程中保持状态,持续累加对应数值。

运行结果

执行后会先输出数组大小和所有元素,然后输出:

所有偶数的总和: 20
所有奇数的总和: 16

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.05 15:52:53