Сортировка строк матрицы по возрастанию - C (СИ)

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

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

Здравствуйте. Помогите, пожалуйста, исправить код. Дан двумерный массив (N=4, M=6). Отсортировать его строки по возрастанию. У меня происходит сортировка,но не всех значений.
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
#include<time.h>
#define N 4
#define M 6
int main()
{
int a[N][M],i,j,c;
time_t t;
clrscr();
srand(time(&t));
for(i=0;i<N;i++)
   {
      for(j=0;j<M;j++)
      {
     a[i][j]=0+rand()%100;
     printf("%d ",a[i][j]);
      }
      printf("\n");
   }
for(i=0;i<N;i++)
   {
      for(j=0;j<M-1;j++)
      {
     if(a[i][j]>a[i][j+1])
     {
        c=a[i][j];
        a[i][j]=a[i][j+1];
        a[i][j+1]=c;
     }
      }
   }
printf("\n");
for(i=0;i<N;i++)
   {
      for(j=0;j<M;j++)
      {
     printf("%d ",a[i][j]);
      }
      printf("\n");
   }
getch();
return 0;
}

Решение задачи: «Сортировка строк матрицы по возрастанию»

textual
Листинг программы
#include <stdio.h>
#include <stdlib.h>
 
int main()
{
  const unsigned int sizeMatrix = 10;
  int matrix[sizeMatrix][sizeMatrix], tmp = 0;
 
  for (size_t i = 0; i < sizeMatrix; ++i)
    for (size_t j = 0; j < sizeMatrix; ++j)
      matrix[i][j] = rand() % 10;
 
  for (size_t i = 0; i < sizeMatrix; ++i)
    for (size_t j = 0; j < sizeMatrix - 1; ++j)
      for (size_t k = 0; k < sizeMatrix - 1; ++k)
        if (matrix[i][k + 1] < matrix[i][k]) {
          tmp = matrix[i][k + 1];
          matrix[i][k + 1] = matrix[i][k];
        }
 
  for (size_t i = 0; i < sizeMatrix; ++i) {
    for (size_t j = 0; j < sizeMatrix; ++j) {
      printf("%d ", matrix[i][j]);
    }
    printf("\n");
  }
 
  return 0;  
}

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

  1. Подключение необходимых библиотек: iostream.h и stdlib.h
  2. Объявление константы размера матрицы: sizeMatrix = 10
  3. Создание двумерного массива типа int: matrix[sizeMatrix][sizeMatrix]
  4. Инициализация матрицы случайными числами от 0 до 9 с помощью функции rand()
  5. Прямой проход по матрице для сравнения элементов
  6. Сравнение элементов матрицы и перестановка их в нужном порядке
  7. Вывод отсортированной матрицы на экран с помощью функции printf()
  8. Возвращение значения 0, сигнализирующего о успешном завершении программы

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


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

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

7   голосов , оценка 4.286 из 5
Похожие ответы