Ciao ragazzi,
premetto che sono alle basi con il c++ e non conosco ancora tutti i termini specifici e via discorrendo, perciò vi prego di non usare un linguaggio troppo scientifico nelle risposte![]()
Detto questo, ecco il mio problema: per casa il prof ci ha assegnato il seguente esercizio:
Far inserire all'utente 8 squadre con i relativi punteggi in campionato, ordinarle e visualizzare la classifica.
A scuola non siamo riusciti a risolverlo perché mancava qualcosa che il professore non ci ha saputo spiegare (-.-) così me lo son risolto a casa per fatti miei cercando in internet qualcosa per risolvere il problema (ci aveva fatto dichiarare il vettore stringa come char invece che string) ma ancora non sono riuscito a completarlo, infatti il programma parte, riesco ad inserire squadre e punteggi poi si blocca.
Ecco il codice:
[spoiler][/spoiler]codice:#include <cstdlib> #include <iostream> #include <cstring> using namespace std; int main() { string squadre[8]; string app1[1]; int punti[8], i, app, interr; for(i=0;i<8;i++) { printf("Inserisci la %da squadra: ", i+1); scanf("%s", &squadre[i]); printf("Inserisci il suo punteggio: "); scanf("%d", &punti[i]); } do { interr = 0; for(i=0;i<8;i++) { if (punti[i]<punti[i+1]) { app = punti[i]; punti[i] = punti[i+1]; punti[i+1] = app; app1[0] = squadre[i]; squadre[i] = squadre[i+1]; squadre[i+1] = app1[0]; interr=1; } } } while(interr==1); printf("Ecco la classifica: "); for(i=0;i<8;i++) { printf("\n%d %s %d", i+1, squadre[i], punti[i]); } getchar();getchar(); return 0; }
e questo è l'errore che viene fuori al rigo 35 (il printf finale, nel for):
Da quel che so e che posso penasre credo sia sbagliato il modo di stampare il vettore squadre ma non ne son sicuro. Qualcuno può aiutarmi? :baicodice:35 C:\Users\Utente\Desktop\c++\esercizio con vettore stringa\main.cpp [Warning] cannot pass objects of non-POD type `struct std::string' through `...'; call will abort at runtime

Rispondi quotando

