输入任意6个整数,分别使用选择法(要求使用函数void sort_c(int *a,int n))进行排序(由小到大),和冒泡法(要求使用函数void sort_b(int *a ,int n))进行排序(由大到小),并输出。
时间: 2024-02-20 07:58:19 浏览: 98
好的,这里是代码实现:
```c
#include <stdio.h>
// 选择排序
void sort_c(int *a, int n) {
for (int i = 0; i < n - 1; i++) {
int min = i;
for (int j = i + 1; j < n; j++) {
if (a[j] < a[min]) {
min = j;
}
}
int temp = a[i];
a[i] = a[min];
a[min] = temp;
}
}
// 冒泡排序
void sort_b(int *a, int n) {
for (int i = 0; i < n - 1; i++) {
for (int j = 0; j < n - 1 - i; j++) {
if (a[j] < a[j + 1]) {
int temp = a[j];
a[j] = a[j + 1];
a[j + 1] = temp;
}
}
}
}
int main() {
int a[6];
printf("请输入6个整数:\n");
for (int i = 0; i < 6; i++) {
scanf("%d", &a[i]);
}
sort_c(a, 6);
printf("选择排序结果(由小到大):");
for (int i = 0; i < 6; i++) {
printf("%d ", a[i]);
}
printf("\n");
sort_b(a, 6);
printf("冒泡排序结果(由大到小):");
for (int i = 0; i < 6; i++) {
printf("%d ", a[i]);
}
printf("\n");
return 0;
}
```
输入6个整数后,代码会先使用选择法进行排序,再使用冒泡法进行排序,并输出排序结果。注意,选择法是从小到大排序,冒泡法是从大到小排序。
阅读全文