代码:
#include<iostream>
using namespace std;
void main()
{
int i,j,a[100][100],n,k;
cout<<"please input n:";
cin>>n;
k=1;
for(i=1;i<=n/2;i++)
{
for(j=i;j<=n-i;j++) //左边
{
a[j][i]=k;
k++;
}
for(j=i;j<=n-i;j++) //下边
{
a[n+1-i][j]=k;
k++;
}
for(j=n-i+1;j>=i+1;j--) //右边
{
a[j][n+1-i]=k;
k++;
}
for(j=n-i+1;j>=i+1;j--) //上边
{
a[i][j]=k;
k++;
}
}
if(n%2==1) //中心
a[(n+1)/2][(n+1)/2]=n*n;
for(i=1;i<=n;i++) //打印
{
for(j=1;j<=n;j++)
{
printf("%4d",a[i][j]);
}
cout<<endl;
}
}