C 空格替换

来源:互联网 发布:cc攻击防御 php 编辑:程序博客网 时间:2024/06/07 23:10

如果长度一样,就不要考虑覆盖了
空格替换成%020 就差一步啊,傻啊,先挪动,就不会覆盖了。
画图看变化前后,不就清楚了,想你没

#include<stdio.h>#include<stdlib.h>#include<string.h>/*2.将 字 符 串 中 的 空 格 替 换 成 “%020”*/void space_fun(char *, int len);int main(){    char str[20];    char *p;    puts("请输入带空格的一句话:");    gets(str);    space_fun(str, 20);    p = str;    printf("%s\n", p);    system("pause");    return 0;}void space_fun(char *a, int len) {    int i=0;    int j = 0;    for (i = 0; i < len; i++) {        if (*(a+i) == ' ')        {            len += 3;            j = len - 1;            while (j - 3 > i) {                *(a + j) = *(a + j - 3);  // 替换一个空格,空格数减一                j--;            }            *(a + i) = '%';            *(a + i + 1) = '0';            *(a + i + 2) = '2';            *(a + i + 3) = '0';        }    }}
0 0
原创粉丝点击