Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.12.2012, 00:11   #1
Александрq
Пользователь
 
Регистрация: 14.10.2012
Сообщений: 27
По умолчанию Отсортировать строки матрицы Си

Отсортировать строки матрицы М(8х5) в порядке возрастания.
Александрq вне форума Ответить с цитированием
Старый 17.12.2012, 02:24   #2
Александрq
Пользователь
 
Регистрация: 14.10.2012
Сообщений: 27
По умолчанию

написал программу, подскажите где ошибка
Код:
#include<stdio.h>
#include<stdlib.h>  
#include<conio.h>   
#include<time.h>
#define m 8
#define n 5
 
int a[m][n];
int i,j,k,l,temp;
int min[m],tmp[n];
 
int main()
{
  for (i=0; i<m; i++)
    min[i]=101;
 
    int D[m][n];
  
    srand(time(0));
        for(int i=0;i<m;i++)
        for(int j=0;j<n;j++)
            D[i][j]=rand()%100;
    printf("Massiv:\n");
    for(int i=0;i<m;i++)  
    {
        printf("\n");
        for(int j=0;j<n;j++)
            printf("%4d ",D[i][j]);
            
    }
    printf("\n");
 
  for (int i=0; i<m; i++)
  {         
    for (int j=0; j<n; j++)
	{
      if (min[i] > a[i][j] )
    min[i]=a[i][j];
    }
  }
 
 
  printf("\n Otsortirovannaya matritsa\n");
 
  for (int k=0; k<m-1; k++)
  {
    for (l=k+1; l<m; l++)
      if (min[k]>min[l])
	  {
 
    for (int j=0; j<n; j++)//сортируем матрицу
	{    
      tmp[j]=a[l][j];       
      a[l][j]=a[k][j];
      a[k][j]=tmp[j];
 
      temp = min[l];
      min[l]=min[k];
      min[k]=temp;
    }
      }
    
  }
 
  for (int i=0; i<m; i++) //печатаем полученную матрицу
  {    
    for (int j=0; j<n; j++)
	{
      printf("%5d", a[i][j]);
    }printf ("\n");
  }
  getch(); 
  return 0;
}
Александрq вне форума Ответить с цитированием
Старый 17.12.2012, 08:52   #3
Artem_Kokos
Форумчанин
 
Регистрация: 28.02.2011
Сообщений: 122
По умолчанию

А что не так работает?
Повторенье - мать ученья. И прибежище для лентяев.
Artem_Kokos вне форума Ответить с цитированием
Старый 17.12.2012, 09:32   #4
Александрq
Пользователь
 
Регистрация: 14.10.2012
Сообщений: 27
По умолчанию

вторая матрица из нулей получается
Александрq вне форума Ответить с цитированием
Старый 17.12.2012, 09:41   #5
Sciv
Старожил
 
Аватар для Sciv
 
Регистрация: 16.05.2012
Сообщений: 3,211
По умолчанию

Так я понял, что Вы строки переставляете, а нужно только внутри строк сортировать.
Начал решать проблему с помощью регулярных выражений. Теперь решаю две проблемы...
Sciv вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Обработка матрицы. Первую и вторую строки отсортировать выбором по убыванию, пятый и шестой столбец отсортировать (С++) Sasha316 Помощь студентам 0 23.11.2012 00:48
программа которая сможет отсортировать строки матрицы по строкам luka_zluka1 Microsoft Office Word 0 13.05.2012 22:56
как отсортировать строки AloneForever Общие вопросы C/C++ 2 28.12.2011 16:24
Отсортировать столбец с номером n_sort целочисленной матрицы М(4,4) по возрастанию элементов с исполльзов yulia_93 Паскаль, Turbo Pascal, PascalABC.NET 0 15.05.2011 16:51
Найти наибольший и наименьший элемент в каждой строке матрицы. Отсортировать... (Паскаль) Tifa Помощь студентам 0 27.01.2011 23:07