Dati di n alunni, in un array.

di il
9 risposte

Dati di n alunni, in un array.

Devo inserire i dati di alunni in un record e dopo leggerli... poi magari dopo volevo inserire anche l'età e fare la media ma mi sono bloccato all'ABC quindi andrei per gradi..
Io avevo pensato a questo:
#include <iostream>
using namespace std;
/* run this program using the console pauser or add your own getch, system("pause") or input loop */

int main ()
{
	int n;
	cout << " La classe di quanti alunni è formata? ";
	cin >> n;
	

	
	struct anagrafica {
		char nome [10];
		int giorno ;
		char mese [10];
		int anno; 
	} dati[i] ;
	 
	for (int i=0; i<n; i++)
	{
	cout << " Nome : ";
	cin >> dati[i].nome;
	cout << " Inserire giorno ";
	cin >> dati[i].giorno;
	cout << " Inserire mese ";
	cin >> dati[i].mese;
	cout << " Inserire anno ";
	cin >> dati[i].anno;
	}


	cout << " Nella classe gli alunni hanno i seguenti dati " ;
	for (int i=0; i<n; i++)
	{	
		cout << " Nome : " << dati[i].nome;
		cout << " Data di nascita : " << dati[i].giorno  << dati[i].mese << dati[i].anno << endl;
		cout << "  ";
	}
}

9 Risposte

  • Re: Dati di n alunni, in un array.

    In un record*** scusate!
  • Re: Dati di n alunni, in un array.

    Spiega quali sono i tuoi dubbi, le tue perplessità.
    Ho dato un'occhiata al codice e ho trovato questo problema (forse una svista?)
       struct anagrafica {
          char nome [10];
          int giorno ;
          char mese [10];
          int anno;    
       } dati[i] ;
    forse al posto di i volevi dire n.
    E poi 10 caratteri ti sembrano sufficienti per un nome???
    E 10 caratteri per il mese non ti sembrano tanti, non basterebbe un intero?
  • Re: Dati di n alunni, in un array.

    In pratica vorrei inserire io il numero degli alunni, per ogni alunno inserire i dati del record e poi successivamente leggerli...
  • Re: Dati di n alunni, in un array.

    E non è quello che hai fatto?
  • Re: Dati di n alunni, in un array.

    Sostitutendo dati[n], in pratica mi ripete sempre i dati di un solo alunno precisamente dell'ultimo.
  • Re: Dati di n alunni, in un array.

    Semplifica il problema: nella struttura lascia solo l'int giorno e vedi se funziona
  • Re: Dati di n alunni, in un array.

    #include <iostream>
    using namespace std;
    /* run this program using the console pauser or add your own getch, system("pause") or input loop */
    
    int main ()
    {
       int n;
       cout << " La classe di quanti alunni è formata? ";
       cin >> n;
       
    
       
       struct anagrafica {
         // char nome [30];
          int giorno ;
          /*char mese [10];
          int anno; /*/
       } dati[n] ;
        
       for (int i=0; i<n; i++)
       {
      // cout << " Nome : ";
      // cin >> dati[n].nome;
       cout << " Inserire giorno ";
       cin >> dati[n].giorno;
      // cout << " Inserire mese ";
      // cin >> dati[n].mese;
     //  cout << " Inserire anno ";
      // cin >> dati[n].anno;
       }
    
    
       cout << "\n Nella classe gli alunni hanno i seguenti dati " ;
       for (int i=0; i<n; i++)
       {   
          //cout << "\n Nome : " << dati[n].nome;
          cout << "\n Data di nascita : " << dati[n].giorno ;// <<"/" << dati[n].mese <<"/"<< dati[n].anno << endl;
         
       }
    }
    il problema è sempre lo stesso.. .ripete n volte i dati dell'ultimo ragazzo
  • Re: Dati di n alunni, in un array.

    Perchè fai un ciclo con i e poi dentro il ciclo usi n?
  • Re: Dati di n alunni, in un array.

    candaluar ha scritto:


    perchè fai un ciclo con i e poi dentro il ciclo usi n?
    ho risolto grazie
Devi accedere o registrarti per scrivere nel forum
9 risposte