通过子函数排序三个字符串

题目描述:写一个函数实现将三个字符串排序

#include
#include
using namespace std;

void fun2(char a[],char b[],char c[]); 

int main()
{
     
	char str1[80] = "", str2[80] = "", str3[80] = "";
	cin>>str1;
	cin>>str2;
	cin>>str3;
	fun2(str1,str2,str3);
	cout << str1 << endl
		 << str2 << endl
		 << str3 << endl;
	return 0;
}

输入样例

Fuzhou
Fujian
China

输出样例

China
Fujian
Fuzhou

子函数代码

void fun2(char *str1,char *str2,char *str3){
     
	char *r;
	if(strcmp(str1,str2)>0){
     
		strcpy(r,str2);
		strcpy(str2,str1);
		strcpy(str1,r); 
	}
	if(strcmp(str1,str3)>0){
     		
		strcpy(r,str3);
		strcpy(str3,str1);
		strcpy(str1,r); 
	}
	if(strcmp(str2,str3)>0){
     
		strcpy(r,str3);
		strcpy(str3,str2);
		strcpy(str2,r); 
	}
}

复习两个不怎么用的函数

strcmp(char1,char2)
如果char1>char2 返回正数
如果char1=char2 返回0
如果char1 (C标准没有规定返回值会是1 或 -1,只规定了正数和负数)

strcpy(char1,char2) (string copy)
将char2内容复制到char1中

你可能感兴趣的:(c++函数)