1.编写函数fun,其功能是:实现两个字符串的连接(不要使用库函数strcat),即把p2所 指的字符串连接到p1所指的字符串的后面。 例如,分别输入下面两个字符串: FirstString-- SecondString 程序输出: FirstString--SecondString "); puts(b); printf("\n\n"); #include <stdio.h> void fun(char p1[], char p2[]) { } main() { char s1[80], s2[40] ;void NONO (); printf("Enter s1 and s2:\n") ; scanf("%s%s", s1, s2) ; printf("s1=%s\n", s1) ; printf("s2=%s\n", s2) ; printf("Invoke fun(s1,s2):\n") ; fun(s1, s2) ; printf("After invoking:\n") ; printf("%s\n", s1) ; }
时间: 2024-01-07 16:03:36 浏览: 109
C语言程序设计-编写函数fun其功能是:根据整型形参m,计算如下公式的值:y=1+13+15+17+…+1(2m+1)
5星 · 资源好评率100%
可以使用指针来实现字符串的连接,具体实现如下:
```c
void fun(char p1[], char p2[]) {
char *p = p1;
while (*p != '\0') { // 找到 p1 的末尾位置
p++;
}
while (*p2 != '\0') { // 将 p2 中的字符逐个复制到 p1 的末尾位置
*p = *p2;
p++;
p2++;
}
*p = '\0'; // 在 p1 的末尾添加 NULL 字符
}
```
完整代码如下:
```c
#include <stdio.h>
void fun(char p1[], char p2[]) {
char *p = p1;
while (*p != '\0') { // 找到 p1 的末尾位置
p++;
}
while (*p2 != '\0') { // 将 p2 中的字符逐个复制到 p1 的末尾位置
*p = *p2;
p++;
p2++;
}
*p = '\0'; // 在 p1 的末尾添加 NULL 字符
}
int main() {
char s1[80], s2[40];
printf("Enter s1 and s2:\n");
scanf("%s%s", s1, s2);
printf("s1=%s\n", s1);
printf("s2=%s\n", s2);
printf("Invoke fun(s1,s2):\n");
fun(s1, s2);
printf("After invoking:\n");
printf("%s\n", s1);
return 0;
}
```
运行结果如下:
```
Enter s1 and s2:
FirstString
SecondString
s1=FirstString
s2=SecondString
Invoke fun(s1,s2):
After invoking:
FirstStringSecondString
```
阅读全文