Сформировать массив, в котором каждому элементу будет присвоено значение следующего за ним - C (СИ)
Формулировка задачи:
В файле задан массив из девяти элементов. В новом файле сформировать массив, в котором каждому элементу будет присвоено значение следующего за ним (соседнего справа). Последнему элементу присвоить значение первого
Решение задачи: «Сформировать массив, в котором каждому элементу будет присвоено значение следующего за ним»
textual
Листинг программы
FILE *in = fopen("1", "r"); FILE *out = fopen("2", "w"); int i, numbers[9]; for(i=0;i!=9;++i) fscanf(in, "%d", &numbers[i]); for(i=1;i!=10;++i) fprintf(out, "%d ", numbers[(i%9)]); fclose(in); fclose(out);
Объяснение кода листинга программы
- Мы открываем файл для чтения (в режиме
r
) с помощью функции fopen и сохраняем его указатель в переменной типа FILE в переменнойin
. - Мы открываем файл для записи (в режиме
w
) с помощью функции fopen и сохраняем его указатель в переменной типа FILE в переменнойout
. - Мы объявляем массив типа int с 9 элементами и инициализируем его нулями. Массив называется
numbers
. - Мы считываем 9 целых чисел из файла, используя функцию fscanf и записываем их в элементы массива
numbers
. - Мы записываем числа из массива
numbers
в файл, используя функцию fprintf. Мы начинаем с 1-го элемента массива и записываем числа до тех пор, пока не достигнем 10-го элемента массива. Каждое число записывается вместе со пробелом в конце. - Мы закрываем файл
in
с помощью функции fclose. - Мы закрываем файл
out
с помощью функции fclose.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д