Está en la página 1de 5

#include<stdio.

h>

#include<time.h>

int N,M,i,j;

int ingresaNumeroEntero();

void generaAleatorioENterosEntreMinMax(int matriz[][M],int min,int max);

void imprimeElementosMatrizEntero(int matriz[][M]);

void ordenaMenorMayorPrimeraColumna(int matriz[][M]);

main(){

printf("Digite el numero de filas: ");

N = ingresaNumeroEntero();

printf("Digite el numero de columnas: ");

M = ingresaNumeroEntero();

int matriz[N][M];

srand(time(NULL));

generaAleatorioENterosEntreMinMax(matriz,10,99);

printf("\n\nArreglo inicial:\n\n");

imprimeElementosMatrizEntero(matriz);

ordenaMenorMayorPrimeraColumna(matriz);

printf("\n\nArreglo final:\n\n");

imprimeElementosMatrizEntero(matriz);

return 0;

}
int ingresaNumeroEntero(){

int numero;

do{

scanf("%i",&numero);

}while(numero<=0);

return numero;

void generaAleatorioENterosEntreMinMax(int matriz[][M],int min,int max){

for(i=0;i<N;i++){

for(j=0;j<M;j++){

matriz[i][j] = min + rand()%(max + 1 - min);

void imprimeElementosMatrizEntero(int matriz[][M]){

for(i=0;i<N;i++){
for(j=0;j<M;j++){

printf(" %i ",matriz[i][j]);

printf("\n");

void ordenaMenorMayorPrimeraColumna(int matriz[][M]){

int a,b,k,min;

for(i=0;i<N;i++){

min = 100;

for(j=0;j<N;j++){

for(k=0;k<M;k++){

if(i==0 & min>matriz[j][k]){

min = matriz[j][k];

a = j;

b = k;
}

else if(min>matriz[j][k] && matriz[j][k]>=matriz[i-1][0]){

if(k==0){

if(j>i-1){

min = matriz[j][k];

a = j;

b = k;

else{

min = matriz[j][k];

a = j;

b = k;

matriz[a][b] = matriz[i][0];
matriz[i][0] = min;

También podría gustarte