enter 發表於 2015-10-16 15:10:41

蛇型陣列的寫法

#include <iostream>
#include <string.h>
#include <stdio.h>
using namespace std;

int main(){
int n,i,j,sum=0;       

cin>>n;
int a;
memset(a,0,sizeof(a));
sum=a=1;

while(sum<n*n)
{
        while((i+1<n)&&!a) a[++i]= ++sum;
        while((j-1>=0)&&!a) a[--j] = ++sum;
        while((i-1>=0)&&!a) a[--i] = ++sum;
        while((j+1<n)&&!a) a[++j] = ++sum;
}

for(i=0;i<n;i++)
{
        for(j=0;j<n;j++) printf("%3d ",a);
    cout<<endl;
}

       
        return 0;
}


192021222324   1
183738394025   2
173647484126   3
163546494227   4
153445444328   5
143332313029   6
13121110    9   8    7
頁: [1]
查看完整版本: 蛇型陣列的寫法