Salve ragazzi io ho questo codice
codice:
#include <iostream>
#include <stdlib.h>
#include <string.h>
#include <conio.h>

using namespace std;

typedef char Tstring20[21];
typedef char Tstring25[26];
typedef char Tstring15[16];
typedef float tvettfloat[4];
typedef char vuoto[1];

struct Talunno{
    Tstring20 nome;
    Tstring25 cognome;
    Tstring15 classe;
    float  scritto1quad;
    float  orale1quad;
    float  pratico1quad;
    float  scritto2quad;
    float  orale2quad;
    float  pratico2quad;
    int    numass1;
    int    numass2;
};

typedef Talunno Tregistro[33];

void acquisiscialunni(Tregistro &alunni, int &N){
    int I,i,j,f,s,d,c;
    vuoto a;
    do{
      cout<<"Inserisci quanti alunni acquisire: ";
      cin>>N;
      cin.getline(a,1);
    }while((N<1)||(N>32));
    for(I=0;I<N;I++){
      cout<<endl;
      cout<<I+1<<char(248)<<" alunno "<<endl;
      cout<<endl;            
      cout<<"Nome: ";
      cin.getline(alunni[I].nome,20);
      cout<<"Cognome: ";
      cin.getline(alunni[I].cognome,25);
      cout<<"Classe: ";
      cin.getline(alunni[I].classe,15);
      
      cout<<endl;
      cout<<"Assenze 1 "<<char(248)<<" quadrimestre: "<<endl;
      cout<<endl;
      cout<<"Assenze: ";
      cin>>alunni[I].numass1;
      
      cout<<endl;
      cout<<"Assenze 2 "<<char(248)<<" quadrimestre: "<<endl;
      cout<<endl;
      cout<<"Assenze: ";
      cin>>alunni[I].numass2;
      
      cout<<endl;
      cout<<"Scritto 1"<<char(248)<<" quadrimestre: "<<endl;
      cout<<endl;
      
      for(i=0;i<4;i++){
        cout<<"Scritto: ";
        cin>>alunni[i].scritto1quad;
      }
    
      cout<<endl;
      cout<<"Orale 1"<<char(248)<<" quadrimestre: "<<endl;
      cout<<endl;
    
      for(j=0;j<4;j++){
        cout<<"Orale: ";
        cin>>alunni[j].orale1quad;
      }
    
      cout<<endl;
      cout<<"Pratico 1"<<char(248)<<" quadrimestre: "<<endl;
      cout<<endl;
      
      for(f=0;f<4;f++){
        cout<<"Pratico: ";
        cin>>alunni[f].pratico1quad;
      }
      
      cout<<endl;
      cout<<"Scritto 2"<<char(248)<<" quadrimestre: "<<endl;
      cout<<endl;
      
      for(s=0;s<4;s++){
        cout<<"Scritto: ";
        cin>>alunni[s].scritto2quad;
      }
      
      cout<<endl;
      cout<<"Orale 2"<<char(248)<<" quadrimestre: "<<endl;
      cout<<endl;
      
      for(d=0;d<4;d++){
        cout<<"Orale: ";
        cin>>alunni[d].orale2quad;
      }
            
      cout<<endl;
      cout<<"Pratico 2"<<char(248)<<" quadrimestre: "<<endl;
      cout<<endl;
      
      for(c=0;c<4;c++){
        cout<<"Pratico: ";
        cin>>alunni[c].pratico2quad;
        cin.getline(a,1);
      }
      
    }    
}

