do{
printf("Inserisci il numero dell'elemento a cui vuoi mettere il prezzo ed il prezzo:\n");
printf("\n");

} while ( scanf("%u%*c%f",&i,&prezzo) != 2);

se ho capito...

do{
i=0;
prezzo = 0.0;
printf("Inserisci il numero dell'elemento a cui vuoi mettere il prezzo ed il suo prezzo:\n");
//formato 1 13.5
scanf("%u %f\n", &i,&prezzo);
}while(i!=0 || prezzo!=0.0);

anche se teoricamente scanf()!=2 dovrebbe andare bene...