【问题描述】
编写一个函数void str_bin(char str1[ ], char str2[ ]), str1、str2是两个有序字符串(其中字符按ASCII码从小到大排序),将str2合并到字符串str1中,要求合并后的字符串仍是有序的,允许字符重复。在main函数中测试该函数:从键盘输入两个有序字符串,然后调用该函数,最后输出合并后的结果。
【输入形式】
分行从键盘输入两个有序字符串(不超过100个字符)
【输出形式】
输出合并后的有序字符串
【输入样例】
aceg
bdfh
【输出样例】
abcdefgh
【样例说明】
输入两个有序字符串aceg和bdfh,输出合并后的有序字符串abcdefgh
#include<stdio.h>
#include<string.h>
#include<math.h>
void str_bin(char str1[ ], char str2[ ])
{
strcat(str1,str2);
int len;
len=strlen(str1);
int i,j;
for(i=0;i<len;i++)
{
for(j=i+1;j<len;j++)
{
if(str1[i]>str1[j])
{
char c;
c=str1[i];
str1[i]=str1[j];
str1[j]=c;
}
}
}
puts(str1);
}
int main()
{
char str1[100],str2[100];
scanf("%s",&str1);
scanf("%s",&str2);
str_bin(str1,str2);
return 0;
}