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

如何实现用户自定义尺寸的矩形数组并遍历输出?C#作业问题求解

代码问题梳理

  • 未实现「先创建矩形数组存储值,再输出数组内容」的要求:你当前的逻辑是直接计算数值后打印,没有将值存入定义的rectArray数组中
  • 输出格式逻辑错误:你将换行和额外行号打印的逻辑放在了列遍历之前,导致输出内容错位、出现多余的行号数字,不符合预期格式
  • 换行时机错误:每一行的所有列内容打印完成后才需要换行,你当前的换行时机完全错误

修正后的代码

static void Main(string[] args)
{
    Console.WriteLine("请输入一个正整数:");
    // 读取用户输入的数值
    int userValue = int.Parse(Console.ReadLine());
    // 校验输入值范围在1-10之间
    if (userValue <= 10 && userValue > 0)
    {
        // 定义对应尺寸的二维矩形数组
        int[,] rectArray = new int[userValue, userValue];
        
        // 第一步:先给数组所有元素赋值
        for (int row = 0; row < rectArray.GetLength(0); row++)
        {
            for (int column = 0; column < rectArray.GetLength(1); column++)
            {
                rectArray[row, column] = row + column + 1;
            }
        }

        // 第二步:打印输出数组的所有值
        Console.WriteLine("数组的所有值如下:");
        for (int row = 0; row < rectArray.GetLength(0); row++)
        {
            for (int column = 0; column < rectArray.GetLength(1); column++)
            {
                Console.Write(" " + rectArray[row, column]);
            }
            // 每一行打印完成后换行
            Console.WriteLine();
        }
        Console.ReadKey();
    }
    else
    {
        Console.WriteLine("输入的数值需要为1到10之间的正整数。");
        Console.ReadKey();
    }
}

核心调整说明

  • 拆分了数组赋值和数组打印两个流程,符合作业要求的「先创建数组存储值再输出」的规则
  • 删除了错误的行号打印逻辑,将换行操作移动到每一行所有列打印完成之后,保证输出格式和预期一致
  • 优化了变量命名,把file改为更易理解的row(行),降低逻辑理解成本

内容的提问来源于stack exchange,提问作者César Higashi

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 20:27:02