用C排列十个数,看是否正确?

来源:百度知道 编辑:UC知道 时间:2024/06/27 07:08:39
void sort(int array[],int n)
{int i,j,k,t;
for(i=0;i<n-1;i++)
{k=i;
for(j=i+1;j<n;j++)
if(array[j]<array[k]) k=j;
t=array[k];array[k]=array[i];array[i]=t;}
}
#include <stdio.h>
main()
{int a[10],i;
printf("enter the array:\n");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
sort(a,10);
printf("the sorted array:\n");
for(i=0;i<10;i++)
printf("%d",a[i]);
printf("\n");getchar();
}
我这样写有什么错吗?为什么输出的结果却有问题?

{k=i;
for(j=i+1;j<n;j++)
if(array[j]<array[k]) k=j;
t=array[k];array[k]=array[i];array[i]=t;}
}
你这段条理不清楚,逻辑有错

Sort(array, len) {
int i ;
int j ;
int temp = 0;
for(i = 0 ; i < len - 1; i++)
{
for(j = i + 1; j < len ; j++)
{if(array[i] > array[j])
{
temp = array[i];
array[i] = array[j];
array[j] = temp;
}
}
}
}

冒泡法最简单明白