华不注 2022-01-26 19:50 采纳率: 91.7%
浏览 90
已结题

一本通 1406 单词替换

输入一个字符串,以回车结束(字符串长度<=100)。该字符串由若干个单词组成,单词之间用一个空格隔开,所有单词区分大小写。现需要将其中的某个单词替换成另一个单词,并输出替换之后的字符串。
输入描述:
多组数据。每组数据输入包括3行,
第1行是包含多个单词的字符串 s,
第2行是待替换的单词a,(长度<=100)
第3行是a将被替换的单词b。(长度<=100)
输入:
You want someone to help you
You
I
输出:
I want someone to help you

img

请问划红线的到底错在哪里了,最近只要用到string就出这个错误。

  • 写回答

2条回答 默认 最新

  • _GX_ 2022-01-26 20:31
    关注
    #include <iostream>
    #include <string>
    
    int main()
    {
        std::string string, word1, word2;
        std::getline(std::cin, string);
        std::getline(std::cin, word1);
        std::getline(std::cin, word2);
        std::string::size_type pos = 0;
        while ((pos = string.find(word1, pos)) != std::string::npos)
            string.replace(pos, word1.length(), word2);
        std::cout << string << std::endl;
        return 0;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 2月3日
  • 已采纳回答 1月26日
  • 创建了问题 1月26日

悬赏问题

  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
  • ¥50 如何openEuler 22.03上安装配置drbd
  • ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
  • ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)
  • ¥15 Windows11, backspace, enter, space键失灵