使用函数实现选择或冒泡排序:定义选择排序函数void selectsort(int a[],int n) 或者冒泡排序函数viod bubblesort(int a[],int n)对数组a中的元素进行排序,主函数中输入数组元素和元素个数,调用排序函数对数组元素升序排序后输出结果
时间: 2024-02-15 16:03:40 浏览: 77
01_bubble_sort_冒泡排序算法python实现_
以下是选择排序和冒泡排序的实现,可以根据需要选择其中之一:
选择排序:
```c++
void selectsort(int a[], int n) {
for (int i = 0; i < n-1; i++) {
int min_idx = i;
for (int j = i+1; j < n; j++) {
if (a[j] < a[min_idx]) {
min_idx = j;
}
}
if (min_idx != i) {
swap(a[i], a[min_idx]);
}
}
}
```
冒泡排序:
```c++
void bubblesort(int a[], int n) {
for (int i = 0; i < n-1; i++) {
bool flag = false;
for (int j = 0; j < n-i-1; j++) {
if (a[j] > a[j+1]) {
swap(a[j], a[j+1]);
flag = true;
}
}
if (!flag) {
break; // 如果没有发生交换,则已经有序
}
}
}
```
在主函数中,可以先读入数组元素和元素个数,然后调用排序函数进行排序,最后输出排序后的结果。示例代码如下:
```c++
#include <iostream>
using namespace std;
void selectsort(int a[], int n);
void bubblesort(int a[], int n);
int main() {
int n;
cout << "请输入数组元素个数:";
cin >> n;
int a[n];
cout << "请输入数组元素:";
for (int i = 0; i < n; i++) {
cin >> a[i];
}
// selectsort(a, n); // 调用选择排序函数进行排序
bubblesort(a, n); // 调用冒泡排序函数进行排序
cout << "排序结果为:";
for (int i = 0; i < n; i++) {
cout << a[i] << " ";
}
cout << endl;
return 0;
}
```
阅读全文