提高项目30.3-删除特定字符

来源:互联网 发布:php curl 输出图片 编辑:程序博客网 时间:2024/05/02 04:33

任务和代码:去除字符串str中的特定字符c(如空格),结果仍保存到原字符串中

/*文件名:main.c作者:小风景完成日期:2016.7.10问题描述:去除字符串str中的特定字符c(如空格),结果仍保存到原字符串中程序输出:*/#include <stdio.h>#include <string.h>char* adelchar(char str[], char c);   //用数组名作为形参char* pdelchar(char *str, char c);    //用指针作为形参int main(void){    char s[50]="Hello world. ";    adelchar(s,'o');    printf("去除 o 后,字符串为:%s\n", s);    strcpy(s, "my name is tom.");    pdelchar(s,'m');    printf("去除 m 后,字符串为:%s\n", s);    return 0;}char* adelchar(char str[], char c){    int len =strlen(str);    int i = 0;    int j = 0;    for(i = 0; i < len;i++)    {        if(str[i] != c)        {            str[j] = str[i];            j++;        }    }    str[j] = '\0';    return str;}char* pdelchar(char *str, char c){    char *p = NULL;    for(p = str;*p != '\0';p++)    {        if(*p != c)        {            *(str++) = *p;        }    }    *str = '\0';    return str;}


程序运行结果:



总结:注意对原字符串进行操作然后将结果保留在相同空间时,当需要的字符串结束后应该加上‘\0,否则在输出时如有残留的数据,也会一起输出。’

0 0