Description
输入三个字符串,按由小到大的顺序输出。分别使用指针和引用方式实现两个排序函数。在主函数中输入和输出数据。
Input
3行字符串
Output
按照从小到大输出成3行。由指针方式实现。
按照从小到大输出成3行。由引用方式实现。
Sample Input
cde afg abc
Sample Output
abc afg cde abc afg cde
代码
#include <iostream> #include <cstring> using namespace std; void sort1(char *s1,char *s2,char *s3) { char t[100]; if(strcmp(s1,s2)>0) { strcpy(t,s1); strcpy(s1,s2); strcpy(s2,t); } if(strcmp(s2,s3)>0) { strcpy(t,s3); strcpy(s3,s2); strcpy(s2,t); } if(strcmp(s1,s2)>0) { strcpy(t,s1); strcpy(s1,s2); strcpy(s2,t); } } void sort2(string &s1,string &s2,string &s3) { string t; if(s1>s2) { t=s1; s1=s2; s2=t; } if(s2>s3) { t=s3; s3=s2; s2=t; } if(s1>s2) { t=s1; s1=s2; s2=t; } } int main() { void sort1(char *,char *,char *); void sort2(string &,string &,string &); char s1[100],s2[100],s3[100]; char *p1,*p2,*p3; string r1,r2,r3; cin>>s1>>s2>>s3; r1=string(s1); r2=string(s2); r3=string(s3); p1=s1; p2=s2; p3=s3; sort1(p1,p2,p3); cout<<s1<<endl<<s2<<endl<<s3<<endl; sort2(r1,r2,r3); cout<<r1<<endl<<r2<<endl<<r3<<endl; return 0; }
时间: 2024-11-04 17:16:39