• 剑指OFFER之替换空格


    题目描述:

    请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。

    输入:

    每个输入文件仅包含一组测试样例。
    对于每组测试案例,输入一行代表要处理的字符串。

    输出:

    对应每个测试案例,出经过处理后的字符串。

    样例输入:
    We Are Happy
    样例输出:
    We%20Are%20Happy

    Code:
    #include <stdio.h>
    #include <stdlib.h>
     
    void ReplaceBlank(char str[]){
        if(str==NULL)
            return;
        int originalLength=0;
        int numberOfBlank=0;
        int i=0;
        while(str[i]!=''){
            ++originalLength;
            if(str[i]==' '){
                ++numberOfBlank;
            }
            ++i;
        }
        int newLength=originalLength+2*numberOfBlank;
        while(originalLength>=0){
            if(str[originalLength]!=' '){
                str[newLength--]=str[originalLength--];
            }else{
                --originalLength;
                str[newLength--]='0';
                str[newLength--]='2';
                str[newLength--]='%';
            }
        }
    }
     
    int main()
    {
        char str[1000000];
        while(gets(str)){
            ReplaceBlank(str);
            printf("%s
    ",str);
        }
        return 0;
    }
     
    /**************************************************************
        Problem: 1510
        User: lcyvino
        Language: C
        Result: Accepted
        Time:10 ms
        Memory:1820 kb
    ****************************************************************/
  • 相关阅读:
    Beyond Compare同步功能简介
    CorelDRAW中如何制作表格
    如何解决CorelDRAW中尖突问题
    LCS 最长公共子序列
    Java容器部分用法
    数论知识简易总结
    操作系统的运行环境 中断与有异常
    OS的发展和分类
    操作系统的基本概念
    搭建神经网络的八股
  • 原文地址:https://www.cnblogs.com/Murcielago/p/4148913.html
Copyright © 2020-2023  润新知