广州中山二院南院:删除一个字符串中的一个字符

来源:百度文库 编辑:中科新闻网 时间:2024/04/28 06:20:46
用C++编

rv2001,你改了我的第一个问题,还没改第二个问题啊:)
2、while里面有i++,等到执行b[i]==c比较的时候i已经移到后面了,这样输入abcde,要删除a的时候结果肯定出错。

下面的我测试过:
#include <iostream.h>
void main()
{
char c;
char b[100];//字符串
char m[100];//保存删除字符后的字符串
cin>>b;//输入字符串
cin>>c;//输入要删的字串
int i=0;
int j=0;
while(b[i]!='\0'){
if(b[i]!=c)m[j++]=b[i];
i++;
}
m[j]='\0';
cout << m << endl;
}

另外,楼主也没说明题目的意思,是只删除一个字符呢,还是所有都删除

char b[100];//字符串
char m[100];//保存删除字符后的字符串
cin>>b;//输入字符串
cin>>c;//输入要删的字串
int i=0;
int j=0;
while(b[i++]!='\0'){
if(b[i]!=c)m[j++]=b[i]
}
m[j]='\0';
完成
//呵呵,alenwang - 魔法师 四级,不好意思,当时打错了,见笑,见笑

C++中,
AnsiString asStr = "asdjkl" ;
asStr.Delete(iFrom,iCount) ;
//iFrom 从第几个开始;
//iCount 删除字符数量;

java中
public class h{
public static void main(String args[]){
String s="hello";
StringBuffer ss=new StringBuffer(s);
int i=0;
ss.deleteCharAt(i);//删除字符串第i个字符
System.out.println(ss);
}
}