c++ – Aufeinanderfolgende Vorkommen von Wörtern aus der Eingabe finden und zählen
给我你的怀抱
给我你的怀抱 2017-05-16 13:23:50
0
2
693

Die Aufgabe besteht darin, mehrere Zeichenfolgenobjekte aus der Standardeingabe zu lesen und aufeinanderfolgende wiederholte Wörter zu finden. Wenn die Eingabe beispielsweise lautet:
wie jetzt, jetzt, jetzt, Himmel, Kuh
, sollte 3 ausgegeben werden (erscheint jetzt dreimal hintereinander)

#include "iostream"
#include "string"

using namespace std;

int main() {
    int result = 0;
    int temp = 0;

    string word = "";
    string tempWord = "";

    cout << "Enter a bunch of words: " << endl;
    while (cin >> tempWord) {
        if (word == "") {
            word = tempWord;
            ++temp;
        }
        else {
            if (tempWord == word) {
                ++temp;
            }
            else {
                if (temp > result) {
                    result = temp;
                    temp = 0;
                }
            }
        }
    }
    cout << result << endl;

    return 0;
}

Das Problem ist jetzt jedoch, dass die Ausgabe immer 0 ist. Ich habe den Fehler selbst gefunden, aber ich habe das Gefühl, dass an der Logik nichts falsch ist. Bitte geben Sie mir einen Rat, danke ~

给我你的怀抱
给我你的怀抱

Antworte allen(2)
为情所困
if (temp > result)
{
    result = temp;
    temp = 0;
    
    //!
    word = "";
}

word也要置空。

为情所困

eg: 只输入一个单词 很多单词

考虑全面

#include<iostream>
#include<string>
using namespace std;
int main() {
    int result = 0;
    int temp = 0;

    string word = "";
    string tempWord = "";

    cout << "Enter a bunch of words: " << endl;
    while (cin >> tempWord) {
        if (word == "") {
            word = tempWord;
            ++temp;
            if (temp > result) {
                result = temp;
        }

        }
        else {
            if (tempWord == word) {
                ++temp;
                if (temp > result) {
                       result = temp;
            }
            }
            else {    
        word = tempWord;
        temp = 1;
            }
        }
    }
    cout << result << endl;

return 0;
}
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!