C语言删除字符数组中特定的字符
下面的程序将从字符数组中删除特定的字符,要求字符数组和要删除的字符都是手动输入。
主要涉及知识点:字符数组的输入输出,及相应的处理。
先来看代码:
这个程序设计的很巧妙,没有定义新数组,在原来的数组上通过数组元素的移动完成了删除特定字符串的工作。
请看下图,通过复制操作来移动元素,恰巧跳过要删除的字符。
主要涉及知识点:字符数组的输入输出,及相应的处理。
先来看代码:
#include <stdio.h> int main(){ char s[80], c; int j, k; printf("Enter a string: "); gets(s); printf("Enter a character: "); c=getchar( ); for(j=k=0; s[j]!='\0'; j++) if(s[j]!=c) s[k++]=s[j]; s[k]= '\0'; printf("\n%s",s); return 0; }运行结果:
Enter a string: www.coderbbs.com Enter a character: r The final string is: www.codebbs.com或者:
Enter a string: www.coderbbs.com Enter a character: w The final string is: .coderbbs.com
这个程序设计的很巧妙,没有定义新数组,在原来的数组上通过数组元素的移动完成了删除特定字符串的工作。
请看下图,通过复制操作来移动元素,恰巧跳过要删除的字符。