Технический форум

Технический форум (http://www.tehnari.ru/)
-   Помощь студентам (http://www.tehnari.ru/f41/)
-   -   Нужно подсчитать количество вхождений определённого слова (http://www.tehnari.ru/f41/t256895/)

boxerwba 01.12.2017 20:20

Нужно подсчитать количество вхождений определённого слова
 
Код:

#include <stdio.h>
#include <ctype.h>
#include <string.h>
#include <stdlib.h>

int main()
{  FILE *myfile;

        int k=0;
        char name[100];
        char word[20];

        printf("Enter name of file: ");
        scanf("%s", name);
        if ((myfile = fopen(name, "r")) == NULL)
        {
        puts ("File is not found");
        exit(0);
        }


        printf("Enter word: ");
        scanf("%s", word);

      return 0;
    }

Помогите дописать код
нужно посчитать количество слова, которое записано в переменной «word», в файле «name»
например ввели слово «dog»
посчитать сколько раз оно повторяеться в файле «new»

Спасибо за внимание и советы!

Студент-2000 21.12.2017 03:09

Не надо считать слова и тем более, не надо писать проверку наличия файла. Начните просто с алгоритма поиска слова в потоке. Читаете посимвольно и сверяете символ с указателем на символ в слове. Изначально указатель ставите на начало слова, с каждым совпадением - продвигаете указатель по слову к концу. Когда указатель достигнет конца слова - слово "нашлось" и увеличиваете счётчик на единицу. Если символ не совпал или достигнут конец слова, указатель возвращаете к началу.


Часовой пояс GMT +4, время: 17:05.

Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.