大佬们新人求助
#include<stdio.h>int main()
{
int i,x,a,b,c,d,e,f,g,k,l,w,q,t,s,o,z;
int n;
scanf("%d",&n);
int r[n][n];
for(o=0;o<n;o++){
for(z=0;z<n;z++){
r[o][z]=0;
}
}
a=(n-1)/2;
b=a;
i=0;
r[a][b]=1;
for(x=2,c=1,g=0;g<2*n;g++,i++){
if(i%2==0){
for(f=1;f<=c;f++){
b=b+1;
r[a][b]=x;
x++;
}
for(e=1;e<=c;e++){
a=a-1;
r[a][b]=x;
x++;
}
c++;
}else{
for(f=1;f<=c;f++){
b=b-1;
r[a][b]=x;
x++;
}
for(e=1;e<=c;e++){
a=a+1;
r[a][b]=x;
x++;
}
c++;
}
}
k=0;l=0;
while(k<n){
if(k==n-1&&l==n-1){
printf("%d\n",r[k][l]);
goto end;
}else{
printf("%d ",r[k][l]);
}
if(l==n-1){
putchar(10);
k++;
l=-1;
}
l++;
}
end:
for(w=0,q=0;w<n;w++){
q=q+r[w][w];
}
for(t=0,d=0,s=n-1;t<n;t++,s--){
d=d+r[t][s];
}
printf("%d\n",d+q-1);
return 0;
}
rt这是一个输出蛇形矩阵的代码 问题出在 我前面一部分是设置数组
后面是从1开始 2 3 蛇形增加 形成类似
5 4 3
6 1 2
7 8 9的结构
但是现在这个代码输出的数据很奇怪 找不到原因
求大佬们指教