Ausgabeproblem in Code::Blocks < C/C++ < Programmiersprachen < Praxis < Informatik < Vorhilfe
|
Hallo, ich habe folgendes Problem:
Wenn ich bei Code::Blocks folendes eingebe:
#include <stdio.h>
int main()
{
int eingabe;
printf("Bitte Wert eigeben!");
scanf ("&d, &eingabe");
if (eingabe == 1) printf ("Sie haben eins [mm] eingegeben.\n");
[/mm]
else
{
if (eingabe == 2) printf ("Die Eingabe war [mm] zwei.\n");
[/mm]
else
{
if (eingabe == 3) printf ("Drei wurde [mm] eingegeben.\n");
[/mm]
else printf ("Es wurde etwas anderes [mm] angegeben.\n");
[/mm]
}
}
return 0;
}
Gibt er mir jedes mal aus, dass die Eingabe 2 sei.
Nun kann ich aber keinen Fehler in meiner Anweisung finden.
Liegt der Fehler vielleicht bei Code::Blocks?
Danke!
|
|
|
|
Eingabefehler: "{" und "}" müssen immer paarweise auftreten, es wurde aber ein Teil ohne Entsprechung gefunden (siehe rote Markierung)
Hallo Haloelite,
> Hallo, ich habe folgendes Problem:
>
> Wenn ich bei Code::Blocks folendes eingebe:
>
> #include <stdio.h>
>
> int main()
> {
> int eingabe;
>
> printf("Bitte Wert eigeben!");
>
> scanf ("&d, &eingabe");
>
> if (eingabe == 1) printf ("Sie haben eins [mm]eingegeben.\n");[/mm]Eingabefehler: "{" und "}" müssen immer paarweise auftreten, es wurde aber ein Teil ohne Entsprechung gefunden (siehe rote Markierung)
> else
> {
> if (eingabe == 2) printf ("Die Eingabe war
> [mm]zwei.\n");[/mm]Eingabefehler: "{" und "}" müssen immer paarweise auftreten, es wurde aber ein Teil ohne Entsprechung gefunden (siehe rote Markierung)
> else
> {
> if (eingabe == 3) printf ("Drei wurde
> [mm]eingegeben.\n");[/mm]
> else printf ("Es wurde etwas anderes
> [mm]angegeben.\n");[/mm]Eingabefehler: "{" und "}" müssen immer paarweise auftreten, es wurde aber ein Teil ohne Entsprechung gefunden (siehe rote Markierung)
Eingabefehler: "{" und "}" müssen immer paarweise auftreten, es wurde aber ein Teil ohne Entsprechung gefunden (siehe rote Markierung)
Eingabefehler: "{" und "}" müssen immer paarweise auftreten, es wurde aber ein Teil ohne Entsprechung gefunden (siehe rote Markierung)
> }
> }
>
> return 0;
> }
>
>
> Gibt er mir jedes mal aus, dass die Eingabe 2 sei.
> Nun kann ich aber keinen Fehler in meiner Anweisung
> finden.
>
> Liegt der Fehler vielleicht bei Code::Blocks?
>
Der Fehler liegt bei scanf.
Es muss hier lauten: scanf ("%d", &eingabe);
Übrigens, Programmcode kannst Du zwischen
[mm][code][/mm] und [mm][/code][/mm] einschließen:
1: |
| 2: | #include <stdio.h>
| 3: |
| 4: | int main()
| 5: | {
| 6: | int eingabe;
| 7: |
| 8: | printf("Bitte Wert eigeben!");
| 9: |
| 10: | scanf ("%d", &eingabe);
| 11: |
| 12: | if (eingabe == 1) printf ("Sie haben eins eingegeben.\n");
| 13: | else
| 14: | {
| 15: | if (eingabe == 2) printf ("Die Eingabe war zwei.\n");
| 16: | else
| 17: | {
| 18: | if (eingabe == 3) printf ("Drei wurde eingegeben.\n");
| 19: | else printf ("Es wurde etwas anderes angegeben.\n");
| 20: | }
| 21: | }
| 22: |
| 23: | return 0;
| 24: | }
| 25: | |
> Danke!
Gruss
MathePower
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 17:22 Di 10.06.2014 | Autor: | Haloelite |
Okay, danke!
Ich werds mir gleich mal ansehn.
|
|
|
|
|
ich habe den (ziemlich dämlichen...) Fehler verbessert.
Trotzdem kommt als Ausgabe immer "Es wurde zwei" eingegeben.
Ich bin jetzt irgendwie ratlos...
|
|
|
|
|
Hallo Haloelite,
> ich habe den (ziemlich dämlichen...) Fehler verbessert.
> Trotzdem kommt als Ausgabe immer "Es wurde zwei"
> eingegeben.
> Ich bin jetzt irgendwie ratlos...
Bei mir funktioniert das, so wie ich es korrigiert habe.
Es wird auch das Richtige ausgegeben.
Ich habe das unter Linux mit gcc kompiliert.
Schreibe doch die printf-Anwesiungen in geschweiften Klammern.
1: |
| 2: | #include <stdio.h>
| 3: |
| 4: | int main()
| 5: | {
| 6: | int eingabe;
| 7: |
| 8: | printf("Bitte Wert eigeben!");
| 9: |
| 10: | scanf ("%d", &eingabe);
| 11: |
| 12: | if (eingabe == 1) {printf ("Sie haben eins eingegeben.\n");}
| 13: | else
| 14: | {
| 15: | if (eingabe == 2) { printf ("Die Eingabe war zwei.\n");}
| 16: | else
| 17: | {
| 18: | if (eingabe == 3) {printf ("Drei wurde eingegeben.\n"); }
| 19: | else { printf ("Es wurde etwas anderes angegeben.\n"); }
| 20: | }
| 21: | }
| 22: |
| 23: | return 0;
| 24: | }
|
Gruss
MathePower
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 17:41 Di 10.06.2014 | Autor: | Haloelite |
Ich werde es versuchen, ansonsten bleibt mir noch, den Compiler neu zu installieren.
Danke aber für die Gewissheit, dass es nicht an mir liegt. :)
Grüße
|
|
|
|