c语言编写冒泡排序、选择排序、插入排序函数。 (2)设计一个测试主函数,实现对排序算法的测试。 (3)分析程序的运行结果。
时间: 2023-03-09 10:17:52 浏览: 108
冒泡排序函数:// 冒泡排序函数
void bubble_sort(int *arr, int len)
{
int i, j, temp;
for (i = 0; i < len - 1; i++)
{
for (j = 0; j < len - 1 - i; j++)
{
if (arr[j] > arr[j + 1])
{
temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
} 选择排序函数:// 选择排序函数
void selection_sort(int *arr, int len)
{
int i, j, min, temp;
for (i = 0; i < len - 1; i++)
{
min = i;
for (j = i + 1; j < len; j++)
{
if (arr[j] < arr[min])
{
min = j;
}
}
if (min != i)
{
temp = arr[i];
arr[i] = arr[min];
arr[min] = temp;
}
}
} 插入排序函数:// 插入排序函数
void insertion_sort(int *arr, int len)
{
int i, j, temp;
for (i = 1; i < len; i++)
{
temp = arr[i];
for (j = i - 1; j >= 0 && arr[j] > temp; j--)
{
arr[j + 1] = arr[j];
}
arr[j + 1] = temp;
}
}主函数:// 主函数
int main()
{
int arr[] = { 10, 9, 8, 7, 6, 5, 4, 3, 2, 1 };
int len = sizeof(arr) / sizeof(int);
bubble_sort(arr, len);
selection_sort(arr, len);
insertion_sort(arr, len);
// 分析程序运行结果
printf("排序后的数组为:");
for (int i = 0; i < len; i++)
{
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
阅读全文