首页 > 代码库 > OJ刷题之《输入三个整数,按由小到大的顺序输出》
OJ刷题之《输入三个整数,按由小到大的顺序输出》
题目描述
输入三个整数,按由小到大的顺序输出。分别使用指针和引用方式实现两个排序函数。在主函数中输入和输出数据。
输入
三个整数
输出
由小到大输出成一行,每个数字后面跟一个空格。由指针方式实现。
由小到大输出成一行,每个数字后面跟一个空格。由引用方式实现。
样例输入
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刷题之《输入三个整数,按由小到大的顺序输出》
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。