offer_02 替换空格

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

被卡住!

研究了半天,发现原来是使用scanf("%s", )模式无法接收到空格
要用gets(str)函数!

#include
#include
int main(){
    char str[100];
    while(gets(str)){
        int num;
        for(num=0;str[num]!='\0';num++){

        }
        for(int i=0;ii;j--){
                    str[j+2]=str[j];
                    
                }
                str[num+3]='\0';
                str[i]='%';
                str[++i]='2';
                str[++i]='0';
                num+=3;
            }
        }
        int k=0;
        while(str[k]!='\0'){
            printf("%c",str[k]);
            k++;
        }
        printf("\n");
    
}
}
offer_02 替换空格_第1张图片
演示图

你可能感兴趣的:(offer_02 替换空格)