思路1:用sort函数进行排序(sort函数的原型就是从小到大进行排序,刚好满足题目要求)。当然,要注意提前保存原有数据
#include<bits/stdc++.h>
using namespace std;
double n1,n2,n3,n4,x,y,z;
int main()
{
int a[3],b[3];
for(int i = 0 ;i < 3 ;i++){
cin>>a[i];
b[i] = a[i];
}
sort(a,a+3);
for(int i = 0 ;i < 3 ;i++){
cout<<a[i]<<endl;
}
cout<<endl;
for(int i = 0 ;i < 3 ;i++){
cout<<b[i]<<endl;
}
return 0;
}
思路2:用指针,自己构造的swap函数。
#include<bits/stdc++.h>
using namespace std;
double n1,n2,n3,n4,x,y,z;
int main()
{
void swap(int *p1,int *p2);
int n1,n2,n3;
int *p1,*p2,*p3;//指针变量
cin>>n1>>n2>>n3;
int b1,b2,b3;
b1 = n1;
b2 = n2;
b3 = n3;
p1 = &n1;//指针变量保存的空间地址
p2 = &n2;
p3 = &n3;
if(n1 > n2) swap(p1,p2);
if(n1 > n3) swap(p1,p3);
if(n2 > n3) swap(p2,p3);
cout<<n1<<endl;
cout<<n2<<endl;
cout<<n3<<endl;
cout<<endl;
cout<<b1<<endl;
cout<<b2<<endl;
cout<<b3<<endl;
return 0;
}
void swap(int *p1,int *p2){//*p1表示指针变量的解引用,这样利用指针实现了空间内容的互换
int p;
p = *p1;
*p1 = *p2;
*p2 = p;
}