Вывести квадратную матрицу указанного пользователем размера - C (СИ)

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

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

Помогите пожалуйста составить программу, которая печатает на экране квадратную матрицу, размерность которой вводит пользователь с клавиатуры. 1 1 . . . . 1 2 2 . . . 2 3 3 3 . 3 . . . . . n . . . 0

Решение задачи: «Вывести квадратную матрицу указанного пользователем размера»

textual
Листинг программы
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. int main()
  5. {
  6.     int n;
  7.     int **mas;
  8.     int temp;
  9.     scanf("%d",&n);
  10.     temp = n;
  11.     mas = (int **) calloc(n,sizeof(int*));
  12.     for (int i = 0; i < n; i++)
  13.         mas[i] = (int *) calloc(n,sizeof(int));
  14.    
  15.     for (int i = 0; i < n; i++)
  16.     {
  17.         for(int j = n - i - 1; j >= 0; j--)
  18.             mas[i][j] = i + 1;
  19.     }
  20.        
  21.     for (int i = 0; i < n; i++)
  22.     {
  23.         for (int j = 0; j < n; j++)
  24.             printf("%d\t",mas[i][j]);
  25.         printf("\n");
  26.     }
  27.    
  28.     for (int i = 0; i < n; i++)
  29.         free (mas[i]);
  30.     free (mas);
  31. }

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

В этом коде:

  1. Объявлены переменные:
    • n - переменная для хранения размера матрицы, который пользователь должен ввести;
    • mas - это указатель на массив указателей, который будет использоваться для хранения адресов строк матрицы;
    • temp - временная переменная для хранения значения переменной n.
  2. Запрашивается у пользователя размер матрицы с помощью функции scanf().
  3. Выделяется память под матрицу с помощью функции calloc(). Для каждой строки матрицы выделяется память под массив n элементов типа int.
  4. В цикле заполняются все строки матрицы. Для каждой строки в цикле for заполняются элементы, начиная с конца строки, значениями от 1 до n.
  5. В цикле for выводятся все элементы матрицы на экран через табуляцию.
  6. Освобождается память, выделенная под каждую строку матрицы, с помощью функции free().
  7. Освобождается память, выделенная под массив указателей mas, с помощью функции free().

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


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

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

6   голосов , оценка 4.333 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы