Вобщем нужна помощь
Задание:
Дана целочисленная прямоугольная матрица. Определить номер первого из столбцов, содержащих хотя бы один нулевой элемент.(Ну с этим всё ок)
Дальше.
Характеристикой строки матрицы назовем сумму её отрицательных элементов. Переставляю строки хаданной матрицы, расположить их в соответствии с убыванием характеристик.

У меня в программе полностью работает первое задание , а так же находит и выводит характеристики каждой строки в виде одномерной матрицы.
Вобщем помогите мне построить отсортированную матрицу =)
Характеристикой строки матрицы у меня называется sumchar
Продолжение нужно вместо закоментированного разрыва.
Код:
#include <iostream>
using namespace std;
int main()
{	
	setlocale(LC_ALL,"Russian");
	const int size=4;
// mas - обрабатываемый массив, конфигурации квадратная матрица

	int mas[size][size]={{4,3,0,-4},{3,-6,3,-1},{-1,4,-1,0},{-1,1,0,-4}};
// Вывод массива mas
	cout << "Матрица до: \n";
	for(int i=0;i<size;i++)
	{
		for(int j=0;j<size;j++)
		{
			cout << mas[i][j]<<" ";
		}
	cout << endl;
	}
	// Поиск первого из столбцов c нулевым элементом
	for (int i = 0; i < size; i++)
	{
         for (int j = 0; j < size; j++)
		 {
             if ( mas[i][j] == 0 )
			 {
				 cout << "0 в столбце " << j + 1 << '\n';
				 break;
			 }	 
		 }
           break; 


	}
	//Вычисление "хар-ки" каждой строки
	for(int i=0;i<size;i++)
	{
		int sumchar[size]={0,0,0,0};
		for(int j=0;j<size;j++)
			{
				if (mas[i][j]<0)
				sumchar[i]+=mas[i][j];
				
		    }
		cout<<sumchar[i]<<endl;
		
	}
	/*------------------------------------------------------------------*/
	system ("pause");
	return 0;
}
Заранее благодарю =)