A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

题目:有n个整数,使其前面各数顺序向后移m个位置,最后m个数变成最前面的m个数
1.程序分析:
2.程序源代码:
main()
{
int number[20],n,m,i;
printf("the total numbers is:");
scanf("%d",&n);
printf("back m:");
scanf("%d",&m);
for(i=0;i<n-1;i++)
 scanf("%d,",&number);
scanf("%d",&number[n-1]);
move(number,n,m);
for(i=0;i<n-1;i++)
 printf("%d,",number);

printf("%d",number[n-1]);
}
move(array,n,m)
int n,m,array[20];
{
int *p,array_end;
array_end=*(array+n-1);
for(p=array+n-1;p>array;p--)
 *p=*(p-1);
 *array=array_end;
 m--;
 if(m>0) move(array,n,m);
}

2 个回复

倒序浏览
学习了 (*^__^*) 嘻嘻……
回复 使用道具 举报
支持一下!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马