10、分别使用指针和引用编写两数交换,并根据自己实现的两数交换实现冒泡排序算法。
#include<bits/stdc++.h>
using namespace std;
void swap1(double* p,double* q){//指针交换,需要引用地址
double k = *p;
*p = *q;
*q = k;
}
void swap2(double& p,double& q){//引用交换,不需要引用地址
double k = p;
p = q;
q = k;
}
void bubble_sort(double* a,int begin,int end){
for (int i = begin; i <= end-1;i++){
for (int j = begin; j <= end + begin - i - 1;j++)
{
if(a[j]>a[j+1]){
swap2(a[j], a[j + 1]);
}
}
}
}
int main(){
double a[100];
int begin, end;
cout << "请输入要排序的数组的起点和终点";
cin >> begin >> end;
for (int i = begin; i <= end;i++){
cin >> a[i];
}
bubble_sort(a, begin, end);
for (int i = begin; i <= end;i++){
cout << a[i]<<"\t";
}
return 0;
}
博客介绍了在C++中分别用指针和引用实现两数交换,还基于此实现了冒泡排序算法,聚焦于C++编程中数据交换和排序的实现。
565

被折叠的 条评论
为什么被折叠?



