普通网友 2016-11-04 12:55 采纳率: 0%
浏览 888
已采纳

小白 蛇形矩阵 编程出错找不到 求大神

#include
int main()
{
int a[100][100],b,c,d=2,f=1,g,h,e;
scanf("%d",&b);
e=b;
c=b/2;
h=b/2;
a[c][c]=1;
while(d<b*b)
{

        for(g=0;g<f;g++,d++)
            a[++c][h]=d;        
            for(g=0;g<f;g++,d++)    
                a[c][--h]=d;
                f++;
        for(g=0;g<f;g++,d++)        
                    a[--c][h]=d;
                for(g=0;g<f;g++,d++)
                    a[c][++h]=d;
                f++;
}
for(d=0;d<e;d++)
{
    printf("\n");
    for(c=0;c<e;c++)
        printf("%3d",a[d][c]);
}

}

原理输入3 输出5 6 7
4 1 8
3 2 9
输入7以下都可以 但是输入7或7以上就炸了不知道为什么
还有有的地方不简洁改一下

  • 写回答

1条回答 默认 最新

  • threenewbee 2016-11-04 13:37
    关注
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?