有没有人来帮帮萌新:求大佬帮忙填写一下这个代码

有没有人来帮帮萌新:求大佬帮忙填写一下这个代码

按要求将程序补充完整。有n个整数,使前面各数顺序向后移动m个位置,最后m个数变成最前面m个数。写一个函数void moveNumber(int *pnum,int n,int m)实现以上功能。

#include <stdio.h>
#define MAXNUM 100
main()
{
  int  num[MAXNUM],*pnum,n,m,i;
  void moveNumber(int *pnum,int n,int m);
    printf("请输入数组长度n(n<%d)",MAXNUM);
    scanf("%d",&n);
    printf("请输入需移动数的个数m(m<n):");
    scanf("%d",&m);
    printf("请输入%d个整数,按空格分开:\n",n);
    //以下使用指针移动法访问数组元素,请仔细研究体会
    pnum=num;                          
    for (i=0;i<n;i++) {
        scanf("%d",pnum);  //用户输入的数放入当前pnum指向的位置
                         ;                
    }  
    pnum=             ;    
    moveNumber(pnum,n,m);  //调用函数移动m个数
    printf("\n移动最后%d个数到前面后,数组变为:\n",m);
    for (i=0;i<n;i++) 
        printf("%d ",*(num+i)); //指针运算法访问数组元素
}
void moveNumber(int *pnum,int n,int m)
{//算法思路:用一个与主函数中num等大的数组temp,利用pt和pn指针,将num的数按要求赋值到temp中后,再拷贝回num数组
  int temp[MAXNUM];   
  int *pt ; //用来指向temp数组
  int *pn; //用来指向num数组
  int i;
    //补充以下部分程序:

}

 

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值