[Solved] 3-3. Write a program to count how many times each distinct word appears in its input


If you can’t use std::map, you can associate the word with the frequency:

struct Info
{
  std::string word;
  int         frequency;
};

//...
std::vector<Info> database;
//...
std::string word;
while (std::cin >> word)
{
    // Find the word:
    const size_t length = database.size();
    for (unsigned int i = 0; i < length; ++i)
    {
      if (database[i].word == word)
      {
         database[i].frequency++;
         break;
      }
    }
    if (i >= length)
    {
        Info new_info{word, 0};
        database.push_back(new_info);
    }
}

The above code also shows that you should only insert words that are duplicates. No need to input all the words, then do the processing.

2

solved 3-3. Write a program to count how many times each distinct word appears in its input