Как записать массив в файл? - C (СИ)

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

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

#include <stdio.h>
#include<windows.h>
#include <string.h>
 int main(void)
 { 
      double x[600]; /* объявление массива 100 целых */
  int t;
     FILE *fp;
 
if ((fp = fopen("test.txt","w"))==NULL) {
  printf("Ошибка при открытии файла.\n");
  exit(1);
}

  for(t=0; t<600; ++t)
   x[t] = 103501 + t;

  for(t=0; t<600; ++t) 
  printf("%6.0f ", x[t]);
   system("pause");  
}

Решение задачи: «Как записать массив в файл?»

textual
Листинг программы
#include <stdio.h>
#include<windows.h>
#include <string.h>
 int main(void)
 { 
      double x[600]; 
  int t;
     FILE *fp;
 
if ((fp = fopen("test.txt","w"))==NULL) {
  printf("ГЋГёГЁГЎГЄГ* ïðè îòêðûòèè ГґГ*éëГ*.\n");
  exit(1);
}
 
 
  for(t=0; t<600; ++t)
   x[t] = 103501 + t;
 
  
  for(t=0; t<600; ++t) {
  printf("%6.0f ", x[t]);
    fwrite(&x[t], sizeof(float), 1, fp);
}
  fclose(fp);
   system("pause");
 
 
     return 0;
}

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

  1. Объявление переменных:
    • double x[600]; - объявление массива x, который содержит 600 элементов типа double.
    • int t; - объявление переменной t, которая будет использоваться в циклах.
    • FILE *fp; - объявление указателя на файл, который будет использоваться для записи данных в файл.
  2. Открытие файла test.txt в режиме записи: if ((fp = fopen(test.txt,w))==NULL) { printf(Не удалось открыть файл для записи.\n); exit(1); }
  3. Заполнение массива x: for(t=0; t<600; ++t) x[t] = 103501 + t;
  4. Запись данных из массива x в файл test.txt: for(t=0; t<600; ++t) { printf(%6.0f, x[t]); fwrite(&x[t], sizeof(float), 1, fp); }
  5. Закрытие файла: fclose(fp);
  6. Вывод сообщения о завершении работы программы и ожидание нажатия клавиши: system(pause);
  7. Возврат значения 0, что означает успешное завершение работы программы.

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


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

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

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