#include <stdio.h>
#include <stdlib.h>
int** alocaMatriz(int lin, int col){
int** matriz
= (int**)malloc(lin
*sizeof(int*)); for(int i = 0; i < lin; i++)
matriz
[i
] = (int*)malloc(col
*sizeof(int));
return matriz;
}
void leMatriz(int** matriz, int lin, int col){
for(int i = 0; i < lin; i++){
for(int j = 0; j < col; j++){
printf("Digite o elemento M[%d][%d]: ", i
, j
); scanf("%d", &matriz
[i
][j
]); }
}
}
void mostraMatriz(int** matriz, int lin, int col){
for(int i = 0; i < lin; i++){
for(int j = 0; j < col; j++)
}
}
void ordenaMatriz(int **matriz, int lin, int col)
{
int i, j, menor, cont = 0;
int vetor[lin*col];
for(i=0;i<lin;i++){
for(j=0;j<col;j++){
vetor[cont]=matriz[i][j];
cont++;
}
}
for(i=0;i<(lin*col);i++){
}
for(i=0;i<lin*col;i++){
menor=vetor[i];
for(j=0;j<lin*col;j++){
if(vetor[j]<menor){
vetor[i] = vetor[j];
vetor[j] = menor;
menor = vetor[i];
}
}
}
for(i = 0, cont = 0; i < lin; i++){
for(j = 0; j < col; j++){
matriz[i][j]=vetor[cont];
cont++;
}
}
}
void ordena_x_y(int** matriz, int i, int j){
}
void desalocaMatriz(int** matriz, int k){
for(int i = 0; i < k; i++)
}
int main(int argc, char** argv) {
int lin, col;
int **matriz;
printf("Digite as dimensoes da matriz: "); scanf("%d %d", &lin
, &col
);
matriz = alocaMatriz(lin, col);
leMatriz(matriz, lin, col);
printf("Matriz nao ordenada: \n"); mostraMatriz(matriz, lin, col);
ordenaMatriz(matriz, lin, col);
printf("Matriz ordenada: \n"); mostraMatriz(matriz, lin, col);
desalocaMatriz(matriz, lin);
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KCmludCoqIGFsb2NhTWF0cml6KGludCBsaW4sIGludCBjb2wpewogICAgaW50KiogbWF0cml6ID0gKGludCoqKW1hbGxvYyhsaW4qc2l6ZW9mKGludCopKTsKICAgIGZvcihpbnQgaSA9IDA7IGkgPCBsaW47IGkrKykKICAgICAgICBtYXRyaXpbaV0gPSAoaW50KiltYWxsb2MoY29sKnNpemVvZihpbnQpKTsKCiAgICByZXR1cm4gbWF0cml6Owp9Cgp2b2lkIGxlTWF0cml6KGludCoqIG1hdHJpeiwgaW50IGxpbiwgaW50IGNvbCl7CiAgICBmb3IoaW50IGkgPSAwOyBpIDwgbGluOyBpKyspewogICAgICAgIGZvcihpbnQgaiA9IDA7IGogPCBjb2w7IGorKyl7CiAgICAgICAgICAgIHByaW50ZigiRGlnaXRlIG8gZWxlbWVudG8gTVslZF1bJWRdOiAiLCBpLCBqKTsKICAgICAgICAgICAgc2NhbmYoIiVkIiwgJm1hdHJpeltpXVtqXSk7CiAgICAgICAgfQogICAgfQp9Cgp2b2lkIG1vc3RyYU1hdHJpeihpbnQqKiBtYXRyaXosIGludCBsaW4sIGludCBjb2wpewogICAgZm9yKGludCBpID0gMDsgaSA8IGxpbjsgaSsrKXsKICAgICAgICBmb3IoaW50IGogPSAwOyBqIDwgY29sOyBqKyspCiAgICAgICAgICAgIHByaW50ZigiJWQgIiwgbWF0cml6W2ldW2pdKTsKICAgICAgICBwcmludGYoIlxuIik7CiAgICB9CiAgICBwcmludGYoIlxuIik7Cn0KCnZvaWQgb3JkZW5hTWF0cml6KGludCAqKm1hdHJpeiwgaW50IGxpbiwgaW50IGNvbCkKewoKICAgIGludCBpLCBqLCBtZW5vciwgY29udCA9IDA7CglpbnQgdmV0b3JbbGluKmNvbF07CgoJZm9yKGk9MDtpPGxpbjtpKyspewoJICAgIGZvcihqPTA7ajxjb2w7aisrKXsKCSAgICAgICAgdmV0b3JbY29udF09bWF0cml6W2ldW2pdOwoJICAgICAgICBjb250Kys7CgkgICAgfQoJfQoKCWZvcihpPTA7aTwobGluKmNvbCk7aSsrKXsKCSAgICBwcmludGYoIiVkICIsIHZldG9yW2ldKTsKCX0KCXByaW50ZigiXG4iKTsKCglmb3IoaT0wO2k8bGluKmNvbDtpKyspewoJICAgIG1lbm9yPXZldG9yW2ldOwoJICAgIGZvcihqPTA7ajxsaW4qY29sO2orKyl7CgkgICAgICAgIGlmKHZldG9yW2pdPG1lbm9yKXsKCSAgICAgICAgICAgIHZldG9yW2ldID0gdmV0b3Jbal07CgkgICAgICAgICAgICB2ZXRvcltqXSA9IG1lbm9yOwoJICAgICAgICAgICAgbWVub3IgPSB2ZXRvcltpXTsKCSAgICAgICAgfQoJICAgIH0KCX0KCWZvcihpID0gMCwgY29udCA9IDA7IGkgPCBsaW47IGkrKyl7CgkgICAgZm9yKGogPSAwOyBqIDwgY29sOyBqKyspewoJICAgICAgICBtYXRyaXpbaV1bal09dmV0b3JbY29udF07CgkgICAgICAgIGNvbnQrKzsKCSAgICB9Cgl9Cn0KCnZvaWQgb3JkZW5hX3hfeShpbnQqKiBtYXRyaXosIGludCBpLCBpbnQgail7CgoKfQp2b2lkIGRlc2Fsb2NhTWF0cml6KGludCoqIG1hdHJpeiwgaW50IGspewogICAgZm9yKGludCBpID0gMDsgaSA8IGs7IGkrKykKICAgICAgICBmcmVlKG1hdHJpeltpXSk7CiAgICBmcmVlKG1hdHJpeik7Cn0KCmludCBtYWluKGludCBhcmdjLCBjaGFyKiogYXJndikgewogICAgaW50IGxpbiwgY29sOwogICAgaW50ICoqbWF0cml6OwoKICAgIHByaW50ZigiRGlnaXRlIGFzIGRpbWVuc29lcyBkYSBtYXRyaXo6ICIpOwogICAgc2NhbmYoIiVkICVkIiwgJmxpbiwgJmNvbCk7CgogICAgbWF0cml6ID0gYWxvY2FNYXRyaXoobGluLCBjb2wpOwogICAgbGVNYXRyaXoobWF0cml6LCBsaW4sIGNvbCk7CiAgICBwcmludGYoIk1hdHJpeiBuYW8gb3JkZW5hZGE6IFxuIik7CiAgICBtb3N0cmFNYXRyaXoobWF0cml6LCBsaW4sIGNvbCk7CiAgICBvcmRlbmFNYXRyaXoobWF0cml6LCBsaW4sIGNvbCk7CiAgICBwcmludGYoIk1hdHJpeiBvcmRlbmFkYTogXG4iKTsKICAgIG1vc3RyYU1hdHJpeihtYXRyaXosIGxpbiwgY29sKTsKICAgIGRlc2Fsb2NhTWF0cml6KG1hdHJpeiwgbGluKTsKCiAgICByZXR1cm4gMDsKfQo=