Charakter < C/C++ < Programmiersprachen < Praxis < Informatik < Vorhilfe
|
Status: |
(Frage) beantwortet | Datum: | 15:57 Do 01.07.2010 | Autor: | Ice-Man |
Hallo,
ich habe im Anhang mal nen Programm.
Jetzt ist meine Frage, wie ich die "Auswahlentscheidung" anstatt mit 0 und 1 auch mit Ja oder Nein machen kann. (Also j / n)
Muss ich das mit nem Charakter machen?
[Dateianhang nicht öffentlich]
Dateianhänge: Anhang Nr. 1 (Typ: jpg) [nicht öffentlich]
|
|
|
|
> Hallo,
> ich habe im Anhang mal nen Programm.
>
> Jetzt ist meine Frage, wie ich die "Auswahlentscheidung"
> anstatt mit 0 und 1 auch mit Ja oder Nein machen kann.
> (Also j / n)
> Muss ich das mit nem Charakter machen?
>
> [Dateianhang nicht öffentlich]
>
1: |
| 2: | char j;
| 3: | ...
| 4: | do{
| 5: | ...
| 6: | printf(" Wiederholung des Programms? (j/n)");
| 7: | fflush(stdin);
| 8: | scanf("%c",&j);
| 9: | }while(j=='j');
| 10: |
|
gruß tee
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 17:00 Do 01.07.2010 | Autor: | Ice-Man |
Mal noch eine Frage bitte.
Warum funktioniert das denn einfach so in deiner 10. zeile mit j=='j'
Ich wäre so vorgegangen, das ich für dein "normales j" ne andere Variable deklariert hätte.
Und warum muss ich das "j" dann auch in Hochkommas setzten?
|
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 17:08 Do 01.07.2010 | Autor: | Loddar |
Hallo Ice-Man!
Warum in Hochkommata? Weil hier genau der Bucstabe / die Eingabe mit der j-Taste gemeint ist.
Bei jeder anderen Eingabe wird die Schleife abgebrochen.
Damit es nicht zu diesen Irritationen kommt, kannst Du die char-Variable auch anders nennen, nicht gerade j.
Denn in der Syntax j=='j' ist links die Variable gemeint und rechts die Eingabe des Kleinbuchstabes j.
Gruß
Loddar
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 17:13 Do 01.07.2010 | Autor: | Ice-Man |
Also muss ich immer, wenn ich "eine Eingabe (Buchstabe)" tätigen will, und diese "programmieren" will, diese dann in "Hochkommas" setzen?
Und vorher dann auch "am Anfang des Programms" das mit "char" charakterisieren.
|
|
|
|
|
> Also muss ich immer, wenn ich "eine Eingabe (Buchstabe)"
> tätigen will, und diese "programmieren" will, diese dann
> in "Hochkommas" setzen?
>
> Und vorher dann auch "am Anfang des Programms" das mit
> "char" charakterisieren.
hallo,
mir sind hier zuviele anführungszeichen, und die frage ansich versteh ich auch nicht ganz..
wenn du eine zahl abfragen willst, musst du doch auch erst eine int-variable deklarieren und sie abfragen, nachdem sie durch die eingabe beschrieben wurde.
und mit char läuft das genauso, nur dass es wie bereits erwähnt unterschiede gibt durch die ascii-zeichen
gruß tee
|
|
|
|
|
> Mal noch eine Frage bitte.
>
> Warum funktioniert das denn einfach so in deiner 10. zeile
> mit j=='j'
>
> Ich wäre so vorgegangen, das ich für dein "normales j" ne
> andere Variable deklariert hätte.
>
> Und warum muss ich das "j" dann auch in Hochkommas setzten?
also wenn wir n char deklarieren, kann er ein ascii zeichen darin speichern.
die tabelle findest du bei google.
wenn du nun eine zahl bzw auch ziffer eintippt, wird es als "zahl" gespeichert.
quasi, wenn du ein h eingibst, steht in der variablen die nummer 104.
bei einer 5 die nummer 53.
bei der if kannst du nun, wenn du fragen möchtest, ob ein "h" eingetippt wurde mit if (var='h') oder if (var=104) diese verifizierung machen
gruß tee
|
|
|
|