Определение количества отрицательных чисел в файле - C (СИ)

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

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

Дан текстовый файл. В нём записано N кол-во чисел. Вычислить кол-во отрицательных чисел. Ребят, по сути лёгкая задача, но сижу уже туплю 3 часа, не могу связать всё это дело с файлом. Т.е если с клавы вводить, то всё нормально считает, а вот как из файла прочитать эти числа для меня нерешаемая уже как 3 часа загадка

Решение задачи: «Определение количества отрицательных чисел в файле»

textual
Листинг программы
#include <stdio.h>
#include <stdlib.h>
 
int main(int argc, char *argv[])
{
  FILE *fi;
  char *Fname="d:\\123.txt";
  int n=0,p;
  
  if ((fi=fopen(Fname,"r"))==NULL)
   {
      printf("Error by open\n");
      system("PAUSE");
      return 0;
   }    
  else
      while (fscanf(fi,"%d",&p)!=EOF)
        if (p < 0) n++;
  fclose(fi);
  printf("Negative numbers: %d\n",n);      
  
  system("PAUSE");  
  return 0;
}

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

  1. Подключение необходимых библиотек для работы с файлами и стандартными функциями
  2. Объявление переменных: файловый указатель fi, строка Fname с путем к файлу, переменная n для подсчета отрицательных чисел и переменная p для хранения прочитанного числа
  3. Проверка открытия файла. Если файл не открылся, выводится сообщение об ошибке и вызывается функция system(PAUSE), которая приостанавливает выполнение программы до нажатия клавиши PAUSE. Затем возвращается 0, чтобы завершить работу программы
  4. Если файл успешно открылся, выполняется цикл while, который продолжается, пока функция fscanf(fi,%d,&p) не вернет EOF. Это означает, что достигли конца файла. Внутри цикла проверяется, является ли текущее число отрицательным. Если это так, увеличивается счетчик n
  5. После окончания чтения файла, функция fclose(fi) закрывает файл, а функция printf(Negative numbers: %d\n,n) выводит количество найденных отрицательных чисел.
  6. Вызов функции system(PAUSE) для приостановки выполнения программы до нажатия клавиши PAUSE
  7. Возврат 0, чтобы завершить работу программы

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


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

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

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