Считать матрицу из файла - C (СИ)
Формулировка задачи:
Подскажите, пожалуйста, как считать матрицу 6 х 2 из файла a.txt и как эту же матрицу вывести в файл b.txt
Решение задачи: «Считать матрицу из файла»
textual
Листинг программы
#include <stdio.h> int main() { const int rows = 2; const int cols = 6; int matrix[rows][cols]; int i, j; FILE *out; FILE *file = fopen("a.txt", "r"); out = fopen("b.txt", "w"); for (i = 0; i < rows && !feof(file) && !ferror(file); i++) { for (j = 0; j < cols && !feof(file) && !ferror(file); j++) { if (!fscanf(file, "%d", &matrix[i][j])) { fprintf(stderr, "Error reading file"); } fprintf(out, "%d ", matrix[i][j]); } fputc('\n', out); } return fclose(file) && fclose(out); }
Объяснение кода листинга программы
В этом коде:
- Задаются размеры матрицы: 2 строки и 6 столбцов.
- Создается двумерный массив
matrix
размером 2x6. - Открывается файл
a.txt
для чтения и файлb.txt
для записи. - Запускается цикл по всем элементам матрицы.
- Для каждого элемента сначала проверяется успешность чтения из файла
a.txt
, - Если чтение прошло успешно, то значение записывается в файл
b.txt
и выводится на экран. - После каждой строки матрицы выводится символ новой строки.
- После завершения чтения всех элементов закрываются файлы
a.txt
иb.txt
. - Возвращается значение, являющееся результатом закрытия файлов.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д