1.题目

输入两个字符串,从第一字符串中删除第二个字符串中所有的字符。
例如,输入”They are students.”和”aeiou”,则删除之后的第一个字符串变成”Thy r stdnts.”
输入描述 :
每个测试输入包含2个字符串
输出描述 :
输出删除后的字符串
示例1
输入
复制
They are students.
aeiou
输出
复制
Thy r stdnts.

2 .代码展示

#define _CRT_SECURE_NO_WARNINGS 1
#include<iostream>
#include<string>
using namespace std;
int main()
{string s1, s2;getline(cin, s1);getline(cin, s2);auto it1 = s1.begin();auto it2 = s2.begin();while (it1 != s1.end()){auto begin = it2;while (begin != s2.end()){if (*begin == *it1){it1 = s1.erase(it1);--it1;//由于erase函数的返回值是下一个位置}else{++begin;}}++it1;}cout << s1 << endl;system("pause");return 0;
}
/*string s1,s2, s;getline(cin, s1);getline(cin, s2);auto it1 = s1.begin();auto it2 = s2.begin();while (it1 != s1.end()){int flag = 0;auto begin = it2;while (begin != s2.end()){if (*begin == *it1){flag = 1;break;}++begin;}if (flag == 0){s += *it1;}++it1;}cout << s << endl;
*/

3.解题思路

首先我们将s1中的每一位和s2中的每一位都进行比较,将相同的删除,如果用erase的话,要注意删除是移动后面的数据到当前位置,所以有可能造成当前数据没有和s2之前的数据进行比较,所以要将当前的位置-1,另外就是erase每次删除都要移动,所以为了避免这种不必要的事件浪费,所以我们新创建一个对象,将不同的储存起来就好。

输入两个字符串,从第一字符串中删除第二个字符串中所有的字符。 例如,输入”They are students.”和”aeiou”,则删除之后的第一个字符串变成”Thy r stdnts.”相关推荐

  1. 输入两个字符串,从第一字符串中删除第二个字符串中所有的字符。例如,输入”They are students.”和”aeiou”,则删除之后的第一个字符串变成”Thy r stdnts.”

    题目:输入两个字符串,从第一字符串中删除第二个字符串中所有的字符.例如,输入"They are students."和"aeiou",则删除之后的第一个字符串变 ...

  2. 输入两个字符串,从第一字符串中删除第二个字符串中所有的字符。例如,输入 ”They are students.” 和 ”aeiou” ,则删除之后的第一个字符串变成 ”Thy r stdnts.”

    题目 输入两个字符串,从第一字符串中删除第二个字符串中所有的字符.例如,输入 "They are students." 和 "aeiou" ,则删除之后的第一个 ...

  3. 输入两个自然数min,max,计算、输出[min,max]中的超级素数的个数#C语言

    题目:请编写程序,输入两个自然数min,max,计算.输出[min,max]中的超级素数的个数 超级素数: 一个素数,依次从低位去掉一位,二位,--,若所得的各数仍都是素数,则称超级素数. 例如:73 ...

  4. java 以某某结尾_Java中删除第一个集合中以某某开头的元素,删除第二个集合中以某某结尾的元素,并合并成一个集合...

    import java.util.ArrayList; import java.util.List; public class Test { public static void main(Strin ...

  5. 管理系统中计算机应用第二章,管理系统中计算机应用第二章.doc

    管理系统中计算机应用第二章.doc 第二章 企业管理的信息化平台 一.单项选择题(本大题共30小题,每小题1分,共30分) 1.从理论上分析,传统的IP地址(IPv4)最多可以访问的用户数是( ) A ...

  6. C++实现输入两个字符串,从第一字符串中删除第二个字符串中所有的字符

    一定要注意一点就是: char* p是一个指针,根本没分配内存,他指向的"abc123ABC" 是只读的,不能改变,你在下面给他赋值肯定是错的 而char p[]是一个数组,已经分 ...

  7. 输入两个字符串,从第一个字符串中删除第二个字符串中所有的字符

    作者:小 琛 欢迎转载,请标明出处 题目: 输入两个字符串,从第一个字符串中删除第二个字符串中所有的字符 例如,输入str1为" They are students." 和str2 ...

  8. python编程—输入两个字符串,从第一字符串中删除第二个字符串中所有的字符

    题目描述: 输入两个字符串,从第一字符串中删除第二个字符串中所有的字符.例 如,输入"They are students."和"aeiou", 则删除之后的第一 ...

  9. Python Level 4 程序题:输入两个整数,倒序输出

    [创作平台] 肥猴编程 [问题描述] 输入两个整数,倒序输出 [输入格式] 输入两个整数,整数之间用一个空格隔开 [输出格式] 倒序输出这个两个整数,整数之间用一个空格隔开 [输入输出样例 1] [数 ...

最新文章

  1. html转为pdf工具,wkhtmltopdf html转pdf工具的使用
  2. 等宽矩阵(a)相乘a %*% x = b的逆运算solve(a,b)=x
  3. AVR系列之ADC转换
  4. python海伦公式_少儿编程Python第2课-if语句(海伦公式)
  5. Utils.toDip()的用法
  6. Modbus协议栈应用实例之一:Modbus RTU主站应用
  7. 天野学院易语言模拟脚本制作
  8. 爬取天眼查数据 附代码
  9. 2021年全国居住场所火灾死亡人数、受伤人数、火灾发生原因及造成直接财产损失分析[图]
  10. html链接屏蔽了,js屏蔽广告/屏蔽网站元素/屏蔽网站超链接
  11. python程序中每条语句以分号结尾,在Python程序中,每条语句末尾必须添加分号。...
  12. win10解除usb禁用_Win10专业版下安全禁用USB设备
  13. 计算机网络—— DNS和CDN那些事
  14. BGP(3)--路由策略
  15. 【JavaSE】继承 你拿下继承了吗?一篇让你轻松拿下,简明扼要,超详解
  16. ubuntu14.0开机guest账号禁用方法
  17. Python-Web前端概述
  18. RTSP协议网络摄像头如何实现内网到公网的无插件直播,同时支持微信扫码直播观看?
  19. 看门狗2服务器位置,看门狗2怎么爬进服务器 | 手游网游页游攻略大全
  20. 设计原则:单一职责原则

热门文章

  1. java实现 手写体识别_java手写体英文数字识别系统 识别预处理如何实现 采用什么语言比较好...
  2. linux系统模拟mac,在 Linux 的 KVM 上安装 Mac OS X Mavericks 虚拟机
  3. 移相全桥PWM发波要求
  4. ISCC2023全国大学生网络信息安全竞赛
  5. 【观察】AIoT赛道战鼓擂,生死破局谁才是真正的领跑者?
  6. 【技巧】Excel单元格中添加进度条
  7. 基于Python的复杂环境中车道线自动检测系统
  8. Obsidian利用插件Remotely-save实现超低成本全平台云笔记
  9. 定积分与不定积分的区别是什么
  10. AxureRP8实战手册-案例26(翻转:图片翻转效果)