C语言,有n个整数,使其前面各数顺序向后移m个位置,最后m个数变成最前面的m个数
答案:1 悬赏:70
解决时间 2021-01-20 03:29
- 提问者网友:泪痣哥哥
- 2021-01-19 23:50
C语言,有n个整数,使其前面各数顺序向后移m个位置,最后m个数变成最前面的m个数
最佳答案
- 二级知识专家网友:过活
- 2021-01-20 00:54
void move(array,n,m)
int n,m,array[20];
{
int *p,array_end;
array_end = *(array+n-1); // array_end存放数组中最后元素的值
for(p = array + n - 1;p > array;p--)
*p = *(p-1); // 将数组元素向后移动一位
*array = array_end; // 最后元素放到数组的第一个位置
m--; // 共向后移动m次
if(m > 0) move(array,n,m); // 次数不够时,继续移动
}追答
追问:*(array+n-1)是怎么指向数组最后一个元素的?
追答:*(array+n-1)是指针用法,与数组用法array[n - 1]完全相同。
追问:3Q
int n,m,array[20];
{
int *p,array_end;
array_end = *(array+n-1); // array_end存放数组中最后元素的值
for(p = array + n - 1;p > array;p--)
*p = *(p-1); // 将数组元素向后移动一位
*array = array_end; // 最后元素放到数组的第一个位置
m--; // 共向后移动m次
if(m > 0) move(array,n,m); // 次数不够时,继续移动
}追答
追问:*(array+n-1)是怎么指向数组最后一个元素的?
追答:*(array+n-1)是指针用法,与数组用法array[n - 1]完全相同。
追问:3Q
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