求助 答案对的上 为什么0分

P5731 【深基5.习6】蛇形方阵

改成"%3d"
by ___PatrickChen___ @ 2023-09-27 22:25:41


@[xiaopang666](/user/926863)
by ___PatrickChen___ @ 2023-09-27 22:33:09


``` #include<stdio.h> int main() { int n,m,i,j,k,o,l; scanf("%d",&n); float q; int a[n][n]; int b[2*n-1]; for(i=1,m=n,b[0]=n;i<n;i++) { m--; b[2*i]=m; b[2*i-1]=m; } for(o=0,i=0,j=0,k=1,m=0,q=0;o<2*n-1;o++,m++,q=q+0.25,m=q)//i行 j列 if((o+1-4*m)%4==0) //上 4 { for(l=0;l<b[o];l++,k++) { i--; a[i][j]=k; } j=j+1; } else if((o+1-4*m)%3==0) //左 3 for(l=0;l<b[o];l++,k++) { j--; a[i][j]=k; } else if((o+1-4*m)%2==0)//下 2 for(l=0,j=j-1;l<b[o];l++,k++) { i++; a[i][j]=k; } else//右 1 { for(l=0;l<b[o];l++,j++,k++) a[i][j]=k; } for(i=0;i<n;i++) { for(j=0;j<n;j++) printf("%3d",a[i][j]); printf("\n"); } return 0; } ``` 代码应该是这样
by danlao @ 2023-10-06 12:09:02


|