zoukankan      html  css  js  c++  java
  • 输出螺旋矩阵

     1 #include <iostream>
     2 #include <iomanip>
     3 using namespace std;
     4 void main()
     5 {
     6 void f(int i,int j,int n,int value,int **a);
     7 int n,p,q;
     8 cout<<"Please input the value of n:"<<endl;
     9 int **a;
    10     cin>>n;
    11     a=new int*[n];
    12     for(int i=0;i<n;i++)
    13    a[i]=new int[n];
    14 f(0,0,n,1,a);
    15 for(p=0;p<n;p++)
    16 {
    17    for(q=0;q<n;q++)
    18     cout<<setw(4)<<a[p][q];
    19    cout<<endl;
    20 }
    21 }
    22 void f(int i,int j,int n,int value,int **a)    //递归函数,观察得在外层a[i][j]+a[j][i]是一恒值
    23 {
    24 int v=value,i1=i,j1=j,sum,m=n;
    25 a[i][j]=v;
    26 a[i+1][j]=a[i1][j1]+4*n-5;
    27 sum=a[i1+1][j1]+a[i1][j1]+1;
    28 for(j1=j+1;j1<j+n;j1++)
    29 {
    30    a[i][j1]=++v;
    31    a[j1][i]=sum-v;
    32 }
    33 for(i1=i+1;i1<i+n;i1++)
    34 {
    35    a[i1][j1-1]=++v;
    36    a[j1-1][i1]=sum-v;
    37 }
    38 n=n-2;
    39 value=a[i+1][j]+1;
    40 i++;
    41 j++;
    42 if(n!=0&&n!=1)
    43    f(i,j,n,value,a);
    44 else
    45    if(n==1)
    46     a[i][j]=value;
    47 }
  • 相关阅读:
    说说那些低级错误
    vue双向数据绑定
    妙用$.extend
    写一个限制执行次数的函数
    强类型语言不好的地方,比如这样:
    form表单里的坑
    Java Day 09
    Java Day 08
    Java Day 07
    Java Day 06
  • 原文地址:https://www.cnblogs.com/mellowsmile/p/4382574.html
Copyright © 2011-2022 走看看