[YTU]_1063 (输入三个整数,按由小到大的顺序输出)

Description

输入三个整数,按由小到大的顺序输出。分别使用指针和引用方式实现两个排序函数。在主函数中输入和输出数据。

Input

三个整数

Output

由小到大输出成一行,每个数字后面跟一个空格。由指针方式实现。

由小到大输出成一行,每个数字后面跟一个空格。由引用方式实现。

Sample Input

2 3 1

Sample Output

1 2 3 
1 2
#include <iostream>
using namespace std;
void sort1(int*p1,int*p2,int*p3)
{
    void swap1(int *p1,int *p2);
    if(*p1>*p2)
        swap1(p1,p2);
    if(*p1>*p3)
        swap1(p1,p3);
    if(*p2>*p3)
        swap1(p2,p3);
}
void swap1(int *p1,int *p2)
{
    int temp;
    temp=*p1;
    *p1=*p2;
    *p2=temp;
}
void sort2(int&r1,int&r2,int&r3)
{
    void swap2(int &,int & );
    if(r1>r2)
        swap2(r1,r2);
    if(r1>r3)
        swap2(r1,r3);
    if(r2>r3)
        swap2(r2,r3);
}
void swap2(int &R,int &r) 
{
    int temp;
    temp=R;
    R=r;
    r=temp;
}
int main()
{
    void sort1(int *,int *,int *);
    void sort2(int &,int &,int &);
    int n1,n2,n3;
    int *p1,*p2,*p3;
    int r1,r2,r3;
    cin>>n1>>n2>>n3;
    r1=n1;
    r2=n2;
    r3=n3;
    p1=&n1;
    p2=&n2;
    p3=&n3;
    sort1(p1,p2,p3);
    cout<<n1<<" "<<n2<<" "<<n3<<" "<<endl;
    sort2(r1,r2,r3);
    cout<<r1<<" "<<r2<<" "<<r3<<" "<<endl;
    return 0;
}

3
原文地址:https://www.cnblogs.com/sxy201658506207/p/7586387.html