Найти количество слов, состоящих из трех и более букв - C (СИ)

Узнай цену своей работы

Формулировка задачи:

а етот код как переделать из C++ в C
#include <iostream>
#include <string>
#include<fstream>
using namespace std;

int main()
{
 
    ifstream f("file.txt");
    string word;
    int countOfLongWords=0;
 
    while (!f.eof())
    {
        f >> word ;
        if ((int)word[0] == 97 || (int)word[0] == 101 || (int)word[0] == 105 || (int)word[0] == 111
            || (int)word[0] == 117)
        {
            cout << word << " ";
            if (word.size() > 3) countOfLongWords++;
        }
    }
 
    cout << endl << endl << "Count of words, longer than 3 symols is equal to " << countOfLongWords << endl << endl;
 
    //system("pause");

    return 0;
 
}

Решение задачи: «Найти количество слов, состоящих из трех и более букв»

textual
Листинг программы
#include <stdio.h>
#include <stdlib.h>
 
#define string_len 4
int main()
{
 
    FILE *filep;
    char *word;
    int countOfLongWords=0;
    
    word = malloc(string_len);
 
    filep = fopen("file.txt","w+");
 
    while (fgets(word,string_len,filep)!=NULL)
    {
        
        if (((int)word[0] == 97) || ((int)word[0] == 101) || ((int)word[0] == 105) || ((int)word[0] == 111)
            || ((int)word[0] == 117))
        {
            printf("%s\n",word);
            if (sizeof(*word) > 3) countOfLongWords++;
        }
    }
 
    printf("Count of words , longer than 3 symols is equal to %d",countOfLongWords);
 
    free(word);
    fclose(filep);
    return 0;
 
}

Объяснение кода листинга программы

В данном коде происходит подсчет количества слов в файле, длина которых больше трех символов. Список действий следующий:

  1. Включаются необходимые заголовочные файлы для работы с файлами и памятью.
  2. Определяется размер строки (в данном случае 4 символа).
  3. Открывается файл с помощью функции fopen. Режим w+ означает открытие файла для чтения и записи.
  4. Выделяется память под строку с помощью функции malloc.
  5. Начинается цикл, который будет выполняться до тех пор, пока не закончится файл (до достижения конца строки).
  6. Проверяется условие, что первая буква слова является одной из заданных (a, e, i, o, u, A, E, I, O, U).
  7. Выводится на экран найденное слово.
  8. Увеличивается счетчик, если длина слова больше 3 символов.
  9. Закрывается файл и освобождается память** с помощью функций fclose и free.
  10. Выводится на экран количество слов, длина которых больше 3 символов.
  11. Завершается программа с возвратом 0.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 3.4 из 5
Похожие ответы