DHU OJ84删除字符
AC代码:
#include <iostream>
#include <cstring>
using namespace std;
int main()//84 删除字符
{
char str[20];
char ch;
char str1[20];
//cin.get(str,20);原来的字符数组
//cin.get();吃掉输入流中的回车
gets(str);
ch=cin.get();//cin.get(ch)或ch=getchar();
int j=0;
for(int i=0;str[i]!='\0';i++){
if(str[i]!=ch){//依次判断字符,不是ch的则复制到新字符数组str1中
str1[j]=str[i];
j++;
}
}
str1[j]='\0';
cout<<str1<<endl;
return 0;
}
注意:1.需要考虑字符串str中有空格的情况
2.需要考虑要删除的字符ch为[空格]’ '的情况
3.使用cin.get(str,20)时,第一行的字符串输入结束后会输入回车到下一行,应吞掉这个回车,用cin.get();
参考这2篇文章C++的字符串输入方式
和C++ 字符串的输入的几种方法
第一行输入字符串的两种方式:
- cin.get(str,20);//原来的字符数组
cin.get();//吃掉输入流中的回车 - gets(str);