Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Eingabe Speicherung in der while Schleife (C)

Frage Entwicklung C und C++

Mitglied: mrcljnff

mrcljnff (Level 1) - Jetzt verbinden

24.02.2015, aktualisiert 19:17 Uhr, 1243 Aufrufe, 2 Kommentare

Hallo,

ich bin ein ziemlicher anfänger in C. Zurzeit Möchte ich ein programm schreiben, dass Getränke bestellungen einliest und diese dann zusammen rechnet. Ich bin soweit dass er die aktionen von der Bestellungen und der Anzahl der Getränke wiederholt, aber das Programm, rechnet nur die letzte eingabe zusammen. Wahrscheinlich funktioniert das nicht mit der while Schleife aber ich bin noch nicht soweit um andere Befehle zu benutzen.


int main()
{
int eingabe, anzahl, weitere;
double Preis;

do
{ printf("Herzlich Wilkommen zum Getränkeautomatspezial!ßn\n");
printf("Was moechten Sie tun?:\n");
printf("1 -- Getränke Kaufen");
printf("2 -- Promille-Rechner\n");
printf("3 -- Programm Verlassen\n");
printf("Eingabe: ");
scanf("%i", &eingabe);
}
while( eingabe > 3 || eingabe < 1);

if(eingabe==1)
{

do
{
printf("Bitte waehle ein Getränk aus:\n");
printf("1 -- Bier\n");
printf("2 -- Kaffee\n");
printf("3 -- Fanta/Spezi/Cola/Sprite\n");
printf("4 -- Wasser\n");
printf("x -- Ende\n");
printf("Eingabe: ");
scanf("%i", &eingabe);
}

while(eingabe < 1 || eingabe > 4);
switch(eingabe){
case 1:
Preis = 2.80;
break;
case 2:
Preis = 2.30;
break;
case 3:
Preis = 2.50;
break;
default:
Preis = 1.80;
break;
}
}



printf("Wie viel moechten Sie kaufen?: ");
scanf("%i", &anzahl);
printf("Eingabe:%i", anzahl);
Preis=Preis*anzahl;
printf("Preis: %.2lf", Preis);



printf("Moechten Sie weitere Getränke Kaufen?\n");
printf("Drueckn Sie 1 fuer Ja oder 2 fuer Nein ");
scanf("%i", &weitere);


while( eingabe == 1){




do
{
printf("Bitte waehle ein Getränk aus:\n");
printf("1 -- Bier\n");
printf("2 -- Kaffee\n");
printf("3 -- Fanta/Spezi/Cola/Sprite\n");
printf("4 -- Wasser\n");
printf("x -- Ende\n");
printf("Eingabe: ");
scanf("%i", &eingabe);
}

while(eingabe < 1 || eingabe > 4);
switch(eingabe){
case 1:
Preis = 2.80;
break;
case 2:
Preis = 2.30;
break;
case 3:
Preis = 2.50;
break;
default:
Preis = 1.80;
break;
}



printf("Wie viel moechten Sie kaufen?: ");
scanf("%i", &anzahl);
printf("Eingabe:%i", anzahl);
Preis=Preis*anzahl;
printf("Preis: %.2lf", Preis);



printf("Moechten Sie weitere Getränke Kaufen?\n");
printf("Drueckn Sie 1 fuer Ja oder 2 fuer Nein ");
scanf("%i", &weitere);




}




return 0;
Mitglied: rubberman
LÖSUNG 24.02.2015, aktualisiert um 19:17 Uhr
Hallo mrcljnff,

du überschreibst den Wert der Variablen Preis in den case Anweisungen. Du musst also schon eine weitere Variable deklarieren, um die Summe zu speichern.

BTW: Variablen haben bei der Deklaration immer den Wert, der zufällig in deren Speicherbereich steht. Darum gilt: Immer initialisieren!
z.B.
int eingabe = 0;

Grüße
rubberman
Bitte warten ..
Mitglied: mrcljnff
24.02.2015 um 19:19 Uhr
Hallo runberman,

vielen Dank es hat funktioniert!
Auch der Tipp mit der Initialisierung war sehr hilfreich!
Bitte warten ..
Ähnliche Inhalte
Cloud-Dienste
Favoriten Speicherung
Frage von TheOnlyOneCloud-Dienste4 Kommentare

Hallo zusammen, wir sind schon seit längerem auf der Suche nach einer Möglichkeit die Favoriten unserer Kollegen im eigenen ...

Visual Studio
Sub für Speicherung der Settings
Frage von ahstaxVisual Studio1 Kommentar

Tach, ist es irgendwie sinnvoll möglich, ein Sub für die Speicherung von Settings zu schreiben? Ich hab nachfolgendes probiert: ...

Batch & Shell
Batch Schleife als FOR-SCHLEIFE
gelöst Frage von mp2711Batch & Shell2 Kommentare

Mit den FOR-Schleifen habe ich mich leider bislang zu selten auseinander gesetzt, aber da ich sonst gerade nicht weiter ...

Batch & Shell
Powershell Menü mit While und Switch Schleife mehrere richtigen Eingaben zulassen jedoch falsche Eingaben verhindern
gelöst Frage von windelterroristBatch & Shell4 Kommentare

Hallo Admins :) Habe ein kleines Problemchen mit Powershell In meinem Script möchte ich mit Switch-Menü falsche Eingaben verhindern ...

