/*

问题 1487: [蓝桥杯][算法提高VIP]不同单词个数统计

时间限制: 1Sec 内存限制: 128MB 提交: 53 解决: 16
题目描述
编写一个程序,输入一个句子,然后统计出这个句子当中不同的单词个数。例如:对于句子“one  little  two  little  three  little  boys”,总共有5个不同的单词:one,  little,  two,  three,  boys。
说明:
(1)由于句子当中包含有空格,所以应该用gets函数来输入这个句子;
(2)输入的句子当中只包含英文字符和空格,单词之间用一个空格隔开;
(3)不用考虑单词的大小写,假设输入的都是小写字符;
(4)句子长度不超过100个字符。
输入
输入只有一行,即一个英文句子。
输出
输出只有一行,是一个整数,表示句子中不同单词的个数。
样例输入

one  little  two  little  three  little  boys

样例输出

5

*/
#include <iostream>
#include <sstream>
#include <set>
#include<cstdio>
using namespace std;
int main() {
    string str;
    char c[101];
    set<string> arr;
    gets(c);        //读到数组
    str=c;          //转化为string
    istringstream ss(str); //利用string流,自动去除空格
    string word;
    while(ss>>word) {
        arr.insert(word);
    }
        cout << arr.size()<< endl;
    return 0;

}

 

有问题请下方评论,转载请注明出处,并附有原文链接,谢谢!如有侵权,请及时联系。