用c语言写一个函数 fun ( char * p , char * q ),功能是把 p 指向的字符串连接到 q 指向的字符串后面,把 q 指向的字符串连接到 p 指向的字符串后面,然后再交换 p 和 q 指向的两个字符串。在 main 函数中定义和输入、输出两个字符串。 把最后的两个字符串输出到文本文件 d :\ student \ myouttxt .(用 fprintf ()函数)源程序
时间: 2024-02-03 17:15:57 浏览: 67
下面是实现该功能的 C 代码:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void fun(char *p, char *q);
int main()
{
char str1[100], str2[100];
FILE *fp;
// 输入两个字符串
printf("请输入两个字符串:\n");
scanf("%s%s", str1, str2);
// 在屏幕上输出原始字符串
printf("原始字符串:\n");
printf("str1: %s\n", str1);
printf("str2: %s\n", str2);
// 对两个字符串进行操作
fun(str1, str2);
// 在屏幕上输出操作后的字符串
printf("操作后的字符串:\n");
printf("str1: %s\n", str1);
printf("str2: %s\n", str2);
// 将操作后的字符串输出到文件
fp = fopen("d:\\student\\myout.txt", "w");
fprintf(fp, "%s\n%s", str1, str2);
fclose(fp);
return 0;
}
void fun(char *p, char *q)
{
char temp[100];
// 连接 p 和 q 指向的字符串
strcat(p, q);
strcat(q, p);
// 交换 p 和 q 指向的字符串
strcpy(temp, p);
strcpy(p, q);
strcpy(q, temp);
}
```
这个程序首先在屏幕上输出两个字符串,然后调用 `fun()` 函数处理这两个字符串,最后再将处理后的字符串输出到文件中。`fun()` 函数接收两个指向字符数组的指针 `p` 和 `q`,首先将 `p` 指向的字符串连接到 `q` 指向的字符串后面,然后将 `q` 指向的字符串连接到 `p` 指向的字符串后面,最后再交换 `p` 和 `q` 指向的字符串。
阅读全文