【问题描述】 用指针传递参数,实现两个字符串的互换。 【输入形式】 输入两个字符串
时间: 2023-12-04 14:05:32 浏览: 79
以下是用指针传递参数实现两个字符串互换的示例代码:
```c
#include <stdio.h>
#include <string.h>
void swap(char *str1, char *str2);
int main()
{
char str1[100], str2[100];
printf("输入第一个字符串:");
scanf("%s", str1);
printf("输入第二个字符串:");
scanf("%s", str2);
printf("交换前:\n");
printf("str1: %s\n", str1);
printf("str2: %s\n", str2);
swap(str1, str2);
printf("交换后:\n");
printf("str1: %s\n", str1);
printf("str2: %s\n", str2);
return 0;
}
void swap(char *str1, char *str2)
{
char temp[100];
strcpy(temp, str1);
strcpy(str1, str2);
strcpy(str2, temp);
}
```
在这个程序中,我们定义了一个 `swap` 函数,它使用指针来接收两个字符串,然后使用 `strcpy` 函数来交换字符串。注意,我们在 `swap` 函数中创建了一个名为 `temp` 的临时数组来存储交换过程中的一个字符串。这是因为我们不能直接交换两个字符串,所以我们需要一个额外的存储位置来完成这个任务。
在 `main` 函数中,我们首先输入两个字符串,然后调用 `swap` 函数来交换它们。最后,我们输出交换后的字符串。
阅读全文