#include<iostream>
using namespace std;
void swap1(int*p1,int*p2){
int t=*p1;
*p1=*p2;
*p2=t;
}
void swap2(int&p1,int&p2){
int t=p1;
p1=p2;
p2=t;
}
int main()
{
int num[10]={12,238,27,34,2,5,6,3,42,34,};
for(int i=0;i<sizeof(num)/sizeof(int);i++){
for(int j=i+1;j<sizeof(num)/sizeof(int);j++){
//if(num[j]<num[i]) swap1(&num[j],&num[i]);
if(num[j]<num[i]) swap2(num[j],num[i]);
}
}
for(int i=0;i<sizeof(num)/sizeof(int);i++){
cout<<num[i]<<" ";
}
return 0;
}
运行结果:
(试行)
#include<iostream>
using namespace std;
void swap1(int*p1,int*p2){
int t=*p1;
*p1=*p2;
*p2=t;
}
void swap2(int&p3,int&p4){
int t=p3;
p3=p4;
p4=t;
}
int main()
{
int a,b;
//指针
cout<<"Enter two numbers:";
cin>>a>>b;
int* p1=&a;
int* p2=&b;
swap1(p1,p2);
cout<<"a = "<<a<<", b = "<<b<<endl;
//引用
int& p3=a;
int& p4=b;
swap2(p3,p4);
cout<<"a = "<<a<<", b = "<<b<<endl;
return 0;
}