Variablen bestimmen see declaration of "variablenname"
-
Hallo! Bin hier neu im Forum und habe eine Frage! Und zwar hab ich folgendes Programm geschrieben und möchten gerne wissen was ich falsch gemacht habe! Beim Übersetzen kommen die Fehlermeldungen:
'double w1' : redefinition
see declaration of 'w1'
(die beiden oberen auch mit w2, w3, w4)Ist in C programmiert im Visual Studio c. Thx im Vorraus!
#include <stdio.h> #include <conio.h> void main() { double ww, w1, w2, w3, w4, erg; double w1 = (ww/100)*2; double w2 = (ww/100)*1.5; double w3 = (ww/100)*1; double w4 =ww; printf ("Herzlich Wilkommen beim Versandkostenberechner!\n"); printf ("Geben Sie bitte den Warenwert Ihrer Bestellung ein!\n"); scanf ("%d",&ww); printf ("Die Artikel, die Sie bestellt haben kosten ohne Versand %d Euro\n", ww); _getch(); if (ww <= 5000) { printf ("Die Versankosten betragen %d", w1); } if (ww >5000&& ww<=10000) { printf ("De Versandkosten betragen %d", w2); } if (ww >10000&& ww <= 15000) { printf ("Die Versandkosten betragen %d", w3); } if (ww >15000) { printf ("Sie bekommen die Versandkosten gratis!"); } _getch(); }
-
Hier definierst du deine Variablen:
double ww, w1, w2, w3, w4, erg;
und hier noch mal
double w1 = (ww/100)*2; double w2 = (ww/100)*1.5; double w3 = (ww/100)*1; double w4 =ww;
Das double kann im 2. Teil entfallen, da bereits bekannt ist, welchem Datentyp die Variablen zugeordnet sind
EDIT: im printf verwendest du den Platzhalter %d für double, dies ist allerdings nicht ganz korrekt und könnte zu Datenverlust führen. Nehme hier lieber %f (float) oder %lf (long float / double)
-
Ok! Danke für die Hilfe! Wollte %d nur nehmen damit ich keine zu langen Ergebnise habe! Aber mir ist jetzt wieder eingefallen das ich einfach .2lf schreiben kann.