m0_75011820 2022-11-08 18:26 采纳率: 50%
浏览 121
已结题

大一新生在学习指针的道路上迷惑不已

img

img


死循环了,第一个图片是我数组的思路,第二个是指针的思路。就是数组中十个整数,把其中的0换到最后,其他的数字顺序保持不变。数组的筛查思路已经写出来了,转换成指针的时候就一直死循环

  • 写回答

3条回答 默认 最新

  • 快乐鹦鹉 2022-11-08 18:35
    关注
    void move(int *p,int n)
    {
        int i=0,j=0,count=0,*q = p;
        while(q<p+n-count)
        {
            if(*q == 0)
            {
                for(i=0;i<n-j-1;i++)
                    *(q+i) = *(q+i+1);
                count++;
            }
            else
            {
                q++;
                j++;
            }
        }
    }
    
    
    
    int main()
    {
        int a[10] = {1,2,3,0,9,8,0,0,9,0};
        move(a,10);
        for(int i=0;i<10;i++)
            printf("%d ",a[i]);
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 11月17日
  • 已采纳回答 11月9日
  • 创建了问题 11月8日

悬赏问题

  • ¥20 ML307A在使用AT命令连接EMQX平台的MQTT时被拒绝
  • ¥20 腾讯企业邮箱邮件可以恢复么
  • ¥15 有人知道怎么将自己的迁移策略布到edgecloudsim上使用吗?
  • ¥15 错误 LNK2001 无法解析的外部符号
  • ¥50 安装pyaudiokits失败
  • ¥15 计组这些题应该咋做呀
  • ¥60 更换迈创SOL6M4AE卡的时候,驱动要重新装才能使用,怎么解决?
  • ¥15 让node服务器有自动加载文件的功能
  • ¥15 jmeter脚本回放有的是对的有的是错的
  • ¥15 r语言蛋白组学相关问题