Zff121017 2024-06-04 16:28 采纳率: 25%
浏览 1
已结题

二维数组基本练习——蛇形填数C++03

二维数组基本练习——蛇形填数
几道题不会
尽量有代码
题目1描述
在nn方阵里填入1,2,3,…,nn,要求填成蛇形。例如n=5时方阵为:

1 2 3 4 5
16 17 18 19 6
15 24 25 20 7
14 23 22 21 8
13 12 11 10 9

输入
一行 n (保证n<=8)
输出
蛇形填数矩阵,使用printf("%d ",a[i][j]);
样例输入 复制
5
样例输出 复制
1 2 3 4 5
16 17 18 19 6
15 24 25 20 7
14 23 22 21 8
13 12 11 10 9

题目2描述
在nn方阵里填入1,2,3,…,nn,要求填成蛇形。例如n=5时方阵为:
5 4 3 2 1
6 19 18 17 16
7 20 25 24 15
8 21 22 23 14
9 10 11 12 13

输入
一行 n(n<=8)
输出
蛇形填数矩阵
样例输入 复制
5
样例输出 复制
5 4 3 2 1
6 19 18 17 16
7 20 25 24 15
8 21 22 23 14
9 10 11 12 13

  • 写回答

2条回答 默认 最新

  • 为荣誉而拼搏少年 2024-06-04 20:54
    关注
    #include<iostream>
    #include<iomanip>
    #include<cstring>
    using namespace std;
    int main()
    {
        int n,i,j,k,t=0,a[21][21];
        cin>>n;
        for(k=1;k<=n;k++)
            if(k%2)
                for(j=1;j<=k;j++)
                {
                    i=k+1-j;
                    t++;
                    a[i][j]=t;
                    a[n+1-i][n+1-j]=n*n+1-t;
                }
            else
                for(j=k;j>=1;j--)
                {
                    i=k+1-j;
                    t++;
                    a[i][j]=t;
                    a[n+1-i][n+1-j]=n*n+1-t;
                }
        for(i=1;i<=n;i++)
        {
            for(j=n;j>=1;j--)
                cout<<setw(5)<<a[i][j];
            cout<<endl;
        }
        return 0;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 6月13日
  • 已采纳回答 6月5日
  • 创建了问题 6月4日

悬赏问题

  • ¥15 模电中二极管,三极管和电容的应用
  • ¥15 关于模型导入UNITY的.FBX: Check external application preferences.警告。
  • ¥15 气象网格数据与卫星轨道数据如何匹配
  • ¥100 java ee ssm项目 悬赏,感兴趣直接联系我
  • ¥15 微软账户问题不小心注销了好像
  • ¥15 x264库中预测模式字IPM、运动向量差MVD、量化后的DCT系数的位置
  • ¥15 curl 命令调用正常,程序调用报 java.net.ConnectException: connection refused
  • ¥20 关于web前端如何播放二次加密m3u8视频的问题
  • ¥15 使用百度地图api 位置函数报错?
  • ¥15 metamask如何添加TRON自定义网络