Habe vor kurzer Zeit angefangen, mich in C einzulernen, da für mich Programmieren schon immer reizvoll war. Nun habe ich mich hier angemeldet, um Teil einer Community zu werden und euch mit meinen Fragen zu belästigen

Das habe ich gleich ein Problem, bei dem ihr mir vielleicht behilflich sein könnt. Doch zuerst der Code (es handelt sich um ein Übungsprogramm, um Schleifen und if-Anweisungen zu testen):
Code: Alles auswählen
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
//Getränkeautomat
int drink;
int menge;
float preis;
float geld;
float zuZahlen;
float change;
char weiter;
do
{
system ("Cls");
printf ("Get-A-Drink 2000\n\n\n");
printf ("\n1 - Cola - 1.50 Euro\n");
printf ("2 - Fanta - 1.30 Euro\n");
printf ("3 - Sprite - 1.20 Euro\n\n");
do
{
printf ("Geben Sie die Nummer Ihres Wunschgetraenks ein: ");
scanf ("%d", &drink);
fflush(stdin);
if (drink != 1 && drink != 2 && drink != 3)
{
printf ("\n\nIhre Eingabe war leider falsch. Bitte versuchen Sie es erneut.\n\n");
}
}
while (drink != 1 && drink != 2 && drink != 3);
switch (drink)
{
case 1:
{
preis = 1.50;
printf ("\n\nSie haben sich fuer erfrischende Cola entschieden.\n");
break;
}
case 2:
{
preis = 1.30;
printf ("\n\nSie haben sich fuer fruchtige Fanta entschieden.\n");
break;
}
case 3:
{
preis = 1.20;
printf ("\n\nSie haben sich fuer spritzige Sprite entschieden.\n");
break;
}
}
do
{
printf ("\n\nWieviele Flaschen moechten Sie kaufen (max. 5)?\n");
scanf ("%d", &menge);
if (menge > 5 || menge < 1)
{
printf ("\n\nIhre Eingabe war leider falsch. Bitte versuchen Sie es erneut.\n\n");
}
}
while (menge > 5 || menge < 1);
zuZahlen=preis*menge;
do
{
printf ("\n\nEs fehlen noch %.2f Euro.\n\n", zuZahlen);
printf ("Bitte werfen Sie ein Geldstueck ein: ");
fflush(stdin);
scanf ("%f", &geld);
[b]while (geld != 2 && geld != 1 && geld != 0.50 && geld != 0.10 && geld != 0.20)
{
printf ("\n\n\nDas Geldstueck wurde leider nicht erkannt.\n");
printf ("\n*KLING* (Das Geldstueck liegt im Fach.)\n\n");
system ("PAUSE");
printf ("\n\nEs fehlen noch %.2f Euro.\n\n", zuZahlen);
printf ("Bitte werfen Sie ein Geldstueck ein: ");
fflush(stdin);
scanf ("%f", &geld);
}[/b]
zuZahlen -= geld;
}
while (zuZahlen > 0);
printf ("\n\nVielen Dank! Sie erhalten nun Ihre Auswahl!\n\n");
system ("PAUSE");
if (menge == 1)
{
printf ("\n\n*KDONK* (Das Getraenk liegt im Entnahmefach.)\n\n");
system ("PAUSE");
}
else
{
printf ("\n\n*KDONKDONK* (Die Getraenke liegen im Entnahmefach.)\n\n");
system ("PAUSE");
}
change=zuZahlen * -1;
if (change != 0)
{
printf ("\n\nSie bekommen ausserdem %.2f Euro zurueck.\n\n", change);
system ("PAUSE");
printf ("\n\n*KLING* (Das Wechselgeld liegt im Fach.)\n\n");
system ("PAUSE");
}
printf ("\n\nVielen Dank fuer Ihren Einkauf!\n\n");
system ("PAUSE");
do
{
printf ("\n\nMoechten Sie weitere Getraenke kaufen? j/n\n");
fflush(stdin);
scanf ("%c", &weiter);
}
while (weiter != 'j' && weiter != 'n');
}
while (weiter == 'j');
printf ("\n\nAuf Wiedersehen!\n\n");
return 0;
}
Falls jemand Lust hat, seine Zeit für eine Antwort aufzubringen, würde ich mich sehr darüber freuen.
Vielen Dank im Voraus.
Viele Grüße
Rico