码迷,mamicode.com
首页 > 其他好文 > 详细

OJ刷题之《输入三个整数,按由小到大的顺序输出》

时间:2015-01-08 18:13:41      阅读:153      评论:0      收藏:0      [点我收藏+]

标签:c++   iostream   namespace   博客   指针   

题目描述

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

输入

三个整数

输出

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

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

样例输入

2 3 1

样例输出

1 2 3 
1 2 3 

提示

 主函数已给定如下,提交时不需要包含下述主函数



/* C++代码 */

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;

}

 

代码如下:

#include <iostream>
using namespace std;
void sort1(int *p1,int *p2,int *p3)
{
    int t;
    if (*p1>*p2)
    {
        t=*p1;
        *p1=*p2;
        *p2=t;
    }
    if (*p2>*p3)
    {
        t=*p2;
        *p2=*p3;
        *p3=t;
    }
    if (*p1>*p2)
    {
        t=*p1;
        *p1=*p2;
        *p2=t;
    }
}

void sort2(int &r1,int &r2,int &r3)
{
    int t;
    if (r1>r2)
    {
        t=r1;
        r1=r2;
        r2=t;
    }
    if (r2>r3)
    {
        t=r2;
        r2=r3;
        r3=t;
    }
    if (r1>r2)
    {
        t=r1;
        r1=r2;
        r2=t;
    }
}

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;
}


运行结果:

还是无法上传,都跑到机房来刷题了,,,csdn又要升级么。。。

 

 

 

OJ刷题之《输入三个整数,按由小到大的顺序输出》

标签:c++   iostream   namespace   博客   指针   

原文地址:http://blog.csdn.net/liuchang54/article/details/42525451

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!