总有一天你的谜底会解开 2020-11-28 09:41 采纳率: 77.4%
浏览 4
已采纳

冒泡排序,求助啊大神们

#include"stdio.h"
int main()
{
    int a=0,b,c,d,x[4];
        while(a<5)
    {
       scanf("%d",&x[a]);
      //  printf("%d\n",x[a]);
        a++;
       
    }
   for(b=1;b<=4;b++)
    {
        for(c=0;c<=3;c++)
        {
              //printf("x[%d]=%d  x[%d]=%d   ",c,x[c],c+1,x[c+1]);
            if(x[c]>x[c+1])
          { 
            d=x[c+1];
            x[c+1]=x[c];
            x[c]=d;
          }
        //  printf("x[%d]=%d  x[%d]=%d          ",c,x[c],c+1,x[c+1]);
         }
        //printf("\n");
        
    }
          a=0;
         while(a<5)
          {
              printf("%d ",x[a]);
              a++;
          }
          }
          当我输入8 9 7 6 1 的时候,输出的是 6 7 8 9 9,为什么1消失了?

  • 写回答

1条回答 默认 最新

  • qtchen_1988 2020-11-28 11:49
    关注
    x[4]改成
    x[5]。你定义的数组是4个元素大小,却按五个元素操作,数组越界了,轻着数据错,重则引起系统崩溃
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 Python时间序列如何拟合疏系数模型
  • ¥15 求学软件的前人们指明方向🥺
  • ¥50 如何增强飞上天的树莓派的热点信号强度,以使得笔记本可以在地面实现远程桌面连接
  • ¥20 双层网络上信息-疾病传播
  • ¥50 paddlepaddle pinn
  • ¥20 idea运行测试代码报错问题
  • ¥15 网络监控:网络故障告警通知
  • ¥15 django项目运行报编码错误
  • ¥15 STM32驱动继电器
  • ¥15 Windows server update services