maxword3.cpp

来自「C++&datastructure书籍源码,以前外教提供现在与大家共享」· C++ 代码 · 共 49 行

CPP
49
字号
#include <iostream>
#include <string>
using namespace std;
#include "worditer.h"
#include "stringset.h"
#include "prompt.h"
#include "statusbar.h"

// 4/23/99, find most frequently occurring word using stringsets/iterators

int main()
{
    int maxOccurs = 0;
    int wordsRead = 0;
    string word,maxWord; 
    StringSet wordSet;
    StatusCircle circle(50);
 
    string filename = PromptString("enter file name: ");
    WordStreamIterator ws;
    ws.Open(filename);

    for(ws.Init(); ws.HasMore(); ws.Next())
    {    wordSet.insert(ws.Current());
    }
    cout << "read " << wordSet.size() << " different words" << endl;
    
    StringSetIterator ssi(wordSet);
    for(ssi.Init(); ssi.HasMore(); ssi.Next())
    {   circle.update(wordsRead/double(wordSet.size())*100);
        int count = 0;
        wordsRead++;
        word = ssi.Current();
        for(ws.Init(); ws.HasMore(); ws.Next())
	    {   if (ws.Current() == word)
		    {   count++;
		    }
        }
        if (count > maxOccurs)
        {   maxOccurs = count;
	        maxWord = word;
        }
    }
    cout << endl << "word \"" << maxWord << "\" occurs "
	     << maxOccurs << " times" << endl;
    
    return 0;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?