#C while Schleife und die If anweisung füllen die platzhalter allein aus BITTE UM RAT!

...komplette Frage anzeigen Der Code - (Programm, c-sprache, hilfe-gesucht)

2 Antworten

Habe leider meinen Mikrofilmleser letzte Woche verschrottet.

Konntest du das ganze per Softkopie und Codefenster hier einstellen:

Das ist ein Codefenster
Danixd75 15.09.2014, 19:44
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>

int main(int argc, char *argv[]) { 
 int Ende,x; 
while (Ende!=2){
printf ("\t\t\tHexadezimal Rechner\n");
printf ("\nProgramm Starten (1)\nProgramm schliessen (2)");
printf ("\n\nIhre Wahl:");
scanf ("%i",&x);
if (x == 1){    
char bs;
printf ("Bitte einen Buschstaben oder eine Zahl angeben:");
scanf ("%c",&bs);
printf ("\n\nDie Hexadezimal Zahl von \x10%c\x11lautet: \x10%x\x11\n\n\n\n
\n\n\n\n",bs,bs);
}
if (x == 2){
printf ("\n\nProgramm beendet!\n\n");
return 0;
  }
 }
}

Hier ist der Code und danke für deine Interesse! :D

0
bmke2012 16.09.2014, 10:12
@Danixd75

Mir fällt beim schnellen Durchsehen nur eine Sache auf:

char bs;

Eine Variablendeklaration innerhalb des Programmes oder gar einer Programmschleife ist schlechter Programmierstil. Die Variable wird in der Schleife bei jedem Durchlauf neu angelegt und vermehrt sich dauernd. Nur woher soll der Compiler/Rechner wissen, welche Version die korrekte ist.

Alle Variablendeklaration gehören an den Anfang!

0
Danixd75 16.09.2014, 20:44
@bmke2012

Ok danke für den Tipp aber ich muss sagen das ich das nur Testweise so geschrieben habe. Aber troztdem weiss ich immer noch nicht warum der platzhalter oder besser gesagt die Schleife alles mit ausgefüllten Platzhaltern wiederholt (aber nur mit einem 'a'), Und dann wieder richtig arbeitet.

0

Was möchtest Du wissen?