void visualizzaalunni(Tregistro alunni, int N){
    int I,i,j,f,s,d,c; 
    cout<<endl;      
    cout<<"----------------Riepilogo----------------"<<endl;      
    cout<<endl; 
    for(I=0;I<N;I++){
      cout<<I+1<<char(248)<<" alunno "<<endl;
      cout<<endl;     
      cout<<"Nome: "<<alunni[I].nome<<endl;
      cout<<"Cognome: "<<alunni[I].cognome<<endl;
      cout<<"Classe: "<<alunni[I].classe<<endl;
      
      cout<<endl;
      cout<<"Assenze 1 "<<char(248)<<" quadrimestre: "<<endl;
      cout<<endl;
      cout<<"Assenze: "<<alunni[I].numass1<<endl;
      
      cout<<endl;
      cout<<"Assenze 2 "<<char(248)<<" quadrimestre: "<<endl;
      cout<<endl;
      cout<<"Assenze: "<<alunni[I].numass2<<endl;
      
      cout<<endl;
      cout<<"Scritto 1"<<char(248)<<" quadrimestre: "<<endl;
      cout<<endl;
      
      for(i=0;i<4;i++){
      cout<<"Scritto: "<<alunni[i].scritto1quad<<endl;
      }
          
      cout<<endl;
      cout<<"Orale 1"<<char(248)<<" quadrimestre: "<<endl;
      cout<<endl;
      
      for(j=0;j<4;j++){
      cout<<"Orale: "<<alunni[j].orale1quad<<endl;
      }
      cout<<endl;
      cout<<"Pratico 1"<<char(248)<<" quadrimestre: "<<endl;
      cout<<endl;
      
      for(f=0;f<4;f++){
        cout<<"Pratico: "<<alunni[f].pratico1quad<<endl;
      }
      
      cout<<endl;
      cout<<"Scritto 2"<<char(248)<<" quadrimestre: "<<endl;
      cout<<endl;
      
      for(s=0;s<4;s++){
        cout<<"Scritto: "<<alunni[s].scritto2quad<<endl;
      }
            
      cout<<endl;
      cout<<"Orale 2"<<char(248)<<" quadrimestre: "<<endl;
      cout<<endl;
      
      for(d=0;d<4;d++){
        cout<<"Orale: "<<alunni[d].orale2quad<<endl;
      }
      
      cout<<endl;
      cout<<"Pratico 2"<<char(248)<<" quadrimestre: "<<endl;
      cout<<endl;
      
      for(c=0;c<4;c++){
        cout<<"Pratico: "<<alunni[c].pratico2quad<<endl;
      }  
    }    
}        

void modificaalunno(Tregistro &alunni, int N, int mod){
    if(mod == I){
    //la cobdizione e sbagliata ma vorrei sapere come posso effettuare la ricerca di un alunno indicato dall utente cosi poi da modificarlo
     else{
      cout<<"Non esiste quell alunno "<<endl;
    }                               
}

int main()
{
  Tregistro alunni;
  int N;
  int scelta, mod;
  N = 0;
  do{
    cout<<"1.Inserisci alunno "<<endl;
    cout<<"2.Modifica alunno "<<endl;
    cout<<"3.Inserisci un nuovo alunno "<<endl;
    cout<<"4.Cancella un alunno "<<endl;
    cout<<"5.Visualizza gli alunni con piu di n assenze "<<endl;
    cout<<"6.Visualizza gli alunni con piu di n voti insufficenti nel secondo quadrimestre "<<endl;
    cout<<"7.Visualizzare gli alunni che hanno preso un voto superiore a 8 nel secondo quadrimestre "<<endl;                    
    cout<<"8.Esci "<<endl;
    
    cin>>scelta;
    
    switch(scelta){
      case 1:
        acquisiscialunni(alunni,N);   
        break;
      case 2:
        cout<<"Inserisci quale alunno modificare ";
        cin>>mod; 
        modificaalunno(alunni,N,mod);
        break;    
      case 5:
        if(N != 0){
          visualizzaalunni(alunni,N);   
        }
        else{   
          cout<<"Nessun alunno inserito"<<endl;
        }    
        system("PAUSE");
        system("cls");
        break;
      case 8:
        exit(0);
    }  
  }while(scelta != 6);      
    
  system("PAUSE");	
  return 0;
}