连续输入三个字符串,在第一个字符串中查找第二个字符串,如果存在,就将之替换为第三个字符串。 输出被更正后的第一个字符串。c语言
时间: 2023-06-23 17:08:57 浏览: 97
以下是一个简单的 C 语言程序,用于实现上述操作:
```c
#include <stdio.h>
#include <string.h>
#define MAX_LEN 1000
int main() {
char str1[MAX_LEN], str2[MAX_LEN], str3[MAX_LEN];
printf("请输入第一个字符串:\n");
fgets(str1, MAX_LEN, stdin);
printf("请输入要查找的字符串:\n");
fgets(str2, MAX_LEN, stdin);
printf("请输入用于替换的字符串:\n");
fgets(str3, MAX_LEN, stdin);
// 去除换行符
str1[strcspn(str1, "\n")] = '\0';
str2[strcspn(str2, "\n")] = '\0';
str3[strcspn(str3, "\n")] = '\0';
// 在 str1 中查找 str2
char *pos = strstr(str1, str2);
if (pos != NULL) {
// 替换 str2 为 str3
int len1 = strlen(str1), len2 = strlen(str2), len3 = strlen(str3);
memmove(pos + len3, pos + len2, len1 - (pos - str1) - len2 + 1);
memcpy(pos, str3, len3);
}
printf("修改后的结果为:\n%s\n", str1);
return 0;
}
```
程序中使用了 `fgets` 函数输入字符串,并使用 `strcspn` 函数去除换行符。然后使用 `strstr` 函数在第一个字符串中查找第二个字符串,如果找到,则使用 `memmove` 函数将后面的部分向后移动,然后使用 `memcpy` 函数将第三个字符串复制到替换的位置。最后输出修改后的结果。
阅读全文
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)