用c语言编写自定义函数ChoiceSort,其功能是用选择排序法对数组a中的n个元素按升序排序。
时间: 2023-12-06 07:44:57 浏览: 85
C语言程序设计-编写函数用选择排序法对数组中的数据进行从小到大的排序;
5星 · 资源好评率100%
以下是用C语言编写的自定义函数ChoiceSort的代码:
```c
void ChoiceSort(int a[], int n)
{
int i, j, minIndex, temp;
for (i = 0; i < n - 1; i++)
{
minIndex = i; //假设当前位置是最小值
for (j = i + 1; j < n; j++)
{
if (a[j] < a[minIndex]) //如果找到更小的值
{
minIndex = j; //更新最小值的位置
}
}
//交换当前位置和最小值的位置
temp = a[i];
a[i] = a[minIndex];
a[minIndex] = temp;
}
}
```
使用示例:
```c
#include <stdio.h>
void ChoiceSort(int a[], int n);
int main()
{
int a[] = { 3, 1, 5, 7, 2, 4, 9, 6, 8 };
int n = sizeof(a) / sizeof(a[0]);
int i;
printf("排序前的数组:");
for (i = 0; i < n; i++)
{
printf("%d ", a[i]);
}
printf("\n");
ChoiceSort(a, n);
printf("排序后的数组:");
for (i = 0; i < n; i++)
{
printf("%d ", a[i]);
}
printf("\n");
return 0;
}
```
输出结果:
```
排序前的数组:3 1 5 7 2 4 9 6 8
排序后的数组:1 2 3 4 5 6 7 8 9
```
阅读全文