题解 UVA10815 【Andy's First Dictionary】
Morning_Glory
2018-06-30 17:00:49
```c
//这道题其实可以用STL中的set(集合)来解决
#include <iostream>
#include <cctype>
#include <cstdio>
#include <cstring>
#include <set>
using namespace std;
set<string>p;
set<string>::iterator iter;//迭代器
string s;
char ch;
int main ()
{
while ((ch=getchar())!=EOF){//一个一个读取
if (!isalpha(ch))continue;//如果是空格或者符号就不看
while (isalpha(ch)){
ch=tolower(ch);//将读到的字母转为小写
s+=ch;//s后面加入ch
ch=getchar();
}
p.insert(s);//给集合中添加元素
s.clear();//s清空
}
for (iter=p.begin();iter!=p.end();iter++)
cout<<*iter<<endl;//由于set会自动按照字典序排序,所以只要顺序输出就好了
return 0;
}
```