C语言 删除字符串中的指定字符'*',要求用指针,谢谢~
3个回答
展开全部
#include<stdio.h>
intmain()
{
charstr[100];
char*p,*q;
charc;
gets(str);
c=getchar();
for(p=str,q=str;*p!='\0';p++)//用指针*p去提取str中每一个元素,用指针*q去删除str中需要删除的元素
if(*p!=c)
*(q++)=*p;
*q=*p;
puts(str);
return0;
}
扩展资料:
其它方法:
#include<stdio.h>
intmain()
{
charstr[100];
char*q;
charc;
inti;
gets(str);
c=getchar();
for(i=0,q=str;str[i]!='\0';i++)
if(str[i]!=c)
*(q++)=str[i];
*q=str[i];
puts(str);
return0;
}
展开全部
第一步,求字符串中有多少个*,随便求这个字符串的长度
第二步。申请一块空间,大小为:字符串总长度减去*的个数
第三步,
for(i=0;i<total_size;i++)
{
if((string+i)! = ' * ')
{
(new_string+i) = string+i;
}
}
第二步。申请一块空间,大小为:字符串总长度减去*的个数
第三步,
for(i=0;i<total_size;i++)
{
if((string+i)! = ' * ')
{
(new_string+i) = string+i;
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询