C'est une conséquence du scanf précédent :

scanf("%d",&prix_uni);celui-ci laisse dans le tampon clavier au minimum le caractère '\n' qui donc est lu dans la foulée par le scanf("%c",...) sans...