提交记录 #143
提交时间:2024-11-07 10:21:02
语言:c
状态:Accepted
编译情况:编译成功
固定测试点#1:
固定测试点#2:
固定测试点#3:
固定测试点#4:
固定测试点#5:
固定测试点#6:
固定测试点#7:
固定测试点#8:
固定测试点#9:
额外测试点#3600:
34【字符】合并字符串
#include<stdio.h>
#include<string.h>
void function(const char *str1,const char *str2, char *res)
{
int i=0,j=0,k=0;
//遍历两个字符串,直到至少有一个字符串遍历完成
while(str1[i]!='\0'&&str2[j]!='\0')//1 3 2 3 3 3 3 4 \0 4
{
if(str1[i] < str2[j]) res[k++]=str1[i++];//res[0]=1 res[1]=2 res[3]=3
else res[k++]=str2[j++];//res[2]=3
}
//拷贝剩余字符
while(str1[i]!='\0')
{
res[k++]=str1[i++];
}
while(str2[j]!='\0')
{
res[k++]=str2[j++]; //res[4]=4 res[5]=5
}
res[k]='\0';//结束字符
}
int main()
{
char str1[101],str2[101],res[202];//123 345
scanf("%100s",str1);
scanf("%100s",str2);
/*if(str1[0]=='\0'||str2[0]=='\0')
{
printf("%s%s\n",str1,str2); return 1;}*/
// 使用 strcmp 来检查字符串是否为空
if (strcmp(str1, "") == 0) {
printf("%s\n", str2);
return 0;
} else if (strcmp(str2, "") == 0) {
printf("%s\n", str1);
return 0;
}
function(str1,str2,res);
printf("%s\n",res);
return 0;
}