可以说一下这个代码怎么写吗?卡壳了卡壳了

凑字,是财务科大不了的健康网客服内部嗯好的抄不完VS发大色块的说不出口VCD呢

img

#include<stdio.h>
int a[100][100];
int main() {
    int m,n,i,j;
    printf("请输入矩阵的行和列,以空格隔开:\n");
    scanf("%d %d",&m,&n);
    printf("请输入%d行%d列的矩阵:\n",m,n);
    for(i=0; i<m; i++) {
        for(j=0; j<n; j++) {
            scanf("%d",&a[i][j]);
        }
    }
    j=0;
    int d=1;//d表示方向,向右为1,向左为0
    for(i=0; i<m; ) {
        printf("%d ",a[i][j]);
        if(d==1) {
            j++;
            if(j==n) {
                d=0;//到尾部了,改为向左
                j=n-1;
                i++; 
            }
        } else {
            j--;
            if(j==-1) {
                d=1;//到头部了,改为向右 
                j=0;
                i++;
            }
        }
    }
    return 0;
}

觉得有用的话采纳一下哈

i=0,j=0,从 a[ i ] [ j ] 开始读
i=1,j=2,从 a[ i ] [ j ] 开始读(判断这一行if(i%2==1),等于1,就把二维数组的 列数 -1 赋给 j )
i=2,j=0,从 a[ i ] [ j ] 开始读