Pagina 2 di 4 primaprima 1 2 3 4 ultimoultimo
Visualizzazione dei risultati da 11 a 20 su 38
  1. #11
    Utente di HTML.it
    Registrato dal
    May 2011
    residenza
    bergamo
    Messaggi
    1,027
    beh la professoressa dice che è c++

  2. #12
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,481
    E' un miscuglio.

    Usi parte del C++ e gli array di char del C.

    (a parte il fatto che usi anche delle string per la variabile temp ... a questo punto anche temp dovrebbe essere un array di char).
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #13
    Utente di HTML.it
    Registrato dal
    May 2011
    residenza
    bergamo
    Messaggi
    1,027
    eh infatti all'inziio avevo messo char di temp con max 25 caratteri ma poi me lo avete corretto qui... mi avete detto di usare string

  4. #14
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,481
    E' normale che ti è stato detto dato che stai scrivendo in C++ ! Si usano le string !

    E anche se il limite imposto dall'esercizio è di 25 caratteri puoi sempre limitare la lunghezza delle string !
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #15
    Utente di HTML.it
    Registrato dal
    May 2011
    residenza
    bergamo
    Messaggi
    1,027
    quindi come posso fare ora..?

  6. #16
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,481
    Come vuoi ...

    Ma o tutte string o tutti array di char ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  7. #17
    Utente di HTML.it
    Registrato dal
    May 2011
    residenza
    bergamo
    Messaggi
    1,027
    ok mettiamo caso che voglia tenere array di char per fare funzionare l'ordinamento come posso fare? (ritorniamo al problema iniziale del thread)

  8. #18
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,481
    Non puoi usare l' = come per le string.

    Con gli array di char devi usare la funzione strcpy

    http://www.cplusplus.com/reference/cstring/strcpy/

    classica del C
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  9. #19
    Utente di HTML.it
    Registrato dal
    May 2011
    residenza
    bergamo
    Messaggi
    1,027
    ho scelto di usare lo strcpy

    però mi succede una cosa strana
    faccio partire il programma e per esempio dico che inserisco 2 studenti
    dopo l'inserimento di questi 2 studenti, contina a chiedermi di inserire nom cognome come se avessi chiesto di inserirne più di due...
    è come se non uscisse dal ciclo

    come mai??

    codice:
    #include <cstring>
    #include <iostream>
    #include <string>
    using namespace std;
    int main()
    {
        int n_stud,scelta,j;
        char temp[25];
        struct studente
        {
               char nome[25],cognome[25],corso[11];
               int voto,lode,anni_iscr;
        };
        cout<<"inserisci il numero di studenti neolaureati\n";
        cin>>n_stud;
        studente tot_stud[n_stud];
        cout<<"per inserire i dati di tutti i "<<n_stud<<" studenti premere: 1\n";
        cout<<"per mostrare tutti gli studenti in ordine alfabetico rispetto al cognome premere: 2\n";
        cout<<"per ricercare e mostrare i migliori studenti premere: 3\n";
        cout<<"per mostrare gli studenti che hanno avuto 110 o 110 e lode premere: 4\n";
        cout<<"per mostrare la media del corso di laurea premere: 5\n";
        cout<<"per ordinare in maniera decrescente rispetto al voto ogni corso di laurea premere: 6\n";
        cout<<"per uscire dal programma premere: 0\n";
        cin>>scelta;
        cin.ignore();
        do{
        switch(scelta)
        {
                      case 1:              
        for(int i=0;i<n_stud;i++)
        {        
        cout<<"inserisci il cognome dello studente\n";
        cin.getline(tot_stud[i].cognome,25);
        cout<<"inserisci il nome dello studente\n";
        cin.getline(tot_stud[i].nome,25);
        cout<<"inserisci il corso a cui e' iscritto (informatica,elettronica,civile,meccanica,elettrica,gestionale)\n";
        cin>>tot_stud[i].corso;
        cout<<"inserisci il suo voto di laurea (numero intero)\n";
        cin>>tot_stud[i].voto;
        cout<<"digita 1 se lo studente ha ricevuto una lode, digita 0 se non ne ha ricevuta\n";
        cin>>tot_stud[i].lode;
        if(tot_stud[i].lode==1)
        { 
                                cout<<"lo studente ha ricevuto una lode\n"; 
        }
        else 
        { 
             cout<<"lo studente non ha ricevuto nessuna lode\n"; 
        }
        cout<<"indica in quanti anni lo studente ha conseguito la laurea\n";
        cin>>tot_stud[i].anni_iscr;
        cin.ignore();
        }
        break;
        case 2:
             for(int i=0;i<n_stud-1;i++)
             {
             j=i+1;
             do
             {
             if(tot_stud[i].cognome<tot_stud[j].cognome)
             {
             strcpy(temp,tot_stud[i].cognome);
             strcpy(tot_stud[i].cognome,tot_stud[j].cognome);
             strcpy(tot_stud[j].cognome,temp);
             }
             j=j+1;
             }while(j<n_stud);
             }
             cout<<"iscritti ordinati per cognome: \n";
             for(int i=0;i<n_stud;i++)
             {
             cout<<tot_stud[i].cognome<<"\n";
             }
             break;
    }}while(scelta!=0); 
        system("pause");
        return 0;    
    }

  10. #20
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,481
    Potrebbe essere un problema di blocchi di codice non correttamente impostati ... dove termina la for ?

    Se non indenti bene il codice non si capisce dove iniziano e dove finiscono i vari blocchi e a quale parentesi { corrisponde la }
    No MP tecnici (non rispondo nemmeno!), usa il forum.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.