输入任意6个整数,分别使用选择法(要求使用函数void sort_c(int *a,int n))进行排序(由小到大),和冒泡法(要求使用函数void sort_b(int *a,int n))进行排序(由大到小),并用c语言形式输出。
时间: 2023-06-27 16:07:28 浏览: 137
以下是代码示例:
```c
#include <stdio.h>
void sort_c(int *a, int n) {
int i, j, min_idx, temp;
for (i = 0; i < n-1; i++) {
min_idx = i;
for (j = i+1; j < n; j++) {
if (a[j] < a[min_idx]) {
min_idx = j;
}
}
temp = a[i];
a[i] = a[min_idx];
a[min_idx] = temp;
}
}
void sort_b(int *a, int n) {
int i, j, temp;
for (i = 0; i < n-1; i++) {
for (j = 0; j < n-i-1; j++) {
if (a[j] < a[j+1]) {
temp = a[j];
a[j] = a[j+1];
a[j+1] = temp;
}
}
}
}
int main() {
int arr[6], i;
printf("请输入6个整数:\n");
for (i = 0; i < 6; i++) {
scanf("%d", &arr[i]);
}
sort_c(arr, 6);
printf("选择法排序结果(由小到大):\n");
for (i = 0; i < 6; i++) {
printf("%d ", arr[i]);
}
printf("\n");
sort_b(arr, 6);
printf("冒泡法排序结果(由大到小):\n");
for (i = 0; i < 6; i++) {
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
```
运行示例:
```
请输入6个整数:
6 2 4 9 1 5
选择法排序结果(由小到大):
1 2 4 5 6 9
冒泡法排序结果(由大到小):
9 6 5 4 2 1
```
阅读全文