Zahlen einlesen und ausgeben
-
Hallo,
ich habe hier eine Hausaufgabe:
Schreiben Sie ein Programm, das eine Integer-Zahl von der Tastatur einliest und
das zugehörigen ASCII-Zeichen und den Zahlenwert als Dezimalzahl auf dem Bildschirm ausgibt. Das Einlesen soll solange wiederholt werden, bis die Zahl „0“ eingegeben wird.main() { int zahl; zahl = 1; while(zahl >0) { printf("\nZahl (HEX) eingeben: "); scanf("%X", &zahl); printf("\nASCII: %c \nDezimal: %d\n", zahl, zahl); } while(1); }
ist das richtig? Also es funkioniert ja, aber kann man das evtl besser schreiben?
Gruß juniorcrew
-
int main(void) { int zahl; do { printf("\nZahl (HEX) eingeben: "); scanf("%X", &zahl); printf("\nASCII: %c \nDezimal: %d\n", zahl, zahl); }while(zahl != 0); return 0; }
-
Hmmmm,...
wo ist der unterschied zwischen diesen beiden schleifenarten?
Gruß Sven
-
juniorcrew schrieb:
wo ist der unterschied zwischen diesen beiden schleifenarten?
Die
while
-Schleife ist eine sog. kopfgesteuerte Schleife, d.h. die Bedingung wird vor dem Eintreten in den Block geprüft -> man kommt nicht zwangsläufig in den Block hinein.Die
do-while
Schleife ist eine sog. fußgesteuerte Schleife, d.h. die Bedingung wird erst am Ende des Blocks geprüft -> die Schleife wird IMMER mindestens 1 Mal durchlaufen.Gez. monstermunchkin