2016-04-26 5 views
0

Ich mache gerade den CD50 Online-Kurs, und ich habe Probleme mit Schleifen. Ich weiß, dass es bei 0 beginnt. Und ich denke, das ist es, was mich abstößt.Schleifen in C und wie man es richtig benutzt

Meine Aufgabe ist es, "Mario" Schritte mit einer vom Benutzer angegebenen Nummer zu erstellen. How it should look

Ich habe versucht, dieses Problem zu beheben, indem die Schleife auf 1 statt 0 Start Aber ich würde eher verstehen, wie es richtig zu machen.

int height; 
string hash = "#"; 
string empty = " ";  

do 
{ 
    printf("Height: "); 
    height = GetInt(); 

} 
while (height > 23 || height <= 0); 
{ 
    printf("Height = %i\n", height); 

for (int step = 0; step < height; step++) 
{ 

    for(int spaceNumber = height; spaceNumber >= step; spaceNumber--) 
    { 
     printf("%s",empty); 

    } 
    for(int hashNumber = 0; hashNumber <= step; hashNumber++) 
    { 
     printf("%s",hash); 

    } 

    printf("\n"); 
} 

} 

}

+0

Sie in Ihrem Code mehrere Fehler haben ... die ';' nach dem ersten while-Schleife zeigt an, dass Sie Schleife wird für immer die Bedingung wahr ist. .. –

Antwort

0

Nachdem bei meinem Code suchen wieder fand ich, dass, wenn ich für (int Schritt = 0; Schritt < Höhe; Schritt ++) halten, und fügen Sie für (int Schritt = 0; Schritt < = Höhe ; Schritt ++) es funktioniert.

Dank für meine Gummi-Ente niemand zu sein .....

+0

Wenn Sie Ihre Frage beantwortet haben, können Sie sich selbst als beste Antwort auswählen! – user161778