为什么运行结果一直都是错误的
#include <stdio.h>
int main()
{
int n, m, i, j, temp;
scanf("%d %d", &n, &m);
int a[n], b[n];
for(i=0; i<n; i++)
{
scanf("%d", &a[i]);
}
for(i=0; i<n; i++)
{
if(i < (n-m))
{
b[i] = a[i + m];
}else{
b[i] = a[i - (n - m)];
}
}
for(i=0; i<n; i++)
{
printf("%d ", b[i]);
}
return 0;
}