输出螺旋矩阵
今天在VS2012上试着写了一个螺旋矩阵的生成算法,效果还不错。
int n=1,i=0,j=0,k=1; cin>>n; int ** arr=new int*[n]; for(int l=0;l<n;l++) { arr[l]=new int[n]; } int count=n/2; for(i=0;i<count;i++) { int m=n-1-i; for(j=i; j<=m; j++) arr[i][j]=k++; for(j=i+1; j<=m; j++) arr[j][m]=k++; for(j=m-1; j>=i; j--) arr[m][j]=k++; for(j=m-1; j>i; j--) arr[j][i]=k++; } if(n%2==1) arr[count][count]=n*n; for(i=0;i<n;i++) { for(j=0;j<n;j++) { cout<<arr[i][j]<<'\t'; } cout<<endl; }
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步