用c++ 分别用冒泡法和选择法对8个整数进行排序。要求先输出原序列,再输出排序后的序列
时间: 2024-05-07 18:22:38 浏览: 115
好的,下面是代码实现:
```c++
#include<iostream>
using namespace std;
void bubbleSort(int arr[], int len){
for(int i=0; i<len-1; i++){
for(int j=0; j<len-i-1; j++){
if(arr[j] > arr[j+1]){
int temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
}
void selectSort(int arr[], int len){
for(int i=0; i<len-1; i++){
int minIndex = i;
for(int j=i+1; j<len; j++){
if(arr[j] < arr[minIndex]){
minIndex = j;
}
}
if(minIndex != i){
int temp = arr[i];
arr[i] = arr[minIndex];
arr[minIndex] = temp;
}
}
}
void printArr(int arr[], int len){
for(int i=0; i<len; i++){
cout<<arr[i]<<" ";
}
cout<<endl;
}
int main(){
int arr[] = {5, 7, 3, 1, 8, 4, 2, 6};
int len = sizeof(arr) / sizeof(int);
cout<<"原序列:";
printArr(arr, len);
cout<<"冒泡排序后:";
bubbleSort(arr, len);
printArr(arr, len);
cout<<"选择排序后:";
selectSort(arr, len);
printArr(arr, len);
return 0;
}
```
输出结果:
```
原序列:5 7 3 1 8 4 2 6
冒泡排序后:1 2 3 4 5 6 7 8
选择排序后:1 2 3 4 5 6 7 8
```
阅读全文