Нужно отсортировать каждый столбец матрицы по спаданию эллементов - C (СИ)
Формулировка задачи:
Только начинаю програмировать и пока не могу разобраться.Нужно отсортировать каждый столбец матрицы по спаданию эллементов, используя указатели
Решение задачи: «Нужно отсортировать каждый столбец матрицы по спаданию эллементов»
textual
Листинг программы
#include <stdio.h> #include <stdlib.h> #include <locale.h> int main(int argc, char** argv[]) { int i,j,m,n,k; setlocale(LC_ALL, "RUS"); m=4; n=4; int *c; int A[m][n]; int *Pnt[n][m]; puts("Исходный массив:"); for (i = 0; i < m; i++ ){ for (j=0; j<n; j++){ A[i][j]=-20 + rand() %80;//заполняем матрицу Pnt[i][j]=&A[i][j];//передаем адреса элементов в массив указателей } for ( j = 0; j < n; j++ ){ printf( "[%d][%d]=%d ", i, j, A[i][j] ); } printf("\n"); } for(k=0;k<n;k++){//сортируем указатели пузырьком for ( i = 0; i < n-1; i ++ ) for ( j = n-2; j >= i; j -- ) if ( *(Pnt[j][k]) < *(Pnt[j+1][k]) ) { c =*(Pnt[j][k]); *(Pnt[j][k]) = *(Pnt[j+1][k]); *(Pnt[j+1][k]) = c; } } printf("\nОтсортированный массив:\n"); for(k=0;k<n;k++){ for ( i = 0; i < n; i ++ ){ printf("[%d][%d]=%d ",k,i, *Pnt[k][i]); } printf("\n"); } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д