描述
编写一个程序实现将字符串中的所有"you"替换成"we"
-
输入
-
输入包含多行数据
每行数据是一个字符串,长度不超过1000
数据以EOF结束
输出
- 对于输入的每一行,输出替换后的字符串 样例输入
-
you are what you do
样例输出
-
we are what we do
思路:
这道题在c中先输入输出,我是在char数组中,用gets()和puts()输入输出,用strlen()来计算数组的长度。然后在数组中找到you替换成we,然后将后面的依次保存前来。再接着从刚刚结束的地方再判断后面有没有you,再替换,最后输出。
代码:
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int main(){
char a[100];
while(gets(a)){//输入字符串以字符的形式,
int i ,j;
int len = strlen(a);
for(i=0;i<len;i++){
if(a[i] == 'y'&&a[i+1] == 'o'&&a[i+2] == 'u'){//找出you
a[i] = 'w';//替换
a[i+1] ='e';
j = i;//保存此时的位置
for(i = i+2;i<len;i++){//将后面的字符先存放在数组中
a[i] = a[i+1];
}
i = j+2;//从刚刚的位置再开始判断
}
}
puts(a);//输出数组,即字符串
}
return 0;
}