Сортировка строк двумерного массива - C (СИ)
Формулировка задачи:
#include<stdio.h> main() { int A[3][3],i,j,c; clrscr(); for(i=0;i<3;i++) for(j=0;j<3;j++) scanf("%d",&A[i][j]); for(i=0;i<3;i++) for(j=0;j<3;j++) if (A[i][0]>A[j][0]) { c=A[i][0]; A[i][0]=A[j][0]; A[j][0]=c; } for(i=0;i<3;i++) { for(j=0;j<3;j++) { printf("%2d",A[i][j]); } printf("\n"); } }
Решение задачи: «Сортировка строк двумерного массива»
textual
Листинг программы
#include <stdio.h> #define L 5 // line #define C 5 // column int main() { int A [L][C] = {0}; int B [C] = {0}; // clipboard int i, j, pass; for (i = 0; i <= L - 1; i++) for (j = 0; j <= C - 1; j++) scanf ("%2d", &A [i][j]); pass = 0; while (pass <= L - 1) { i = 0; for (i = 0; i <= L - 2; i++) { j = 0; if (A [i][j] > A [i + 1][j]) { for (j = 0; j <= C - 1; j++) { B [j] = A [i][j]; A [i][j] = A [i + 1][j]; A [i + 1][j] = B [j]; } } } pass++; } for (i = 0; i <= L - 1; i++) { for (j = 0; j <= C - 1; j++) printf ("%2d", A [i][j]); printf ("\n"); } return 0; }
Объяснение кода листинга программы
В этом коде представлена сортировка двумерного массива строк методом пузырька.
- В начале кода объявляется двумерный массив A размером L на C и одномерный массив B размером C.
- Затем происходит заполнение массива A с помощью функции scanf.
- Создается переменная pass, которая будет использоваться для отслеживания количества проходов в цикле.
- Затем идет внешний цикл, который выполняется до тех пор, пока не будет отсортирован массив по возрастанию.
- Внутри внешнего цикла идет внутренний цикл, который итерируется по массиву A, но не до конца, так как мы уже знаем, что массив отсортирован.
- Если текущий элемент массива A больше следующего, то они меняются местами, и этот факт запоминается в массиве B.
- После внутреннего цикла увеличивается значение переменной pass.
- После внешнего цикла происходит вывод отсортированного массива A с помощью функции printf.
- В конце кода возвращается 0, что означает успешное выполнение программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д