Как подсчитать конкретные слова в текстовом файле
количество строк и конкретных слов, присутствующих в текстовом файле, должно быть подсчитано. я не смог сосчитать конкретные слова, присутствующие в текстовом файле. может ли кто-нибудь помочь мне с этим? Заранее спасибо.
Что я уже пробовал:
#include <stdio.h> #include <string.h> int main() { FILE *fp; char filename[100]; char ch; int linecount; linecount = 0; printf("Enter a filename :"); gets(filename); fp = fopen(filename,"r"); int match( char *word ) { char *targets[] = {"auto", "the", ""}; char **t = targets; while ( *t[0] != '\0' && strcmp(*t, word)) t++; return *t[0] != '\0'; } if ( fp ) { while ((ch=getc(fp)) != EOF) { if (ch == '\n') { ++linecount; } } if (linecount > 0) { ++linecount; } } else { printf("failed to open the file\n"); } printf("Lines : %d \n", linecount); return(0); }
Rick York
Есть ли у вас определение того, что составляет слово? Обычно существуют разделители, которые определяют границы для слова. Это будут такие вещи, как пробелы и знаки препинания. Учитывая, что у вас есть определенные разделители, вы можете найти функцию strtok полезной. У меня есть.
Maciej Los
Мой виртуальный 5!