您的位置:首页 > 其它

螺旋矩阵

2009-12-03 13:43 375 查看
螺旋矩阵 c++

#include<iostream>
#include<iomanip>
using namespace std;
void main()
{cout<<"输入要出现螺旋矩阵的行数不要大于20"<<endl;
int n;
cin>>n;
int **p=new int *
;//审请行空间
int i,j,hang=0,lie=-1,t=1,m=n,k=1;
for(j=0;j<n;j++)
p[j]=new int
; //申请列空间
while(k<=n*n)
{ for(i=0;i<m;i++)
{
lie+=t;
*(p[hang]+lie)=k++; //为行赋值
}
m--; //........行数减1
for(j=0;j<m;j++)
{
hang+=t;
*(p[hang]+lie)=k++; //为列赋值

}
t=-t; //改变赋值方向
}
for(i=0;i<n;i++)
{
for(j=0;j<n;j++)
cout<<setw(4)<<*(p+j); //输出矩阵
cout<<endl;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: