铁柱%* 2021-04-23 14:14 采纳率: 87.5%
浏览 37
已采纳

C++求助,小白是真的不会[face]emoji:010.png[/face]

C++求助,小白是真的不会[face]emoji:010.png[/face]
  • 写回答

1条回答 默认 最新

  • obitosbb 2021-04-23 14:37
    关注
    #include <stdio.h>
    #include <stdlib.h>
    main()
    {  
       int len;
       int *start;
       int *end;
       int current,t,i,k,m;
       printf("请输入数组个数:");
       scanf("%d",&len);
     
       start = (int *)malloc(len*sizeof(int));
       end   = (int *)malloc(len*sizeof(int));
     
       printf("请输入数组元素,以空格键隔开:\n");
       for(m=0;m<len;m++)
          scanf("%d",&start[m]);
       //原数组输出显示:start   
       for(m=0;m<len;m++)
          printf("%d ",start[m]);
          printf("\n");
       //current为左移指针,表示移多少次 
       for(current=0;current<len;current++)
       {
           //将原数组0~current-1 平移给end数组len-current+k~len  原数组左半部分赋值给输出数组后半部分,变化次数为current
           for(k=0;k<current;k++)
                  end[len-current+k] = start[k];
           //将原数组 current~len平移给end数组0~current   原数组后半部分赋值给输出数组左半部分,变化次数为len-current 
           for(t=current,i=0;t<len;t++)
                  end[i++]=start[t];
                  
           printf("循环左移%d位后的结果:", current);
           // 左移后输出显示:end 
           for(m=0;m<len;m++)
                  printf("%d ",end[m]);
                  printf("\n");
          
      } 
          
          system("pause");
    }

     

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 ikuai客户端多拨vpn,重启总是有个别重拨不上
  • ¥20 关于#anlogic#sdram#的问题,如何解决?(关键词-performance)
  • ¥15 相敏解调 matlab
  • ¥15 求lingo代码和思路
  • ¥15 公交车和无人机协同运输
  • ¥15 stm32代码移植没反应
  • ¥15 matlab基于pde算法图像修复,为什么只能对示例图像有效
  • ¥100 连续两帧图像高速减法
  • ¥15 如何绘制动力学系统的相图
  • ¥15 对接wps接口实现获取元数据