顺序不对
void bllow_brown(int arr[],int n)
{
int i = 0;
int k = 0;
int j = 0;
for ( i = 0;i <n-1 ; i++)
{
k = i;
for ( j = 1; j < n; j++)
{
if (arr[i]>arr[j])
{
k = j;
}
}
if (k != i)
{
int tmp = arr[i];
arr[i] = arr[k];
arr[k] = tmp;
}
}
for (i = 0; i < n; i++)
{
printf("%d ", arr[i]);
}
}
int main(void)
{
int arr[] = { 9,8,7,6,5,4,3,2,1,0};
int n = sizeof(arr) / sizeof(arr[0]);
bllow_brown(arr,n);
return 0;
}
0 1 2 3 4 5 6 7 8 9
j应该从i+1开始吧
void bllow_brown(int arr[],int n)
{
int i = 0;
int k = 0;
int j = 0;
for ( i = 0;i <n-1 ; i++)
{
k = i;
for ( j = i+1; j < n; j++) //////////////////////这里将j=1改为j=i+1
{
if (arr[i]>arr[j])
{
k = j;
}
}
if (k != i)
{
int tmp = arr[i];
arr[i] = arr[k];
arr[k] = tmp;
}
}
for (i = 0; i < n; i++)
{
printf("%d ", arr[i]);
}
}
int main(void)
{
int arr[] = { 9,8,7,6,5,4,3,2,1,0};
int n = sizeof(arr) / sizeof(arr[0]);
bllow_brown(arr,n);
return 0;
}