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;
}