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

偶数阶n×n方阵两条对角线排序问题及修正后实现代码

n×n数组双对角线排序实现

给定一个n×n的数组(n为偶数),需要完成以下两个排序操作:

  • 将从[0,0]起始的主对角线元素按升序排列
  • 将从[n-1,0]起始的副对角线元素按降序排列

已完成问题排查,以下是可输出正确结果的C语言实现代码:

void sortDiagonals (int n, int arr[100][100])
{
    // 主对角线升序排序
    for (int i = 0; i < n; i++)
    {
        for (int j = i + 1; j < n; j++)
        {
            if (arr[i][i] > arr[j][j])
            {
                int temp = arr[j][j];
                arr[j][j] = arr[i][i];
                arr[i][i] = temp;
            }
        }
    }
    // 副对角线降序排序
    for (int i = n - 1, j = 0; i > 0, j < n - 1; i--, j++)
    {
        for (int a = i - 1, b = j + 1; a >= 0, b <= n - 1 ; a--, b++)
        {
            if (arr[i][j] > arr[a][b]) 
            {
                int temp = arr[i][j];
                arr[i][j] = arr[a][b];
                arr[a][b] = temp;
            }
        }
    }
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.18 17:17:16