最近又到了找工作的时间,所以想每天抽点时间出来对编程进行相关训练。C++字符串是一个很重要的知识点,采用STL、算法等C++优于C的方面,能够使问题解决起来更加轻松。以下程序都是自己写的,可能有些地方时间效率、空间效率不高,所以希望大家能够多多讨论交流,互相提升。

题目:删除子串

说明:给定两个形参str和substr,其中str为源字符串,substr为需要删除的子串,如果str中包含substr,则将其删除并输出新的字符串,否则输出源字符串。

void delete_substr(string &str,const string &substr)
{
     int m=0;    //用于作为是否找到substr的标识
     int flag=0;  //退出循环的标志,这是因为可能在str中存在多个substr
     while(flag==0)
     {
        m=str.find(substr);   //find函数的使用
        if(m<0)
        {
          flag=1;     //用于退出循环
          cout<<str;
        }
        else
       {
         str.erase(m,substr.size());   //目标是substr出现的地址,substr.size()表示从该地址开始需要删除的内容长度
       }
    }
}

int main()
{
   string str,substr;
   getline(cin,str);
   getline(cin,substr);
   delete_substr(str,substr);
}

如果存在相关问题,希望大家可以指点一二,谢谢!

转载于:https://www.cnblogs.com/elninohjh/p/4642189.html

C++ 字符串编程训练1相关推荐

  1. C++ 字符串编程训练2

    今天讲的一道习题是很经典的约瑟夫环问题,其实lz对于链表的某些操作还不是太懂,所以在程序中有些地方还不太看得懂,这里借鉴的网上的做法,还请大牛能够解答我的疑惑,谢谢! 标题:约瑟夫环 说明:约瑟夫环是 ...

  2. c语言测试程序题有难度的,C语言编程训练、测试题库.doc

    您所在位置:网站首页 > 海量文档 &nbsp>&nbsp计算机&nbsp>&nbspC/C++资料 C语言编程训练.测试题库.doc162页 本文档 ...

  3. 实验七 字符串 编程题 1. 飞来飞去

    实验七 字符串 编程题 1. 飞来飞去 [问题描述] 松雅作为一位商业人士,经常需要在天津和深圳之间飞来飞去,因为在这两个城市,她有多间旅馆.当然在冬天她更愿意从天津飞到深圳,因为深圳更暖和.她实在是 ...

  4. 类的构造方法编程训练2—设置信用卡密码

    编程训练4 [训练4]设置信用卡密码,创建信用卡类,有两个成员变量,分别是卡号和密码,如果用户开户时没有设置初始密码,则使用 123456作为初始密码.设计两种不同的方法,分别用于设置密码和用户未设置 ...

  5. c语言课本第八章答案,c语言第八章字符串编程答案

    中国石油大学c语言编程个人答案,包括:字符转换,合并字符串,删除重复字符,删除指定字符,[设计型]8.5 单词有多少,8.6 在指定位置插入字符串,[探索性]8.8 大数相加,[研究创新性]8.7 Y ...

  6. java 字符串编程题_Java编程题——在一个字符串中查找第一个非重复的字符

    编写一个Java程序来查找一个字符串中第一个非重复的字符,这是在编程测试中很常见的一个问题,因为字符串处理在程序员面试中是一个普遍的话题.面试前最好是准备好一些熟知的编程问题,例如使用递归反转字符串, ...

  7. Python 编程训练2:二维向量

    目标 定义一个 Python 类名为 V2,用于表示二维向量,支持下列向量运算: 由两个实数创建一个二维向量:如:v = V2(1.1, 2.2) 将一个向量转换为字符串形式(使用__str__方法) ...

  8. EduCoder-Web程序设计基础-web编程训练-html5-图像的运用-第2关:带插图的新媒体新闻网页的设计

    目录 任务描述 相关知识 测试说明 代码示例 任务描述 本关任务:编写一个带有插图的新闻网页. 相关知识 为了完成本关任务,你需要掌握:img标签及其属性. 图像标签的常用属性 img标签是单表签,行 ...

  9. shell 字符串编程--Bash测试和比较函数

    原文地址:http://hi.baidu.com/olii/blog/item/d844b0cb72fe0919bf09e62a.html 最近在学习bash,保存备用. Linux技巧:Bash测试 ...

最新文章

  1. php的json格式
  2. 高性能NIO框架Netty入门篇
  3. 算法----------字符串相乘(Java 版本)
  4. CSDN博客文章写作技巧
  5. Four-tuples (2018山东省省赛 容斥定理)
  6. linux iconv
  7. 设计海量key-value数据的存储查询模块
  8. VTK:几何对象之OpenVRCube
  9. flash 编程技巧应用 原创
  10. 简单的脚本控制面试题
  11. override和overload的小笔记
  12. 当自己购买的基金已经超过自己的心里的收益后会选择继续还是退出?
  13. java中地图查询比较慢,在java中缓慢的地图
  14. 现代通信原理5.1:信号的希尔伯特变换
  15. PSCAD v4.21-ISO
  16. 超级搜索术-思维导图
  17. 【jQuery】jQuery 教程
  18. 微信 jssdk 看着文档简单总结
  19. 安卓设备的Socket网络通讯例程 (A2) -UI界面适配
  20. 70后.net老猿,尚能饭否?

热门文章

  1. JVM调优:指定垃圾回收器组合
  2. 请说明一下web.xml文件中可以配置哪些内容?
  3. MySQL优化之查询缓存(mysql8官方已经废弃这个功能)
  4. MySQL查看及修改字段的字符集
  5. 【软考-软件设计师】程序语言的基本概念
  6. jQuery easyUI--zTree属性菜单
  7. 关于C++ Qt项目实现最简单Http Server的踩坑记录
  8. Qt for Android 自定义启动页(解决启动页拉伸的问题)
  9. 计算任何一天是星期几的几种算法
  10. 【小米校招笔试】给定一些线段,线段有起点和终点,求这些线段的覆盖长度,重复的部分只计算一次