/*======================================================================
单词替换
总时间限制: 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计算概论-单词替换的更多相关文章

  1. Openjudge计算概论-单词翻转

    /*===================================== 单词翻转 总时间限制: 1000ms 内存限制: 65536kB 描述 输入一个句子(一行),将句子中的每一个单词翻转后 ...

  2. OpenJudge计算概论-单词排序

    /*===================================== 单词排序 总时间限制:1000ms 内存限制: 65536kB 描述 输入一行单词序列,相邻单词之间由1个或多个空格间隔 ...

  3. OpenJudge计算概论-单词倒排【把句子内单词的顺序翻转】

    /*================================================== 单词倒排 总时间限制: 1000ms 内存限制: 65536kB 描述 编写程序,读入一段英文 ...

  4. OpenJudge计算概论-取石子游戏

    OpenJudge计算概论-取石子游戏[函数递归练习] /*====================================================================== ...

  5. Openjudge计算概论——数组逆序重放【递归练习】

    /*===================================== 数组逆序重放 总时间限制:1000ms 内存限制:65536kB 描述 将一个数组中的值按逆序重新存放. 例如,原来的顺 ...

  6. OpenJudge计算概论-计算书费

    /*============================================== 计算书费 总时间限制: 1000ms 内存限制: 65536kB 描述 下面是一个图书的单价表: 计算 ...

  7. OpenJudge计算概论-最高的分数

    /*======================================================== 最高的分数 总时间限制: 1000ms 内存限制: 65536kB 描述 孙老师 ...

  8. OpenJudge计算概论-最长单词2

    /*======================================================================== 最长单词2 总时间限制: 1000ms 内存限制: ...

  9. OpenJudge计算概论-比饭量【枚举法、信息数字化】

    /*====================================================================== 比饭量 总时间限制: 1000ms 内存限制: 655 ...

随机推荐

  1. Add a stylesheet link programmatically in ASP.NET

    Here’s a code snippet used to programmatically insert a stylesheet link to an external CSS file: // ...

  2. JS - The react framework

    这几天因为赶时间 , 所以理解上可能有许多的误差 , 如果你不幸点进来了 , 请不要看我的代码 , 这几天我会重新修改 , 然后把错误的不足的 全部修正一下 . /hwr/src/index.js i ...

  3. 关于python3 OpenCV的安装和配置

    开发环境,win7 32bit, Anaconda3.之前尝试pip安装,但是总是不成功.后来,交流群里面废帝大神让我用conda安装,之后按照conda install --channel http ...

  4. DB Create and Insert

    <?php $servername = "localhost"; $username = "username"; $password = "pa ...

  5. 微信 关闭手机微信内置浏览器的js

    WeixinJSBridge.call('closeWindow');

  6. magento插件手动下载

    http://freegento.com/ddl-magento-extension.php 这是插件下载网址,但是要去magento官网获得下载秘钥,输入秘钥即可以下载.

  7. curl 发送带有Authorization的post请求命令

    curl --user user:password  -d "param1=111&param2=222" "http://127.0.0.1/cmd"

  8. Maven构建项目速度慢问题解决

    Maven项目进行构件的时候速度会很慢,由于maven每次进行创建的时候回去网上下载artheType-catalog.xml文件,而且,现在这个文件比较大,已经接近5M的大小,所以,在网速不好的情况 ...

  9. 扩展KVM镜像的虚拟磁盘大小

    当我们需要扩展模板镜像的虚拟磁盘大小时,比如原来的虚拟磁盘大小为20G,现在我们想将其扩展到30G,那么我们可以根据如下步骤来操作. 整个流程可以分为三个阶段: 1.扩展KVM镜像磁盘文件大小到30G ...

  10. mapreduce入门之wordcount注释详解

    mapreduce版本:0.2.0之前 说明: 该注释为之前学习时找到的一篇,现在只是在入门以后对该注释做了一些修正以及添加. 由于版本问题,该代码并没有在集群环境中运行,只将其做为理解mapredu ...