Hỏi về lỗi của chương trình đếm số từ và số câu trong một đoạn văn

Em đang làm một bài tập về file với yêu cầu là đếm số từ và số câu trong một đoạn văn nhưng kết quả không như ý muốn, mong mọi người giúp em với ạ !

#pragma once
#include <iostream>
#include <string>
#include <vector>
#include <fstream>
using namespace std;

int main()
{
	vector<vector<string>> Cau;
	ifstream filein;
	filein.open("D:\Test.txt", ios::in);
	if (filein.fail())
		cout << "Failed to open this file!" <<endl;
	else
	{
		vector<string> Tu;
		string Tutemp;
		char charin;
		while (!filein.eof())
		{
			fflush(stdin);
			filein >> charin;
			if (charin == '.' || charin == '?' || charin == '!')
			{
				Cau.push_back(Tu);
				Tu.clear();
			}
			else
			{
				if (charin != ' ')
					Tutemp += charin;
				else
				{
					Tu.push_back(Tutemp);
					Tutemp = "";
				}
			}
		}
		
		filein.close();
	}
	ofstream fileout;
	fileout.open("D:\Result.txt", ios::out);
		fileout << Cau.size()-1 << endl;  //Xuat so cau
	for (unsigned int i = 0; i < Cau.size() - 1; i++)
			fileout << Cau[i].size() << endl; //Xuat so tu moi cau

	fileout.close();

	system("pause");
	return 0;
}

Kết quả em chỉ ra được dòng đầu là số câu ( đúng ) nhưng những dòng sau là số từ mỗi câu thì toàn là 0 @@

Khai báo, nhưng không dùng!

Biến Tu có được gán giá trị đâu.
Gán cho Tutemp, nhưng lại Cau.push_back(Tu);.

1 Like
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?