Hallo,
ich habe hier folgendes c-Programmfragment:
»» while(counter<9)
> {
> [...]
> }
Hat jemand ne Idee woran das liegen könnte?
Du Musst noch den Tastaturpuffer leeren. Dies machst du mit fflush( stdin );
Dann kannst du eine Variable nicht 9 mal deklarieren:
»» while(counter<9)
> {
> int pos=-1;
▲▲▲
Zudem ist dieser Schritt sinnlos, da du ihn eh wieder überschreibst, und ~~~c
dazwischen diese Variable nicht verwendest:
pos = ((int)readChar) - 48;
Bei einer Fest definierten Anzahl an Durchläufen macht sich eine For-Schleife am besten:
~~~c
for( counter=0; counter<9; counter++ )
{
//...
}
Zudem fehlt noch das Error-Handling. Was, wenn der User keine Zahl eingibt? Dann kann das Programm anstürzen oder zumindest Fehlerhaft arbeiten.
Prüfe deswegen, ob der eingegebene Wert eine Zahl ist.
MfG. Christoph Ludwig
--
Wo die Sprache aufhört, fängt die Musik an...
Selfcode: sh:) fo:) ch:° rl:( br:^ n4:} ie:{ mo:} va:) js:| de:] zu:) fl:( ss:| ls:~
Go to this
Wo die Sprache aufhört, fängt die Musik an...
Selfcode: sh:) fo:) ch:° rl:( br:^ n4:} ie:{ mo:} va:) js:| de:] zu:) fl:( ss:| ls:~
Go to this