永发信息网

C语言选择法排序,求改正。

答案:2  悬赏:80  手机版
解决时间 2021-02-11 03:48
  • 提问者网友:蔚蓝的太阳
  • 2021-02-10 09:59
C语言选择法排序,求改正。
最佳答案
  • 五星知识达人网友:你可爱的野爹
  • 2021-02-10 11:37
1、for(i=1;j<10;i++)中应该是i<10

2、每次向后找到最小值时,将最小值和a[i]交换,所以
a[0]=a[min];              int tmp = a[i];
a[min]=a[j];    改成    a[i]=a[min];
a[j]=a[0];                    a[min]=tmp;
完整代码:
#include 

int main()
{
    int a[11];
    int i,j,min;
    for(i=1;i<11;i++)
        scanf("%d",&a[i]);
    for(i=1;i<10;i++)
    {
        min=i;
        for(j=i+1;j<11;j++)
            if(a[min]>a[j])
                min=j;
        int tmp = a[i];
        a[i]=a[min];
        a[min]=tmp;

    }
    for(i=1;i<11;i++)
        printf("%d ",a[i]);
    printf("
");
    return 0;
}
全部回答
  • 1楼网友:痴妹与他
  • 2021-02-10 12:53
写上完整的{}配对,再把循环的开始、结束对照清楚
~~~~~~~
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