[YTU]_1064 (输入三个字符串,按由小到大的顺序输出)
Description
输入三个字符串,按由小到大的顺序输出。分别使用指针和引用方式实现两个排序函数。在主函数中输入和输出数据。
Input
3行字符串
Output
按照从小到大输出成3行。由指针方式实现。
按照从小到大输出成3行。由引用方式实现。
Sample Input
cde
afg
abc
Sample Output
abc afg cde abc afg cde#include <iostream> #include <string> #include <cstring> using namespace std; void sort1(char*p11,char*p22,char*p33) { void swap1(char *R,char *r); if(strcmp(p11,p22)>0) swap1(p11,p22); if(strcmp(p11,p33)>0) swap1(p11,p33); if(strcmp(p22,p33)>0) swap1(p22,p33); } void swap1(char *R,char *r) { char temp[100]; strcpy(temp,R); strcpy(R,r); strcpy(r,temp); } void sort2(string &r11,string &r22,string &r33) { void swap2(string &,string &); if(r11>r22) swap2(r11,r22); if(r11>r33) swap2(r11,r33); if(r22>r33) swap2(r22,r33); } void swap2(string &R,string &r) { string temp; temp=R; R=r; r=temp; } 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; }