kk想学习 2023-04-07 11:24 采纳率: 42.9%
浏览 13
已结题

c语言冒泡排序结果问题

#冒泡排序相关
不知道为什么结果会有个负1,不知道哪错了,来个人看看

img

  • 写回答

3条回答 默认 最新

  • 瞬间的未来式 2023-04-07 11:30
    关注

    下标从0开始 因此在访问a[10]的时候会造成越界访问,这可能导致程序的输出结果出现意外的负数值

    #include <string.h>
    
    void main()
    {
        int a[10];
        int i,j,k;
        for(i=0;i<10;i++)
            scanf("%d",&a[i]);
        for(i=0;i<10;i++)
            for(j=i+1;j<10;j++)
                if(a[i]>a[j]){
                    k=a[i];a[i]=a[j];a[j]=k;
                }
        for(i=0;i<10;i++)
            printf(" %d",a[i]);
    }
    
    
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 4月15日
  • 已采纳回答 4月7日
  • 创建了问题 4月7日