0

任务是仅使用while循环打印以下形状。

*
**
***
****
*****
******
*******
********
*********

以下代码是我已经尝试过的,但不幸的是它不起作用:

#include "stdafx.h"//Visual Studio 2015
#include <stdio.h>
#include <stdlib.h>// using for command system("pause") ;
#include <math.h>


    int main()
    {
        int i=0, k=0;
        while (i < 10)
        {
            while (k <= i)
            {
                printf("*");
                k++;
            }
            printf("\n");
            i++;
        }
        system("pause");
        return 0;
    }

我不能自己调试它。任何人都可以为我调试这个吗?

4

2 回答 2

5

您必须将k=0其放入循环中,以使其在每个循环中都归零。

    int main() {
        int i=0, k=0;
        while (i < 10)
        {
            k=0; //<-- HERE
            while (k <= i)
            {
                printf("*");
                k++;
            }
            printf("\n");
            i++;
        }
        system("pause");
        return 0;
    }
于 2016-07-22T13:07:18.900 回答
0

它只需要很少的修正

int i=0; 
    while (i < 10)
    {
    int k=0;
        while (k <= i)
        {
            printf("*");
            k++;
        }
        printf("\n");
        i++;
    }

工作示例

于 2016-07-22T13:09:52.557 回答