Selection sort v3
PROBLEMA
Scrivere un programma che caricato un array bidimensionale 3x3 di interi in modalita’ randomica(valori compresi tra zero e nove):
- stampare a video la matrice;
- scrivere quanti zeri sono memorizzati nella matrice ed in quale posizione;
- ordinare (selection sort) solo le righe dispari;
- stampare a video la matrice con le righe dispari ordinate.
CODICE SORGENTE
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main(int argc, char *argv[]){
int i, j, k;
int temp;
int righe=3, colonne=3;
int a[righe+1][colonne+1];
srand(time(NULL));
for(i=0;i<righe;i++){
for(j=0;j<colonne;j++){
a[i][j]=rand()%10;
}
}
system("cls");
printf("\nPrimo punto\n");
for(i=0;i<righe;i++){
for(j=0;j<colonne;j++){
printf("[%i]\t", a[i][j]);
}
printf("\n");
}
system("PAUSE");
printf("\nSecondo punto\n");
for(i=0;i<righe;i++){
for(j=0;j<colonne;j++){
if(a[i][j]==0)
printf("Posizione %i,%i[%i]\t", i, j, a[i][j]);
}
printf("\n");
}
system("PAUSE");
for(k=0;k<righe;k++){
if(k%2==0){
for(i=0;i<colonne-1;i++){
for(j=i+1;j<colonne;j++){
if(a[k][j]<a[k][i]){
temp=a[k][i];
a[k][i]=a[k][j];
a[k][j]=temp;
}
}
}
}
}
printf("\nTerzo punto\n");
for(i=0;i<righe;i++){
for(j=0;j<colonne;j++){
printf("[%i]\t", a[i][j]);
}
printf("\n");
}
return 0;
}