#include
#include
int main(void)
{
int i,k,n;
int *a;
while(scanf("%d%d",&k,&n)!=EOF)//接受k,n
{
if(n==0)break; //如果n为0,我觉得直接就结束吧,别管k了
a=(int*)malloc(sizeof(int)*n);//分配数组
if(a==NULL)break;//内存分配失败退出,不大会
for(i=0;i
if(k==0)//没移动
{
for(i=0;i
printf("%d\n",a[i]);//担心最后多个空格,单独输出
}
k%=n;//循环的,移n+1次和移1次效果是一样的
//下面就是从a[k-1]和a[k]中间切一刀,先输出后半,再输前半
for(i=n-k;i
for(i=0;i
printf("%d\n",a[i]);//担心空格,最后一个单独输
free(a);//别忘了释放
}
return 0;
}
什么意思?
没意思,同一个问题你问多回啊,
我刚答过一把,这里又是你的同一问题, 不重写代码了,你自己找找