Neue Wissensbeiträge
Mac OS X

MacOS wo ist die Tilde ?

Tipp von Alchimedes vor 6 StundenMac OS X1 Kommentar

Hallo, ich hab eine MacOS qwertz Keyboard auf US Layout umgestellt da die Sonderzeichen besser erreichbar sind. Leider fehlt ...

Datenschutz

Weitere Informationen zum Sicherheitsproblem BeA

Information von Penny.Cilin vor 13 StundenDatenschutz

Im folgenden ein weiterer Bericht über die Sicherheitsprobleme von Bea. Fataler Konstruktionsfehler im besonderen elektronischen Anwaltspostfach Gruss Penny

Windows 10

Systemdienste behalten nach Win10 inplace-Upgrade nicht die ggf. modifizierte Startart bei

Tipp von DerWoWusste vor 14 StundenWindows 103 Kommentare

Stellt Euch vor, Ihr habt ein Win10 System und modifiziert dort die Startart von Systemdiensten. Zum Beispiel wollt Ihr ...

Microsoft Office

Deaktivieren von Startbildschirm und Backstage-Ansicht in Office 2016 per Batch-Datei

Anleitung von SarekHL vor 17 StundenMicrosoft Office17 Kommentare

Guten Morgen zusammen! Ich habe mir gestern (auch mit Hilfe dieses Boards) ein Script gebastelt, um in Office 2016 ...

Heiß diskutierte Inhalte
Netzwerke
NTFS-Berechtigung
Frage von Daoudi1973Netzwerke23 Kommentare

Hallo zusammen und frohes neues Jahr (Sorry, ich bin spät dran) Meine Frage: 1- Ich habe einen Ordner im ...

Batch & Shell
AD-Abfrage in Batchdatei und Ergebnis als Variable verarbeiten
gelöst Frage von Winfried-HHBatch & Shell19 Kommentare

Hallo in die Runde! Ich habe eine Ergänzungsfrage zu einem alten Thread von mir. Ausgangslage ist die Batchdatei, die ...

Windows 10
Netbook erkennt Soundkarte nicht - keinerlei Info zum Hersteller und Modell vom Netbook und Hardware bekannt
Frage von fyrb38Windows 1018 Kommentare

Guten Tag, meine Schwester reist in einigen Wochen für ein paar Monate ins Ausland und hat sich dafür ein ...

Microsoft Office
Deaktivieren von Startbildschirm und Backstage-Ansicht in Office 2016 per Batch-Datei
Anleitung von SarekHLMicrosoft Office17 Kommentare

Guten Morgen zusammen! Ich habe mir gestern (auch mit Hilfe dieses Boards) ein Script gebastelt, um in Office 2016 ...