问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

用C语言在字符串中删除指定的字符。

发布网友 发布时间:2022-04-23 03:29

我来回答

5个回答

热心网友 时间:2022-04-17 16:15

#include "stdio.h"
#include <string.h>
int main(){
char a[50],ch;
int i,j;
printf("输入字符串:");
scanf("%s",a);
fflush(stdin);
printf("输入要删的字符:");
scanf("%c",&ch);
for(i=0,j=0;i<strlen(a);i++)
if(a[i]!=ch)
a[j++]=a[i];
a[j]='\0';
puts(a);
return 0;
}

热心网友 时间:2022-04-17 17:33

#include <iostream>
using namespace std;
char *del(char a[],int &n,char x)
{
int i;
char *c=new char[100];
int k=0;
for(i=0;i<n;i++)
{
if(a[i]==x)
continue;
else
c[k++]=a[i];
}
c[k]='\0';
return c;
}
int main()
{
char a[100];
char c;
cout<<"请输入一个字符串:";
gets(a);
cout<<"请输入一个要删除的字符:";
cin>>c;
int len=strlen(a);
cout<<"删除该字符后的字符串为:";
cout<<del(a,len,c)<<endl;
return 0;
}
这个是用C++写的,方法比较笨,但是通俗易懂,希望能够帮助到您。。稍微改动一下,就能用C语言实现了。。

热心网友 时间:2022-04-17 19:08

思路:用一个新的字符数组来存最后输出的数组。循环比较原数组的所有字符,如果不是要删除的字符就存入该字符数组

int main(int argc, char* argv[])
{
char src[]="12a34a567aa";
char des[50];
char name='a';
int flag=0;//标志变量,用来指向des数组的某个位置
int i;
for(i=0;i<StrLen(src);i++)
{
if(src[i]!=name)
{
des[flag]=src[i];
flag++;
}
}
des[i]='\n';
printf("字符串是%s\n",des);
system("pause");

return 0;
}

热心网友 时间:2022-04-17 20:59

希望对你有所帮助:
#include <stdio.h>
#include <string.h>
#define N 10

void main()
{
char ch[N]={'0'};
char move;//指定要删除的字符
printf("please input a string:");
gets(ch);
printf("your string is:");
puts(ch);
printf("please input the char which you want to move:");
scanf("%c",&move);
for(int i=0;i<N;i++)
{
if(move==ch[i])
{
for(int j=i;j<N;j++)
{
ch[j]=ch[j+1];//将相同的字符覆盖
}
i=-1;//让i再从0开始循环检测
}

}
puts(ch);//输出删除指定字符后的字符串
}

热心网友 时间:2022-04-17 23:07

char* DelStr(char* str1, char* str2)
{
int i,j;
int iLen1,iLen2;
int iFlag,iPos;
char s1[128+1],s2[128+1];

memset(s1,0x00,sizeof(s1));
memset(s2,0x00,sizeof(s2));

strcpy(s1,str1);
strcpy(s2,str2);

iLen1 = strlen(s1);
iLen2 = strlen(s2);

for(i = 0;i<=iLen1 - iLen2;i++)
{
iFlag = 0;
iPos = i;
for(j = 0; j< iLen2; j++,iPos++)
{
if(s1[iPos] != s2[j])
{
iFlag = 1;
break;
}
}

if(iFlag == 0)
{
memmove(s1+i,str1+i+iLen2,iLen1-iLen2);
s1[iLen1-iLen2] = 0;
iLen1 = strlen(s1);
}
}
return(s1);
}
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
嘉陵睿行摩托什么颜色好看 请问下在第四军医大学吉林军医学院04级毕业的药学学生你们有入学通知... 报考第四军医大学药学研究生有什么限制吗?比如必须是211大学才能报考吗... 你最近好奇的一件事是什么? 报考第四军医大学的药学研究生(我学的是生物制药)对体检有什么要求(女 ... 赶黄草泡水喝的副作用 ...老梦见过,我找到一个对我很好的男人,对我百般疼爱,可是梦见我们一起... 一个很爱我的女人,但是她却有阴影.在爱我的期间她放纵过自己.跟过很... ...很疼爱我很宠我,把我照顾的无微不至,对我很好,我只相信他 宠物狗缺钙的那些事 - 信息提示 如何从一串字符中删除指定的字符串 吃葡萄对身体有什么好处? 吃葡萄有哪些鲜为人知的好处 葡萄对人体有哪些好处? 葡萄有哪些功效? 葡萄的功效有哪些呢?哪些人不能多吃呢? 吃葡萄有什么好处? 吃葡萄的功效与作用有哪些? 经常吃葡萄,对我们的身体有哪些好处? 谁有过敏性结膜炎痊愈的经验啊,本人得这病很长时间了.请有经验的人指教一下. 拉杆箱密码忘记了 过敏性结膜炎怎么治疗 拉杆箱密码忘记,怎么并? 关于过敏性结膜炎! 拉杆箱密码忘记了。怎么开? 拉杆箱密码忘记了如何打开 行李箱密码忘了怎么办图解 过敏性结膜炎有何症状?怎么预防?吃啥药? 给美团虚拟号码充话费能冲进去吗? 我想关闭QQ空间全部的游戏,我要关闭的方法,请高手指教。 怎样取消QQ空间里的小游戏? 怎样关闭QQ空间的农场、好友买卖等游戏? 手机QQ里的动态-好友动态-小游戏,这小游戏如何删除? 怎么才能关闭QQ空间里面不玩的小游戏 QQ空间应用里的小游戏怎么删除掉啊??? 微信转账错了怎么办? 微信转账错了怎么撤销 QQ空间添加的应用小游戏,不想要了,想删掉怎么删啊? 不想玩qq空间里面的小游戏了,怎样关了这些小游戏? 怎么退出QQ空间里的所有应用小游戏?我要退出!我哪个都不想玩了!谁能帮下我谢谢! 手机QQ空间里的小游戏怎么删除或者设置为好友不可见啊,求解答_百度知 ... QQ空间开通的小游戏。能不能彻底的关闭掉? QQ空间里面、腾讯朋友里面,不喜欢的小游戏应用,例如“小白大作战”,要怎么彻底关闭或者删除? 燃气热水器为什么不能装在卫生间? 为什么说燃气热水器不适合放在厕所里?放哪适合? 燃气热水器安装在哪好? 楼房安装燃气热水器,安装在什么位置好? 燃气热水器安装在哪里? 一般家里的燃气热水器装在哪