OpenJudge计算概论-单词替换
/*======================================================================
单词替换
总时间限制: 1000ms 内存限制: 65536kB
描述
输入一个字符串,以回车结束(字符串长度<=100)。
该字符串由若干个单词组成,单词之间用一个空格隔开,所有单词区分大小写。
现需要将其中的某个单词替换成另一个单词,并输出替换之后的字符串。
输入
输入包括3行,
第1行是包含多个单词的字符串 s,
第2行是待替换的单词a,(长度<=100)
第3行是a将被替换的单词b。(长度<=100)
s, a, b 最前面和最后面都没有空格.
输出
输出只有 1 行,
将s中所有单词a替换成b之后的字符串。
样例输入
You want someone to help you
You
I
样例输出
I want someone to help you 思路:先输入s字符串到s数组,接着输入a、b两个字符串。
从前往后扫描数组s,遇到非空格存到t数组,遇到空格检查是否是头一次遇到,(防止单词之间有多个空格)
假如是头一次遇到空格则截止t数组并清空j为0,然后检查t是否等于a,等于输出b,否则输出t。
如此循环处理知道s[i]=='\0'。
最后一个单词没有空格结束,所以要在循环后单独处理。
========================================================================*/
#include<stdio.h>
#include<string.h>
int main()
{
char s[],a[],b[];
int i,j;
char t[];
int firstBlank;
freopen("5.in","r",stdin);
gets(s);
gets(a);
gets(b);
/*printf("%s\n%s\n%s\n",s,a,b);*/
j=;
for(i=;s[i]!='\0';i++)
{
if(s[i]!=' ')
{
firstBlank=;
t[j]=s[i];
j++;
}
else
{
if(firstBlank==)//是否第一个空格.这个检查主要是防止单词之间有多个空格
{
t[j]='\0';
j=;
if(strcmp(t,a)==) printf("%s ",b);
else printf("%s ",t);
firstBlank=;
}
}
}
t[j]='\0';
if(strcmp(t,a)==) printf("%s\n",b);
else printf("%s\n",t);
return ;
}
OpenJudge计算概论-单词替换的更多相关文章
- Openjudge计算概论-单词翻转
/*===================================== 单词翻转 总时间限制: 1000ms 内存限制: 65536kB 描述 输入一个句子(一行),将句子中的每一个单词翻转后 ...
- OpenJudge计算概论-单词排序
/*===================================== 单词排序 总时间限制:1000ms 内存限制: 65536kB 描述 输入一行单词序列,相邻单词之间由1个或多个空格间隔 ...
- OpenJudge计算概论-单词倒排【把句子内单词的顺序翻转】
/*================================================== 单词倒排 总时间限制: 1000ms 内存限制: 65536kB 描述 编写程序,读入一段英文 ...
- OpenJudge计算概论-取石子游戏
OpenJudge计算概论-取石子游戏[函数递归练习] /*====================================================================== ...
- Openjudge计算概论——数组逆序重放【递归练习】
/*===================================== 数组逆序重放 总时间限制:1000ms 内存限制:65536kB 描述 将一个数组中的值按逆序重新存放. 例如,原来的顺 ...
- OpenJudge计算概论-计算书费
/*============================================== 计算书费 总时间限制: 1000ms 内存限制: 65536kB 描述 下面是一个图书的单价表: 计算 ...
- OpenJudge计算概论-最高的分数
/*======================================================== 最高的分数 总时间限制: 1000ms 内存限制: 65536kB 描述 孙老师 ...
- OpenJudge计算概论-最长单词2
/*======================================================================== 最长单词2 总时间限制: 1000ms 内存限制: ...
- OpenJudge计算概论-比饭量【枚举法、信息数字化】
/*====================================================================== 比饭量 总时间限制: 1000ms 内存限制: 655 ...
随机推荐
- Python命名规范
Python 标识符 参见:https://docs.python.org/3/reference/lexical_analysis.html?highlight=identifier#identif ...
- UI基础:UIActionSheet和UIAlterView
iOS中有两个弹出视图的控件,分别是UIActionSheet和UIAlterView.效果图如下: 主要代码如下: - (void)viewDidLoad { [super viewDi ...
- AD管理命令
repadmin /showrepl 显示复制协议 dcdiag /test:dns
- Spring Boot交流平台
可以关注微信公众号springboot或者可以加入 Spring Boot QQ交流群1:193341332 (群已满) Spring Boot QQ交流群2:193341364 微信公众号搜索spr ...
- HDU 5050
http://acm.hdu.edu.cn/showproblem.php?pid=5050 大数gcd import java.io.* ; import java.math.* ; import ...
- Magento中,调用静态块的几种方法
在后台创建一个order_form静态块Block Title :Order FormIdentifier :order_formStatus :EnabledContent :自定义内容 1.如果要 ...
- tracking 问题解决
1.dir,或者C++函数读文件名,不推荐.搞乱了名字 2. matio读写矩阵
- Python MySQL ORM QuickORM hacking
# coding: utf-8 # # Python MySQL ORM QuickORM hacking # 说明: # 以前仅仅是知道有ORM的存在,但是对ORM这个东西内部工作原理不是很清楚, ...
- native
源博客:http://blog.csdn.net/jiakw_1981/article/details/3073613 一. 什么是Native Method 简单地讲,一个Native Meth ...
- iOS学习笔记---c语言第八天
指针 首先将变量a的地址存放在另一个变量中,比如存放在变量b中,然后通过变量b来间接引用变量a,间接读写变量a的值.用来存放变量地址的变量,就称为"指针变量" int *p=nul ...