[英]Turbo C++ program that's counting occurrences of a string in data file is always (incorrectly) returning zero.
我用 Turbo C++ 編寫了一個程序,計算數據文件中字符串“HOTEL”的出現次數。 但它總是給我 0 值。我做錯了什么?
//PROGRAM TO COUNT NO OF OCCURENCES OF A STRING IN A DATA FILE
#include<fstream.h>
#include<conio.h>
#include<string.h>
void main()
{
ifstream ifs;
ifs.open("DATA.DOCX",ios::in|ios::nocreate);
if (!ifs)
{
cout<<"SORRY! FILE DOES NOT EXIST";
}
else
{
int count=0;
char compare[20];
while (ifs.eof())
{
ifs>>compare;
if (strcmp(compare,"HOTEL")==0)
count++;
}
ifs.close();
cout<<"NO OF OCCURENCE OF STRING 'HOTEL' = "<<count;
}
getch();
}
正如提問者所說,問題是文件名是“DATA.DOCX”,需要更改為“DATA.TXT”。
//PROGRAM TO COUNT NO OF OCCURENCES OF A STRING IN A DATA FILE
#include<fstream.h>
#include<conio.h>
#include<string.h>
void main()
{
ifstream ifs;
ifs.open("DATA.TXT",ios::in|ios::nocreate);
if (!ifs)
{
cout<<"SORRY! FILE DOES NOT EXIST";
}
else
{
int count=0;
char compare[20];
while (ifs.eof())
{
ifs>>compare;
if (strcmp(compare,"HOTEL")==0)
count++;
}
ifs.close();
cout<<"NO OF OCCURENCE OF STRING 'HOTEL' = "<<count;
}
getch();
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.