标题:哪位大神能否帮我打一下备注,就在void move那里
只看楼主
我忘乐
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2017-7-18
结帖率:83.33%
已结贴  问题点数:11 回复次数:3 
哪位大神能否帮我打一下备注,就在void move那里
#include<stdio.h>
int main()
{
    void move(int [20],int,int);
    int number[20],n,m,i;
    printf("how many numbers?");
    scanf("%d",&n);
    printf("input %d numbers:\n",n);
    for(i=0;i<n;i++)
        scanf("%d",&number[i]);
    printf("how many place you want move?");
    scanf("%d",&m);
    move(number,n,m);
    printf("Now,they are:\n");
    for(i=0;i<n;i++)
        printf("%d",number[i]);
    printf("/n");
    return 0;
}
void move(int array[20],int n,int m)
{
    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);
}
搜索更多相关主题的帖子: void move int printf array 
2017-10-09 09:17
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:432
帖 子:10064
专家分:41463
注 册:2014-5-20
得分:11 
//printf("/n");
printf("\n");
2017-10-09 09:30
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:432
帖 子:10064
专家分:41463
注 册:2014-5-20
得分:0 
void move(int array[20],int n,int m)
{
    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); //做上述动作m次
}
2017-10-09 09:37
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:432
帖 子:10064
专家分:41463
注 册:2014-5-20
得分:0 
不用递归的:
void move(int array[20],int n,int m)
{
    int i,*p,array_end;
    for (i=0; i<m; ++i)
    {
       array_end=*(array+n-1);
       for(p=array+n-1; p>array; p--)
           *p=*(p-1);
       *array=array_end;
    }
}

用memmove()的:
#include<string.h>
void move(int *a,int n,int m)
{
    int i, a_end;
    for (i=0; i<m; ++i)
    {
        a_end = a[n-1];
        memmove(a+1, a, (n-1)*sizeof(int));
        a[0] = a_end;
    }
}
2017-10-09 09:57



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-481205-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.013146 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved