回 帖 发 新 帖 刷新版面

主题:解

#include <stdio.h>
void sort(int array[],int n)
{
    int i = 0;
    int j = 0;
    int k = 0;
    int t = 0;

    for (i = 0; i < n-1; i++)
    {
        k = i;
        for (j = i; j < n; j++)
        {
            if (array[j] < array[k])
                k = j;
                t = array[k];
                array[k] = array[i];
                array[i] = t;
        }
    }
}

int main(void)
{
    int a[10]={0};
    int  i = 0;
    printf ("输入数组\n");
    for (i = 0; i < 10; i++)
        scanf ("%d",&a[i]);
        sort(a,10);
        printf ("排序后的数组:\n");
    for (i = 0; i < 10; i++)
        printf ("%5d",a[i]);
        printf ("\n");    
    return 0; 
}
////////////////////////我错了哪里了  为什么排不完整阿????

回复列表 (共2个回复)

沙发

{
            if (array[j] < array[k])
                k = j;
                t = array[k];
                array[k] = array[i];
                array[i] = t;
        }这里面少东西了吧

板凳

for (j = i; j < n; j++)
{
    if (array[j] < array[k])
    {
       k = j;
    }
}
t = array[k];
array[k] = array[i];
array[i] = t;
//lz细心。

我来回复

您尚未登录,请登录后再回复。点此登录或注册