ACMNO.41C语言-数字调序 有n个整数,使前面各数顺序向后移m个位置,最后m个数变成前面m个数,见图。写一函数:实现以上功能,在主函数中输入n个数和输出调整后的n个数
原创
©著作权归作者所有:来自51CTO博客作者dream666uping的原创作品,请联系作者获取转载授权,否则将追究法律责任
题目描述
有n个整数,使前面各数顺序向后移m个位置,最后m个数变成前面m个数,见图。
写一函数:实现以上功能,在主函数中输入n个数和输出调整后的n个数。
输入
输出
样例输入
样例输出
来源/分类
题目截图:
思路:
整体来说,进行二次输出就好。
第一次先输出挪到前面的数!
for(i=0;i<m;i++)
cout<<s[n-m+i]<<" ";
第二次再一次输出原数列的数。
for(i=0;i<n-m;i++)
{
cout<<s[i]<<" ";
}
不过,这两个for循环语句还是讲究的!
代码:
#include <iostream>
using namespace std;
int main()
{
int s[10000]={0};int n,m,i;
cin>>n;
for(i=0;i<n;i++)
{
cin>>s[i];
}
cin>>m;
for(i=0;i<m;i++)
cout<<s[n-m+i]<<" ";
for(i=0;i<n-m;i++)
{
cout<<s[i]<<" ";
}
}
代码截图:
代码执行截图:
OJ结果: