用c++语言检测字符串,按字符串原有的字符顺序进行输出,重复出现并靠后的字母不输出

输入示例:
abcdefgabc
输出示例:
abcdefg
先放出代码

#include #include using namespace std; int main() { string str; //定义一个字符串 cin >> str; //输入一个字符串 for (int i = 0; i=0; o--)//检测字符是否重复 { if (str[o] == str[i]) { value = https://www.it610.com/article/1; break; } } if (value == 0) { cout << str[i]; } } }

代码没什么好说的,
最重点的部分就是下面一段代码
for (int o = i - 1; o>=0; o--) { if (str[o] == str[i]) { value = https://www.it610.com/article/1; break; } } if (value == 0) { cout << str[i]; } }

怎么来判断字符串一个字符在字符串中重复出现且不是第一个出现呢?
我的想法就是:
根据这个字符串所在的位置,向前遍历字符串
若前面字符串存在同样的字符则不输出此字符,若不存在,则输出。
【用c++语言检测字符串,按字符串原有的字符顺序进行输出,重复出现并靠后的字母不输出】

    推荐阅读