NYOJ 113 字符串替换
来源:互联网 发布:fabric python 编辑:程序博客网 时间:2024/06/05 03:10
字符串替换
时间限制:3000 ms | 内存限制:65535 KB
难度:2
- 描述
- 编写一个程序实现将字符串中的所有"you"替换成"we"
- 输入
- 输入包含多行数据
每行数据是一个字符串,长度不超过1000
数据以EOF结束 - 输出
- 对于输入的每一行,输出替换后的字符串
- 样例输入
you are what you do
- 样例输出
we are what we do
/*题解:将字符串you替换为'w','e','\n'然后将“\n'剔除。*/
#include<stdio.h>#include<string.h>int main(){int i,js;char str[1010];while(gets(str)){js=strlen(str);for(i=0;i<js-2;i++)if(str[i]=='y'&&str[i+1]=='o'&&str[i+2]=='u'){str[i]='w';str[i+1]='e';str[i+2]='\n';}for(i=0;i<js;i++){if(str[i]!='y'||str[i+1]!='o'||str[i+2]!='u'){if(str[i]=='\n')continue;printf("%c",str[i]);}}printf("\n");}return 0;}
优秀代码://s.replace(pos,len,str),s.find(s1);#include<iostream>using namespace std;int main(){string s,s1 = "you",s2 = "we";int flag;while(cin>>s){flag = s.find(s1);//返回s中找到第一个s1的下标while(flag!=string::npos){s.replace(flag,3,s2);flag = s.find(s1,flag+1);}cout<<s<<endl; }return 0;}
对replace的test:#include<iostream>using namespace std;int main(){string s,s1,s2;s = "aaaaaaaaaa";s1 = "bbb";s2 = "cc";cout<<s.replace(2,3,s1)<<endl;cout<<s.replace(5,3,s2)<<endl;} /*若将cout<<s.replace(6,2,s2)<<endl;改为cout<<s.replace(6,3,s2)<<endl;结果是aabbbacca*/
结果是:
0 0
- NYOJ-113:字符串替换
- NYOJ 113 字符串替换
- NYOJ-字符串替换-113
- NYOJ 113 字符串替换
- NYOJ 113 字符串替换
- NYOJ 113 字符串替换
- NYOJ-113 字符串替换
- NYOJ--113 字符串替换
- NYOJ 113 字符串替换
- nyoj-113-字符串替换
- nyoj 113 字符串替换
- NYOJ 113 字符串替换
- nyoj 113 字符串替换
- NYOJ 113 字符串替换
- NYOJ 113 字符串替换
- 【NYOJ】[113]字符串替换
- NYOJ-113 字符串替换
- nyoj-【113 字符串替换】
- MYSQL 语句多种排序
- ServiceStack.Redis常用操作 - 事务、并发锁
- javaEE学习—SSH学习前奏2
- 百度面试题-海量日志,读取IP
- Qt多工程多目录的编译案例
- NYOJ 113 字符串替换
- js正则表达式语法
- 终端——复制、粘贴
- WebService到底是什么
- ubuntu下android手机动态显示在桌面上
- jquery选择器
- 黑马程序员-基础测试题纠结的内部类
- 求最大子数组之和及其一些扩展问题
- SpringMVC整合DWR(Maven项目+jetty插件运行)