|
Главная | Правила | Регистрация | Дневники | Справка | Пользователи | Календарь | Поиск | Сообщения за день | Все разделы прочитаны |
|
Опции темы | Опции просмотра |
01.12.2017, 20:20 | #1 (permalink) |
Новичок
Регистрация: 01.12.2017
Сообщений: 1
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Нужно подсчитать количество вхождений определённого слова
Код:
#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» Спасибо за внимание и советы! |
01.12.2017, 20:20 | |
Helpmaster
Member
Регистрация: 08.03.2016
Сообщений: 0
|
Люди уже создавали что то подобное, так что можете почитать Подсчитать количество слов — правильных идентификаторов языков Си или Паскаль Подсчитать количество выполнений каждого шага алгоритма Подсчитать количество точек пересечения прямых СИ. Удалить слова, которые содержат все повторяющиеся буквы первого слова |
21.12.2017, 03:09 | #2 (permalink) |
Member
Регистрация: 21.12.2017
Сообщений: 35
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 717
|
Не надо считать слова и тем более, не надо писать проверку наличия файла. Начните просто с алгоритма поиска слова в потоке. Читаете посимвольно и сверяете символ с указателем на символ в слове. Изначально указатель ставите на начало слова, с каждым совпадением - продвигаете указатель по слову к концу. Когда указатель достигнет конца слова - слово "нашлось" и увеличиваете счётчик на единицу. Если символ не совпал или достигнут конец слова, указатель возвращаете к началу.
|
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
Метки |
c/linux |
Опции темы | |
Опции просмотра | |
|
|