自定义函数实现两个字符串的连接。要求函数返回值是连接后的字符串。 主函数接收从键盘输入的两行不超过80个字符的字符串(包括空格),调用自定义函数实现字符串的连接。 注意自定义函数中的第1个字符数组长度必须足够大。
时间: 2024-03-26 13:35:32 浏览: 355
好的,根据您提供的代码,我为您续写完整的代码如下:
```c
#include <stdio.h>
#include <string.h>
char* str_cat(char *a, char *b);
const int N = 82;
int main() {
char s1[N*3], s2[N], s3[N*4];
fgets(s1, N, stdin); //最多接收N-1个字符,包括回车
s1[strlen(s1) - 1] = 0;
fgets(s2, N, stdin);
s2[strlen(s2) - 1] = 0;
char *result = str_cat(s1, s2);
printf("连接后的字符串为:%s\n", result);
return 0;
}
char* str_cat(char *a, char *b) {
int len_a = strlen(a);
int len_b = strlen(b);
char *c = (char*)malloc((len_a + len_b + 1) * sizeof(char));
int i, j;
for (i = 0; i < len_a; i++) {
c[i] = a[i];
}
for (j = 0; j < len_b; j++) {
c[i+j] = b[j];
}
c[i+j] = '\0';
return c;
}
```
该程序中,`str_cat()` 函数实现了两个字符串的连接,并返回连接后的字符串。主函数中,我们从键盘输入两个字符串 `s1` 和 `s2`,然后调用 `str_cat()` 函数进行连接,最后输出连接后的结果。需要注意的是,我们在输入字符串后需要将回车符去掉,否则会影响字符串连接的结果。
阅读全文