算法设计与分析课后习题3.2
题目:编写一个算法,其功能是给一维数组a输入任意6个整数,假设为:5 7 4 8 9 1 ,然后建立一个具有以下内容的方阵,并打印出来(屏幕输出)。
5 7 4 8 9 1
1 5 7 4 8 9
9 1 5 7 4 8
8 9 1 5 7 4
4 8 9 1 5 7
7 4 8 9 1 5
设计思路:每次把数组的最后一个元素先暂存在一边,然后把其余所有元素后移一位,再把已经先暂存的最后一个元素赋给数组第一个元素。
#include<iostream>
using namespace std;
int main()
{
int a[]={5,7,4,8,9,1};
int t;
for(int j=0;j!=6;++j)
cout<<a[j]<<" ";
cout<<endl;
for(int i=1;i!=6;++i)
{
t=a[5];
for(int n=4;n!=-1;--n)
a[n+1]=a[n];
a[0]=t;
for(int k=0;k!=6;++k)
cout<<a[k]<<" ";
cout<<endl;
}
}
更多原创技术内容,可以通过公众号「闷骚的程序员」订阅:
![闷骚的程序员](https://cdn.jsdelivr.net/gh/mzlogin/mzlogin.github.io@master/assets/images/qrcode.jpg)
![闷骚的程序员](https://cdn.jsdelivr.net/gh/mzlogin/mzlogin.github.io@master/assets/images/qrcode.jpg)