代码一’\0’是字符串的结束符,任何字符串之后都会自动加上’\0’指针是个好东西养成好习惯,点个赞再走;有问题,欢迎私信、评论,我看到都会回复的
#include<stdio.h>int main(){void cancelchar(char *a, char n);char a[50], n;//输入一个字符串gets(a);//输入待删除字符n = getchar();cancelchar(a, n);//输出puts(a);return 0;} void cancelchar(char*a, char n){char *p;for(p = a; *p != '\0'; p++)if(*p != n) *a++ = *p;*a = '\0';}
输入:
zhangguohao666ya6
输出:
zhangguohaoya
代码二
不使用指针,但实际上思路不变
#include<stdio.h>#define N 50 int main(){int delchar(char a[], char n);char a[N], n;//N决定字符串的字符上限 //输入一个字符串gets(a);//输入待删除字符n = getchar();delchar(a, n);return 0;} int delchar(char a[], char n){char p[N];int i, j = 0;for(i = 0; a[i] != '\0'; i++){if(a[i] != n){p[j] = a[i];j++;}} p[j] = '\0';//输出printf("%s", p);}
C语言入门题目文章导航:
素数(C)水仙花数(C)斐波那契数列(C)完数(C)阶乘(C)直角杨辉三角形(C)大写字母、小写字母、ASCII码(C)输入一个字符,找出他的前驱字符和后继字符(C)最大数、最小数(C)百钱买百鸡(C语言,枚举法)辗转相除法求最大公约数,利用最大公约数求最小公倍数(C)输入一个年份和一个月份,输出该年此月天数;知道日期,计算该日是本年的第几天(C)输入一个不多于4位的正整数,求它的位数,并按逆序输出各位数字(C)利用二维数组求方阵的主次对角线之和(C)在一个二维数组中找出最小数及其所在的行和列(C)找出一个二维数组中的鞍点(C)本篇文章字符串(C)条件判断语句1(C)条件判断语句2(C)圆、三角形、正方形、长方体、计算1到100的和、和差积商、平均值输入三个整数,要求程序把数据按从小到大的顺序放入x y z中,然后输出(C)18个数围成一圈,求相邻三数之和最大数(C)梯形法求定积分(C)学生与课程的综合问题(C)