Drucken Sie ein Muster mit While-Schleifen und nur mit der drei Ausgabe-Anweisungen in C

Habe ich eine Zuweisung für die Schule, dass ist wirklich das beste von mir.

Hier ist die Frage:

(2) Schreiben Sie ein C-Programm mit, während
Schleife(N) in Kombination mit nur den
folgende drei Ausgabe-Anweisungen
(Alle, die NUR EINMAL in Ihrem
Programm): printf("* "); printf("\n");
printf(“^“); zum drucken der Muster:

* * * * * * * * ^
* * * * * * * *
* * * * * * * * ^
* * * * * * * *
* * * * * * * * ^
* * * * * * * *

Hinweis: es ist ein Leerzeichen zwischen den einzelnen *
und die ersten, Dritten und fünften Linien
ein Leerzeichen vor dem ^.

Und hier ist mein code:

#include<stdio.h>

int main () {

 int star = 0;
 int row = 1;
 int hat = 1;

 while(row < 6) {

  printf(" *");
  star++; 

  while(star > 8) {

   while( (hat % 2) == 1) {

    printf(" ^"); 
   }

   printf("\n");
   row++;
  }
 }
    return 0; 
}

Ich habe versucht viele verschiedene Versionen von diesem code, und die meisten von Ihnen endete mit unendlich drucken Zeilen der *.

Wenn jemand helfen könnte wäre es toll, da habe ich versucht, und versucht auf diese für eine Weile jetzt, und obwohl ich wünschte, ich könnte halten Sie versuchen, Fristen sind Fristen, und Sie scheinen immer zu kommen zu schnell.

Dank

EDIT:

Rev. 2 des Kodex:

include<stdio.h>

int main () {
int star = 0;
int row = 1;
int hat = 0;

while(row <= 6) {

    printf(" *");
    star++; 

    while(star >= 8) {
        hat++;  

        if( (hat % 2) == 1) {
            printf(" ^");
            hat++;  
        }

        printf("\n");
        row++;
        star = 0;
    }
}
return 0;   
}

Hoffentlich bin ich beenden des loops korrekt, aber Es scheint nicht zu funktionieren.
Ich verlange nicht, für eine "get out of jail free" - Karte, aber alle sind willkommen.

InformationsquelleAutor Craig | 2010-01-31
Schreibe einen Kommentar