关于自定义函数 字符串
11.设计函数,将字符数组中指定的字符删除。voiddel_char(char *s,charc);
我这个咋不行呢 哪里不规范了
#include<stdio.h>
void del_char(char *s,char c)
{
int i,j=0;
for(i=0;i!='\0';i++)
{
if(s==c)continue;
s=s;
}
}
main()
{
int i;
char c='b';
char b="abc";
del_char(b,c);
for(i=0;i<3;i++)
printf("%c",b);
}
本帖最后由 isdkz 于 2022-3-10 17:52 编辑
你的 i 初值为 0,并不等于 '\0',所以循环体并没有执行。
#include<stdio.h>
void del_char(char *s,char c)
{
int i,j=0;
for(i=0;s!='\0';i++) // 注意这里
{
if(s==c)continue;
s=s;
}
s = '\0';
}
main()
{
int i;
char c='b';
char b="abc";
del_char(b,c);
for(i=0;i<3;i++)
printf("%c",b);
}
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<string.h>
void del_char(char* s, char c)
{
int i, j = 0;
for (i = 0; s; i++) //这里的判断条件要改成s,改成s的意思是判断是否已经到底数组末尾
{
if (s == c)continue;
s = s;
}
s = 0;//循环结束记得手动在那里添给'\0给数组结尾
}
int main()
{
int i;
char c = 'b';
char b ="abc" ; //记住,要大于你所给字符串个数一个,因为系统要自动给他添一个'\0'
del_char(b, c);
for (i = 0; i < 3; i++)
printf("%c", b);
return 0;
} 代码里面错误太多了,自己检查一下啊{:10_277:}
页:
[1]