ok grazie ecco il codice
codice:#include <stdio.h> #include <stdlib.h> #define numcar 25 #define massimo 30 /* * */ int main(){ struct cantante { char lastname[numcar]; char firstname[numcar]; double dischi; } cantanti[massimo]; int I; int i; int j = 0; char cognome; char nome; double disco ; for (I = 0; I <= massimo; I++){ printf ("Inserire cantante %d :", I ); printf ("Cognome : "); scanf ("%25s", cantanti[I].lastname); printf ("Nome : "); scanf ("%25s", cantanti[I].firstname); printf ("Totale dischi : "); scanf ("%f", cantanti[I].dischi); } for (i = 0; i < massimo - 1; i++){ for (j = i + 1; j < massimo; j++){ if (cantanti[i].dischi > cantanti[j].dischi){ cognome = cantanti[j].lastname; cantanti[j].lastname = &cantanti[i].lastname; cantanti[i].lastname = cognome; nome = cantanti[j].firstname; cantanti[j].firstname = cantanti[i].firstname; cantanti[i].firstname = nome; disco = cantanti[j].dischi; cantanti[j].dischi = cantanti[i].dischi; cantanti[i].dischi = disco; } } } printf ("Stampa ordinata\n"); printf ("COGNOME\tNOME\tDISCHI\t\n"); for (I = 0; I <= massimo; I++){ printf ("%s%s%f", cantanti[I].lastname, cantanti[I].firstname, cantanti[I].dischi); } return 0; }

Rispondi quotando