使用*进行循环

时间:2019-03-25 07:22:50

标签: c for-loop

我正在尝试使用*作为文本进行循环。我正在尝试使输出看起来像这样:

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

我有点不确定该怎么做。我目前有:

#include <stdio.h>

int main(int argc, const char *argv[]) {

   int i=1;
   while (i <= 4)
   {
    printf("%d\n",i);
    i++;
   }
   return 0;
}

此输出:

1
2
3
4

我可以帮忙一些将数字更改为(*)形式吗?谢谢,

3 个答案:

答案 0 :(得分:0)

在这里,尝试一下:

#include <stdio.h>

int main(int argc, const char *argv[]) {

    int i, j;
    for(i = 0; i <= 5; ++i)
    {
            for(j = i; j > 0; j--)
            {
                printf("* ");
            }
            printf("\n");
    }
   return 0;
}

答案 1 :(得分:0)

当前您正在打印i的值,该值的范围是1到4,因此结果是这样。对于这种类型的模式,通常需要为外部循环处理行和内部loo-p处理列嵌套for循环。然后printf将打印您想在图案上看到的数据

您可以尝试

#include <stdio.h>

int main(int argc, const char *argv[]) {

    int i, j;
    for(i = 0; i <= 5; ++i)
    {
            for(j = i; j > 0; j--)
            {
                printf("* ");
            }
            printf("\n");
    }
   return 0;
}

答案 2 :(得分:-2)

当前,您仅在要打印的行数上进行迭代。您需要围绕要打印的星号的数量进行另一次迭代。

top:50px