2017-03-05 4 views
-1

im sein muss,tun, während Muster der Ausgang das gleiche fragen, wie zB

ist es posible diese for loop innerhalb for loop zu einem do while loop zu konvertieren?

hier ist der Code:

int i, j, rows; 

printf("Enter number of rows: "); 
scanf("%d",&rows); 

for(i=1; i<=rows; ++i) 
{ 
    for(j=1; j<=i; ++j) 
    { 
     printf("* "); 
    } 
    printf("\n"); 
} 

hier ist, was ich versucht habe:

int i, j, rows; 

    printf("Enter number of rows: "); 
    scanf("%d",&rows); 
    i=1; 
    j=1; 

do { 

    printf("* "); 
    i<=rows; 
    ++i; 
    ++j; 

} while (j<=i); 

    printf("\n"); 

    getch(); 
    return 0; 
} 

alles habe ich versucht, aber kein Glück konnte. nebenbei versuche ich, ein Sternenmuster mit einer do while loop Hilfe zu tun, wird schätzen.

+0

Warum? Eine Schleife ist eine Schleife. Wenn eine For-Schleife sinnvoll ist, verwenden Sie eine For-Schleife. Sie erhalten eine 'do while'-Schleife, die sich sowieso wie eine' for'-Schleife verhält. –

+0

aber ich muss einer Regel folgen. es sagt, dass ich while Schleife anstelle von for Schleife verwenden muss –

Antwort

1

in Ihrem Code haben Sie nur eine do while Schleifen Sie zwei verschachtelte do while Schleife, um Ihr Ziel zu erreichen nutzen sollen:

i=1; 
    j=1; 
do { 
    do { 
    printf("* "); 
    ++j;  
    } while (j<=i); 

    printf("\n"); 
    i++; 
    j=1; 
} while(i <= rows); 

Testprogramm: https://ideone.com/QhN3l4

Verwandte Themen