求C++一道小题

来源:百度知道 编辑:UC知道 时间:2024/06/23 01:59:54
输入3个等长的字符串,然后输出这3个已经排好序的字符串。编写3个函数分别用于输入,排序和输出。并在主函数中调用他们。(不用指针数组)
1楼用着string了。我想要一个像2楼那样的。可惜2楼的是C。
我用的也是2楼的方法。可字符传怎么作为实参到函数?这一步老是出错误。。谁能给举个这样的例子也行。。
还有。。这题能不能不用全局变量?
其实我就是想看看char a[5]怎么在函数中调来调去的。
还有a[5],b[5],c[5]是怎么排序的。。

#include<iostream.h>
#include<string.h>
void input(char i[5],char j[5],char k[5]);
void output(char i[5],char j[5],char k[5]);
void result(char i[5],char j[5],char k[5]);
void main(){
char a[5],b[5],c[5];
input(a,b,c);
result(a,b,c);
output(a,b,c);
}

void input(char i[5],char j[5],char k[5]){
cout<<"in put 3 string has 5 char each:"<<endl;
cout<<"in put the first:"<<endl;
cin>>i;
cout<<"in put the second:"<<endl;
cin>>j;
cout<<"in put the third:"<<endl;
cin>>k;

}
void result(char i[5],char j[5],char k[5]){
char comp[5];
if(strcmp(i,j)>0){
strcpy(comp,i);strcpy(i,j);strcpy(j,comp);

}
if(strcmp(i,k)>0){
strcpy(comp,i);strcpy(i,k);strcpy(k,comp);

}
if(strcmp(j,k)>0){