Сортировка матрицы с условием, что 0 самое большое число - C (СИ)
Формулировка задачи:
Дана матрица размером 7*7
Требуется отсортировать ее от меньшего к большему при условии,
что 0 самое большое число. Мне и это удалось самому сделать.
Спросите, моя программа подтвердит.
P.S.
Трудно поверить, ведь я только начал изучать Си
#include <stdio.h> #include <stdlib.h> #include <time.h> int i, j, k, l, b, a[7][7]; int main() { srand(time(NULL)); for (i = 0; i < 7; i++ ){ for (j = 0; j < 7; j++ ){ a[i][j] = rand()% 16 - 8; printf("%4d", a[i][j]);} printf("\n");} for (k = 0; k < 49; k++ ) { for (i = 0; i < 6; i++ ) { for (j = 0; j < 6; j++ ){ b = (a[i][j] > a[i][j+1]) && (a[i][j+1] != 0) || (a[i][j] == 0); if(b) {l = a[i][j]; a[i][j] = a[i][j+1]; a[i][j+1] = l;} b = a[i][6] > a[i+1][0] && a[i+1][0] != 0 || a[i][6] == 0; if(b) { l = a[i][6]; a[i][6] = a[i+1][0]; a[i+1][0] = l;}} } for (j = 0; j < 6; j++ ){ b = a[6][j] > a[6][j+1] && a[6][j+1] != 0 || a[6][j] == 0; if(b){l = a[6][j]; a[6][j] = a[6][j+1]; a[6][j+1] = l;}} } printf("\n"); for (i = 0; i < 7; i++ ){ for (j = 0; j < 7; j++ ) printf("%4d", a[i][j]); printf("\n");} _getch(); return 0; }
Решение задачи: «Сортировка матрицы с условием, что 0 самое большое число»
textual
Листинг программы
fprintf(stdout, "f.var1 = %i, f.var2 = %i\n", f.get(&f, 0), f.get(&f, 1));
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д