XT6-4.cpp
上传用户:liubin
上传日期:2022-06-13
资源大小:85k
文件大小:1k
源码类别:

书籍源码

开发平台:

Visual C++

  1. #include <iostream>
  2. using namespace std;
  3. int main()
  4.  {void move(int *array,int n,int m);
  5.   int number[20],n,m,i; 
  6.   cout<<"how many numbers?";               // 询问共有多少个数 
  7.   cin>>n;
  8.   cout<<"input "<<n<<" numbers:"<<endl;    // 要求输入n个数 
  9.   for (i=0;i<n;i++)
  10.     cin>>number[i];
  11.   cout<<"how many places do you want move?";  // 询问后移多少个位置
  12.   cin>>m;
  13.   move(number,n,m);                       //调用move 函数 
  14.   cout<<"Now,they are:"<<endl;
  15.   for (i=0;i<n;i++)
  16.     cout<<number[i]<<" ";
  17.   cout<<endl;
  18.   return 0;
  19. }
  20. void move(int *array,int n,int m)             //使循环后移一次的函数
  21.  {int *p,array_end;
  22.   array_end=*(array+n-1);
  23.   for (p=array+n-1;p>array;p--)
  24.     *p=*(p-1);
  25.   *array=array_end;
  26.   m--;
  27.   if (m>0) move(array,n,m); //递归调用,当循环次数m减至为0时,停止调用 
  28.  }
  29.  
  30.    
  31.