编写一个函数
char* mystrcat(char *s1, const char *s2)
函数功能是把字符串s2的所有元素连接到字符串s1之后。
函数接口定义:
函数接口:
char* mystrcat(char *s1, const char *s2);
把字符串s2的所有元素连接到字符串s1之后。
裁判测试程序样例:
在这里给出函数被调用进行测试的例子。例如:
#include <stdio.h>
char *mystrcat(char *s1, const char *s2);
int main()
{
char a[100] = "abcd", b[60], c[30];
scanf("%s", b);
scanf("%s", c);
mystrcat(a, mystrcat(b, c));
puts(a);
return 0;
}
/* 请在这里填写答案 */
输入样例:
fgh
ijk
输出样例:
abcdfghijk
答案
法1 非纯指针方法
char* mystrcat(char *s1, const char *s2){
int i,j;
for(i = 0;s1[i] != ‘\0‘;i++);
for(j = 0;s2[j] != ‘\0‘;j++, i++)
s1[i] = s2[j];
s1[i] = ‘\0‘;
return s1;
}
法2
char* mystrcat(char *s1, const char *s2){
char *p = s1;
while(*p)p++;
while(*p++ = *s2++);
*p = ‘\0‘;
return s1;
}