请问我这个问题出在哪里?排序出来的数是乱的

来源:6-12 综合练习

慕尼黑4143138

2020-11-29 20:12

int Descending(int score[])

{

    int l,m,n;

    for(l=9;l>0;l--)

    {

        for(m=0;m<l;m++)

        {

            if(score[m]<score[m+1])

                n=score[m+1];

                score[m+1]=score[m];

                score[m]=n;

        }

    }

    return 0;

}

int main()

{

    int o;

    int score[10]={67,98,75,63,82,79,81,91,66,84};

    printf("Total score:%d\n",total(score));

    printf("Maximum:%d\n",Maximum(score));

    printf("minimum:%d\n",Minimum(score));

    printf("Average:%d\n",Average(score));

    printf("Descending:");

    Descending(score);

    for(o=0;o<10;o++)

    {

        printf("%d,",score[o]);

    }    

    return 0;


写回答 关注

1回答

  • bb1234
    2022-02-10 14:27:44

    for(i=N-1-1;i>=0;i--)//冒泡排序

    {

        for(j=0;j<=i;j++)//前一个与后一个比较,直到最后

        {

            if(score[j]<score[j+1])//前一个小于后一个则进行交换

             {

                 temp=score[j];

                 score[j]=score[j+1];

                 score[j+1]=temp;

             }            

        }       

    }


C语言入门

C语言入门视频教程,带你进入编程世界的必修课-C语言

926210 学习 · 20797 问题

查看课程

相似问题