C语言删除字符串中某一指定字符

#include
#include
#include
void main() {
	char str[30], * p = str, c , * q1, * q2;
	gets_s(str);
	c = getchar();
//整体思想是用找到将要被删除的字符,把他后面的字符依次前移,我觉得这种方法比较好理解
	while (*p) {
		while (*p == c) {//如果用if(*p==c)就只能删除一个字符
			q1 = p;
			q2 = p + 1;
			while (*q2) {
				*q1 = *q2;
				q1++;
				q2++;
			}
			*q1 = '\0';

		}
		p++;
	}
	printf("%s", str);
}

 

你可能感兴趣的:(C语言,c++,c语言,算法)