c语言编程问题,求大神相助

2025-02-28 15:54:09
推荐回答(5个)
回答1:

就是一个字符串连接到后面的字符串后面?
方便的就是用系统函数:strcat;
要用代码实现这个功能就是下面这个了:

#include
int main()
{void concatenate(char string1[],char string2[],char string[]);
char s1[100],s2[100],s[100];
printf("input string1:");
scanf("%s",s1);
printf("input string2:");
scanf("%s",s2);
concatenate(s1,s2,s);
printf("\nThe new string is %s\n",s);
return 0;
}

void concatenate(char string1[],char string2[],char string[])
{int i,j;
for (i=0;string1[i]!='\0';i++)
string[i]=string1[i];
for(j=0;string2[j]!='\0';j++)
string[i+j]=string2[j];
string[i+j]='\0';
}

回答2:

可以看一下两个字符的程序
void main()
{
char s[50],d[50];
char t[100]={0};
int i,j,k;
printf("请输入字符串1 ");
scanf("%s",s);
printf("\n请输入字符串2 ");
scanf("%s",d);
for(i=0;s[i]!='\0';i++)
{ t[i]=s[i];
}
k=0;
for(j=i;d[k]!='\0';j++)
{ t[j]=d[k]; k++; }
t[j]='\0';
printf("%s",t);
}

回答3:

#include
#include

char *my_strcat(char *str1,char *str2)
{
char *str,*p;
p=str=str1;
while(*str1!='\0')
{
*str=*str1;
str++;
str1++;
}
while(*str2!='\0')
{
*str=*str2;
str++;
str2++;
}
*str='\0';
return p;

}
int main()
{
char arr1[30],arr2[20],*p;
printf("please input two strings:\n");
scanf("%s%s",arr1,arr2);
p=my_strcat(arr1,arr2);
printf("%s\n",p);
}

回答4:

c++函数库中就有啊!前面添加#include .使用strcat(nm1[];const nm2[]),把后面一个连接到前面的字符串后

回答5:

在#include库函数中自带连接字符串的函数strcat 使用方法如下:
#include
#include
void main()
{
char str1[30]={"People's Republic of"};
char str2[ ]={"China"};
printf("%s",strcat(str1,str2));
}