Найдите количество элементов в массиве состоящим из вещественных чисел - C (СИ)

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

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

Найдите количество элементов в массиве А[1..10] состоящим из вещественных чисел, абсолютная величина которых больше 7. Входной файл (input.txt) будет содержать 10 вещественных чисел, по одному в каждой строке. Выходной файл должен содержать единственное число - ответ. Язык С

Решение задачи: «Найдите количество элементов в массиве состоящим из вещественных чисел»

textual
Листинг программы
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
 
#define MAXLINE 100 /* максимальный размер вводимой строки */
 
 
 
 
int main()
{
    char str[MAXLINE];
    unsigned short q=0;
 
    FILE* fp = fopen("D:\list.txt", "r"); // вместо "D:\list.txt" вставьте свой путь, r - read mode
        if(!fp) {
                perror("File opening failed");
                return EXIT_FAILURE;
                }
 
  
        while(!feof(fp)) {
     
            if (fabs( atof(fgets(str,80,fp))) > 7) q++;
 
             if (ferror(fp)){
                    puts("I/O error when reading");
                    return -1;
            }
        }
             fclose(fp);
 
             printf("\n q= \%d",q);
}

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

Вывод кода:

  1. Объявлены необходимые библиотеки
  2. Определено максимальное количество символов в строке
  3. Объявлены переменные: строка для чтения и счетчик
  4. Открывается файл для чтения
  5. Проверяется успешность открытия файла
  6. Если файл не открылся, выводится сообщение об ошибке и возвращается код завершения
  7. Запускается цикл чтения файла до достижения конца файла
  8. Внутри цикла проверяется каждая строка на предмет наличия в ней числа, которое берется в расчет (больше 7)
  9. Если при чтении файла произошла ошибка, выводится сообщение об ошибке и возвращается код завершения
  10. Закрывается файл
  11. Выводится количество найденных чисел Пояснение к коду:
  12. Код использует функцию fopen для открытия файла. Эта функция возвращает указатель на файл, если файл успешно открыт, иначе возвращает NULL.
  13. Проверка !feof(fp) в цикле while гарантирует, что цикл будет выполняться до тех пор, пока не достигнут конец файла.
  14. Функция fgets используется для чтения строки из файла. Эта функция считывает строку, оставляя символ новой строки в конце строки.
  15. Функция atof используется для преобразования строки в число с плавающей точкой.
  16. Функция ferror используется для проверки наличия ошибок при чтении файла.
  17. Функция printf используется для вывода количества найденных чисел.

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


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

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

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