/* 编写函数将两个升序排列的字符串融合成一个字符串,
融合后的字符串依然是升序排列的 */
#include<stdio.h>
#include<string.h>
int main(void)
{
char a[20],b[20],c[40];//a,b融合成c
int i=0,j=0,k=0;
gets(a);
gets(b); //读入a,b
while(a[i]!='\0'&&b[j]!='\0')
{
if(a[i]>b[j])//若a中当前的字符大于b中的字符,
c[k++]=b[j++];//则把b中当前字符赋給c;下标自增1
else
c[k++]=a[i++];//否则把a中当前字符赋給c
}
if(a[i]!=0)//若a还未遍历完,则把a剩下的字符逐一赋給c
{
while(a[i]!='\0')
c[k++]=a[i++];
}
else //若b还未遍历完,则把b剩下的字符逐一赋給c
{
while(b[j]!='\0')
c[k++]=b[j++];
}
c[k]='\0';//由于c是字符串,末尾以'\0'结尾
puts(c); //输出c
return 0;
}
各位觉得如果有用的话,麻烦点个赞呀,谢谢啦