Вычислить значение наименьшего элемента для каждого столбца матрицы - C (СИ)
Формулировка задачи:
Вычислить значение наименьшего элемента для каждого столбца массива N <= 7, M <= 5(массив должен быть реализован через malloc)
Решение задачи: «Вычислить значение наименьшего элемента для каждого столбца матрицы»
textual
Листинг программы
- #include <stdio.h>
- #include <stdlib.h>
- #include <malloc.h>
- int main()
- {
- int *a;
- int i, j, n, m;
- system("chcp 1251");
- system("cls");
- printf("Введите количество строк: ");
- scanf("%d", &n);
- printf("Введите количество столбцов: ");
- scanf("%d", &m);
- a = (int*) malloc(n*m*sizeof(int));
- for(i=0; i<n; i++)
- {
- for(j=0; j<m; j++)
- {
- printf("a[%d][%d] = ", i, j);
- scanf("%d", (a+i*m+j));
- }
- }
- for(i=0; i<n; i++)
- {
- for(j=0; j<m; j++)
- {
- printf("%5d ", *(a+i*m+j));
- }
- printf("\n");
- }
- int arrMin[m];
- int min = 0;
- for (j = 0; j < m; j++)
- {
- for ( i = 0; i < n; i++)
- {
- if (*(a+min*m+j) > *(a+i*m+j))
- {
- min = i;
- }
- }
- arrMin[m] = *(a+min*m+j);
- printf("%d\n", arrMin[m]);
- }
- free(a);
- getchar(); getchar();
- return 0;
- }
Объяснение кода листинга программы
В этом коде:
- Объявлены переменные:
a
- указатель на первый элемент массива, который будет содержать значения элементов матрицы;i
,j
,n
,m
- целочисленные переменные, которые будут использоваться для описания строк, столбцов и количества строк и столбцов матрицы.
- С помощью функции
scanf
пользователю предлагается ввести количество строк и столбцов матрицы. - С помощью функции
malloc
выделяется память под массивa
размеромn*m*sizeof(int)
. - В цикле происходит заполнение матрицы значениями. Значения принимаются с клавиатуры.
- С помощью двух вложенных циклов происходит вывод значений матрицы на экран.
- Объявлен массив
arrMin
размеромm
, который будет содержать минимальные значения элементов каждого столбца. - В цикле происходит поиск минимального значения в каждом столбце.
- В конце программы выводится на экран массив
arrMin
, содержащий минимальные значения элементов каждого столбца. - С помощью функции
free
освобождается память, выделенная под массивa
. - С помощью функции
getchar
считываются символы, нажатые на клавиатуре, чтобы программа могла корректно завершить работу.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д