下面程序的功能是实现将两个字符串连接起来并输出结果,注意不使用strcat函数。请填空并运行程序。

2025-03-26 02:05:12
推荐回答(2个)
回答1:

for(i=0;str1[i]!='\0';i++)
for(j=0;str2[j]!='\0';j++)
{
str1[i]=str2[j];
i++;
}

肯定错了啊,比如说比如i = 0,你这循环是把str2数组里的元素按循序赋值给了str1【0】,
到最后str1里全部都是str2里的最后一个字符

你可以先找个str1里的最后一个字符,然后再把str2的字符一个个转移到str1

回答2:

{
char str1[100],str2[100];
int i=0,j=0;
printf("please input the string1:");
scanf("%s",&str1);
printf("please input the string2:");
scanf("%s",&str2);
//gets(str2);
for(i=0;str1[i]!='\0';i++)

{
i++;
}

for(j=0;str2[j]!='\0';j++)
{
str1[i+j]=str2[j];
}
str1[i+j+1]='\0';
printf("the catenated string is %s",str1);
}