codice:#include <iostream> typedef struct rubrica{ char cognome[15]; char nome[15]; char numero[20]; } rubrica ; rubrica riga[] = { {"b","",""}, {"d","",""}, {"a","",""}, {"c","",""} }; int vett[] = {0, 1, 2, 3}; int main () { std::cout << "Inizio : " << std::endl; for (int i = 0; i < 4; i++) std::cout << " " << riga[vett[i]].cognome << std::endl; int num = sizeof(vett) / sizeof(int) ; int flag = 0; do { flag = 0; for(int k=0; k<num-1; k++) { if(strcmp(riga[vett[k]].cognome, riga[vett[k+1]].cognome) > 0) { int com = vett[k]; vett[k]= vett[k+1]; vett[k+1]= com; flag=1; } } } while(flag==1); std::cout << "Fine : " << std::endl ; for (int i = 0; i < 4; i++) std::cout << " " << riga[vett[i]].cognome << std::endl; std::cout << std::endl; return 0; }

Rispondi quotando