求高手帮忙找出错误。。
Description有 n( n<100) 个整数,使其前面各数顺序向后移m个位置,最后m个数变成最前面的m个数。
Input
输入有多组测试数据。每组数据分为两行,第一行为 n 和 m,第二行表示 n 个整数。
Output
对于每组测试数据,输出对应移动后的整数序列。
Sample Input
10 3
5 6 -1 0 12 -32 14 -145 -24 21Sample Output
-145 -24 21 5 6 -1 0 12 -32 14
我的程序:
#include<stdio.h>
void main()
{
int n,m,a[100],i;
while(scanf("%d%d",&n,&m)!=EOF)
{
for (i=0;i<n;i++)
scanf("%d",&a[i]);
if (n<=m)
{
for (i=0;i<n-1;i++)
printf("%d ",a[i]);
printf("%d\n",a[n-1]);
}
else
{
for (i=n-m;i<n;i++)
printf("%d ",a[i]);
for (i=0;i<n-m-1;i++)
printf("%d ",a[i]);
printf("%d\n",a[n-m-1]);
}
}
}
宁波大学OJ 1873题,求高手帮忙找出错误。。