写一个输入未知行数每行若干个汉字的文本,去除重复汉字后将剩下的逐个输出的c++代码
时间: 2024-03-18 19:40:39 浏览: 75
输出全部汉字的C++程序
4星 · 用户满意度95%
可以使用 C++ 来实现这个功能。以下是一个示例代码:
```c++
#include <iostream>
#include <unordered_set>
#include <string>
using namespace std;
int main() {
unordered_set<char> unique_chars; // 定义一个集合用于存储出现过的汉字
// 循环读取每一行输入,并逐个处理其中的汉字
string line;
while (getline(cin, line)) {
for (auto c : line) {
if (isalpha(c) && isalnum(c)) { // 判断当前字符是否为汉字
if (unique_chars.find(c) == unique_chars.end()) { // 如果当前汉字没有出现过,则输出并加入集合
cout << c << endl;
unique_chars.insert(c);
}
}
}
}
return 0;
}
```
这个代码使用了 C++11 中的 `unordered_set` 来存储出现过的汉字,以达到去重的目的。对于每一行输入,它会遍历其中的每一个字符,并判断是否为汉字。如果是汉字且没有出现过,则输出并加入集合中。这样可以保证输出的汉字都是不重复的。
阅读全文