ho fatto così ed il risultato è identico. Mi risulta tutto vuoto. Le mostro:

codice:
struct al {
       char materia[15];
       int matricola;
       float orale;
       float scritto;
       } alunno[32], app;
       
void ordinastruct(int ind, struct al struttura[]){
     
     int i,j,k,t,min,a;
     float a1, a2;
     
     
     for(i=0; i<ind-1; i++){
               for(j=0; j<ind; j++){
                        if(struttura[i].matricola<struttura[j].matricola){
                                                                          app=struttura[i];
                                                                          struttura[i]=struttura[j];
                                                                          struttura[j]=app;
                                                                          }}}}
codice:
.... tutta l'acquisizione ....

             ordinastruct(32, alunno);
             for(i=0; i<total; i++){
                      
                
                      

                                                                     printf("\n\nMatricola: %d", alunno[i].matricola);
                                                                     printf("\n\n\t\t");
                                                                     for(y=0; alunno[i].materia[y]!='\0'; y++){
                                                                     printf("%c", alunno[i].materia[y]);
                                                                     }
                                                                     printf("\n\n\t\t\t\t%1.1f", alunno[i].scritto);
                                                                     printf("\n\n\t\t\t\t\t\t%1.1f", alunno[i].orale);
                                                                     
                                                                     }
                                                                     
                                                                     getch();
                                                                     return 0;
                                                                     }