C语言-蛇形矩阵
int main()
{int i,j,a[100][100],n,k;printf("請輸入列數n= ");scanf("%d",&n);k=1;//輸出上三角for(i=0; i<n;i++){for(j=0; j<=i; j++){if(i%2==0) a[i-j][j]=k; else a[j][i-j]=k;k++;}}for(i=n; i<2*n-1; i++) //輸出下三角{for(j=1; j<2*n-i; j++){if(i%2==0) a[n-j][j+i-n]=k; //i-n在j循環里是定值了else a[j+i-n][n-j]=k; //j+i-n的作用是實現行變化 n-j實現列數變化k++; } //兩次循環可以視為矩陣的轉置,所以只需將坐標交換即可}for(i=0; i<n;i++){printf("\n");for(j=0; j<n;j++){printf("%4d",a[i][j]);}printf("\n");}return 0;
}
總結
- 上一篇: AJAX DELETE
- 下一篇: 【数据结构】线性表的顺序存储结构(c语言