Тема: порахувати скільки у рядку міститься слово bananas.

Доброго вечора, в університеті дали завдання зробити програму count_wors в якій потрібно порахувати скільки у рядку міститься слово bananas.
Я зробила код, але під час компіляції виникає помилка

#include <stdio.h>

int main(int argc, char *argv[]) {

    char banan[] = "bananas"; // змінна яка зберігає рядок який нам потрібно знайти
    int x = 0; // скільки на даний момент зпівпадінь ми знайшли
    int n = 7; // довжина рядка який ми шукаємо
    int res = 0; // скільки всього співпадінь ми знайшли

    FILE *fin = fopen("bananas.txt", "r");
    if (fin == NULL) {
        puts("File in error");
        return 1;
    }
    char c; // поточний символ
    while ((c = fgetc(fin)) != EOF) {
        if (c == banan[x]) {
            x++;
            if (x == n) {
                res++;
                x = 0;
            }
        }
        else {
            x = 0;
        }
    }
    fclose(fin);

    FILE *fout = fopen("bananas.txt", "w");
    if (fout == NULL) {
        puts("File out error");
        return 1;
    }
    fprintf(fout, "%i", res);
    fclose(fout);
    return 0;
}

Виписує що файл не знайдено. Можете підсказати що не так

2

Re: порахувати скільки у рядку міститься слово bananas.

А той файл з бананами хоч існує?

Подякували: leofun011

3 Востаннє редагувалося koala (15.12.2022 09:13:46)

Re: порахувати скільки у рядку міститься слово bananas.

Від модератора: питання винесене в окрему тему, більше не порушуйте Правила.

Під час компіляції чи під час виконання? Якщо компіляції - то щось не так із налаштуваннями компілятора. Якщо під час виконання - то правильно lucas-kane перепитує, чи той файл існує і де знаходиться.

Подякували: leofun011

4

Re: порахувати скільки у рядку міститься слово bananas.

dankovaleria06 написав:

під час компіляції виникає помилка

    FILE *fin = fopen("bananas.txt", "r");

файл не знайдено

Якщо помилка виникає в час виконаня (не в час компіляції), то текстовий файл треба розмістити в робочу директорію ("working directory", якщо будеш шукати в налаштуванях проєкта). Часто це директорія проєкта якщо стартувати debug, але не завжди.