Отобразить главную и побочную диагонали симметрично относительно вертикальной оси - C (СИ)
Формулировка задачи:
Заповнити матрицю випадковими числами. Відобразити головну та побічну діагоналі симетрично відносно вертикальної осі.
Решение задачи: «Отобразить главную и побочную диагонали симметрично относительно вертикальной оси»
textual
Листинг программы
#include <stdlib.h> #include <stdio.h> #include <time.h> int main() { int i,n; int* m; printf("Matrix size ? "); scanf("%d",&n); m=(int*)malloc(sizeof(*m)*n*n); srand( (unsigned)time( NULL ) ); for(i=0; i<(n*n); i++) m[i]=rand(); printf("\nThe main diagonal :"); for(i=0; i<n; i++) printf(" %d",m[i+i*n]); printf("\nThe reversed incidental diagonal :"); for(i=0; i<n; i++) printf(" %d",m[(n-i-1)+i*n]); free(m); printf("\n"); return 0; }
Объяснение кода листинга программы
В этом коде:
- Объявлены переменные:
i
- циклn
- размер матрицыm
- указатель на первый элемент матрицы
- Задается размер матрицы с помощью функции
scanf()
. - Выделяется память под матрицу с помощью функции
malloc()
. - Инициализируются случайные числа с помощью функции
rand()
. - Выводится главная диагональ матрицы с помощью цикла
for
и функцииprintf()
. - Выводится побочная диагональ матрицы с помощью цикла
for
и функцииprintf()
. - Освобождается память с помощью функции
free()
. - Возвращается 0, чтобы указать, что программа успешно завершилась.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д