zoukankan      html  css  js  c++  java
  • 17:单词替换

    17:单词替换
        总时间限制: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、a、b。然后扫描s,每当发现一个单词就把该单词放到t串。当该单词结束,

    比较t串和a串是否一致,若a==t则输出b,否则输出t。扫描时遇到空格要注意区分该空格是表示当前

    单词还没开始或是当前单词已经结束(可以输出该单词)

     1 #include<stdio.h>
     2 #include<string.h>
     3 int main(int argc, char *argv[])
     4 {
     5     char s[105],a[105],b[105],t[105];
     6     int i;
     7     int f;
     8     int j;
     9     freopen("17.in","r",stdin);
    10     gets(s);
    11     scanf("%s",a);
    12     scanf("%s",b);
    13     
    14     i=0;
    15     f=0;// f=0表示还没开始一个单词 
    16     j=0;
    17     while(s[i]!='')
    18     {
    19         if(s[i]==' ') 
    20         {
    21             if(f==0)
    22                 printf(" ");
    23             else if(f==1) // f=1表示一个单词扫描结束 
    24             {
    25                 t[j]='';
    26                 if(strcmp(t,a)==0) printf("%s",b);
    27                 else printf("%s",t);
    28                 j=0;
    29                 printf(" ");
    30                 f=0;
    31             }
    32         }
    33         else
    34         {
    35             t[j]=s[i];
    36             j++;
    37             f=1;
    38         }
    39         i++;
    40     }
    41     //处理末尾单词 
    42     t[j]='';
    43     if(strcmp(t,a)==0) printf("%s",b);
    44     else printf("%s",t);
    45     return 0;
    46 }
  • 相关阅读:
    DOM笔记(二):Node接口
    DOM笔记(一):HTMLDocument接口
    mysql_connect v/s mysql_pconnect
    HTML 5:绘制旋转的太极图
    HTML 5:你必须知道的data属性
    CSS:7个你可能不认识的单位
    CSS 3的display:盒类型详解
    PHP:6种GET和POST请求发送方法
    asp.net mvc生命周期学习
    关于sql row_number,rank,dense_rank,ntile函数
  • 原文地址:https://www.cnblogs.com/huashanqingzhu/p/5073448.html
Copyright © 2011-2022 走看看