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

矩阵行求和程序返回零值问题排查求助

问题分析与修复

你的代码存在三个核心问题,直接导致返回零值且循环不执行:

  • 覆盖输入矩阵:方法内的input = new int[rows, columns];会重新创建一个全0的数组,完全覆盖了传入的原始矩阵,求和自然都是0,这行必须删除。
  • 循环条件错误:外层循环for(int i = 0; i >= rows; i++)的条件i >= rows从一开始就不成立(初始i=0,rows至少为1),循环直接跳过;内层循环j >= columns同理,根本不会执行。正确条件应为i < rows和j < columns。
  • 每行求和未重置sum:如果不在每行循环前重置sum,后续行的和会累加前面所有行的结果,导致计算错误,需要将sum的声明移到外层循环内部,每次处理新行时重置为0。

修复后的代码

public class Row_summer
{
    public int[] summ(int[,] input, int rows, int columns)
    {
        int[] sum_of_rows = new int[rows];

        for(int i = 0; i < rows; i++)
        {
            int sum = 0; // 每行循环前重置求和变量
            for(int j = 0; j < columns; j++)
            {
                sum += input[i, j];
            }
            sum_of_rows[i] = sum;
        }
        return sum_of_rows;
    }
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 18:50:25