/* Programma 61cppBubleSortArreiStringhe compilato con dev-c++ Riontino Raffaele 3AS INF I.T.I.S. Ettore Molinari - Milano - 6-3-'10 Caricare un array di stringhe, ordinarlo e visualizzare l'array ordinato utilizzo delle funzioni con passaggio di parametri. */ #include #include #include #include #define dim1 6 // quantità di stringhe #define dim2 15 // lunghezza stringhe using namespace std; int lunghezza(char stringhe[]); int caratteri(char stringhe[]); void converti(char stringhe[]); void riordino(char stringhe[][dim2],int i); void visualizza(char stringhe[][dim2],int i); main() { char stringhe[dim1][dim2], scelta; int i,errore; do{ system ("cls"); cout << "\n\tCaricamento di un array di stringhe controllo degli imput\n\n"; cout << "\triordino con bubble sort e visualizzazione riordinati.\n\n"; cout << "\n\n Array formato da 6 stringhe"; cout << "\n\n (massimo 15 caratteri per stringa)"; cout << "\n\n sono consentiti solo i caratteri alfabetici : \n\n"; for (i=0 ; idim2){ cout << "\n Attenzione,stringa troppo lunga.Ripeti!!\n\n"; errore=1; } return errore; }//fine lunghezza //funzione che controlla i caratteri presenti nella stringa int caratteri(char stringhe[]) { int errore,flag,i=0; errore=0; flag=1; while ((i 122)) { if (stringhe[i] != 32) { cout << "\n La stringa inserita contiene caratteri diversi"; cout << "\n da quelli alfabetici.Ripeti!!\n\n"; flag=0; errore=1;} } i++; } return errore; }//fine caratteri //funzione che converte le lettere presenti nella stringa inviata,in minuscolo void converti(char stringhe[]) { int i; for (i=0 ; i 0) && (flag)) { flag=0; for (j=0 ; j 0){ strcpy(temp,stringhe[j]); strcpy(stringhe[j],stringhe[j+1]); strcpy(stringhe[j+1],temp); flag=1; } }//for k--; }//while }//chiusura riordino //funzione che visualizza il contenuto dell'array di stringhe void visualizza(char stringhe[][dim2],int i) { int j; for (j=0 ; j