编写一个C语言程序,使任意输入字符串,将该字符串中"yes"替换成"no".
时间: 2023-12-29 12:05:30 浏览: 109
好的,这是一个简单的C语言程序,可以实现你的要求:
```c
#include <stdio.h>
#include <string.h>
#define MAX_LEN 1000 // 定义字符串最大长度
char* replace(char* str) { // 实现字符串替换的函数
char* ptr;
if ((ptr = strstr(str, "yes")) != NULL) { // 判断是否需要替换
strcpy(ptr, "no"); // 替换
strcat(ptr+2, str+ptr-str+3); // 将后面的字符串拼接回去
}
return str;
}
int main() {
char str[MAX_LEN];
printf("请输入字符串:");
fgets(str, MAX_LEN, stdin); // 从标准输入读取字符串
replace(str); // 调用替换函数
printf("替换后的字符串为:%s", str); // 输出结果
return 0;
}
```
你可以输入任意字符串,并在其中包含几个"yes",程序会自动将它们替换成"no"。注意,这个程序只会替换第一个"yes",如果字符串中有多个"yes"需要替换,可以考虑用循环实现。
相关问题
编写一个C语言程序,使任意输入字符串,将该字符串中所有"yes"替换成"no".
好的,以下是一个可以实现替换的C语言程序:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[1000]; // 定义最大长度为1000的字符串
printf("请输入字符串:");
fgets(str, 1000, stdin); // 从标准输入获取字符串
int len = strlen(str);
for (int i = 0; i < len; i++) { // 遍历字符串中的每个字符
if (str[i] == 'y' && str[i+1] == 'e' && str[i+2] == 's') { // 判断是否为"yes"
str[i] = 'n'; // 将"yes"替换为"no"
str[i+1] = 'o';
str[i+2] = ' ';
}
}
printf("替换后的字符串:%s\n", str); // 输出替换后的字符串
return 0;
}
```
请问您是否满意我的回答?
编写C语言,使任意输入字符串,将该字符串中"yes"替换成"no".
好的,以下是C语言的示例代码:
```
#include <stdio.h>
#include <string.h>
int main() {
char str[100];
printf("请输入字符串:");
fgets(str, 100, stdin); // 使用fgets函数接收字符串,防止溢出
int len = strlen(str);
for (int i = 0; i < len - 2; i++) {
if (str[i] == 'y' && str[i + 1] == 'e' && str[i + 2] == 's') { // 找到"yes"字符串
str[i] = 'n';
str[i + 1] = 'o';
str[i + 2] = '\0'; // 将"yes"替换为"no"
}
}
printf("替换后的字符串为:%s", str);
return 0;
}
```
这个程序会把任何输入的字符串中的 "yes" 替换为 "no",并输出替换后的字符串。
阅读全文