为了账号安全,请及时绑定邮箱和手机立即绑定

有人知道用while的语句怎么打吗?我试了下,但不知道哪里错了

#include <stdio.h>
int main()
{
    int a=1,b=1,c=1;
    while(a<5)
    {
        while(b<5-a)
        {
            b++;
            printf(" ");
        }
        while(c<=2*a-1)
        {
            c++;
            printf("*");
        }
        a++;
        printf("\n");
    }
    return 0;
}

我输出的是

   *
**
**
**

正在回答

6 回答

http://img1.sycdn.imooc.com//5da0872c0001c67401980370.jpg。。。

0 回复 有任何疑惑可以回复我~

#include <stdio.h>
int main()
{
    int a=1;
    do
    {
        int b=1;
        do
        {
            printf(" ");
            b++;
        }while(b<=5-a);
            int c=1;
        do
        {
            printf("*");
            c++;
        }while(c<=2*a-1);
        printf("\n");
        a++;
    }while(a<5);
    return 0;
}

这个是我用do-while的结构打出来的

0 回复 有任何疑惑可以回复我~

有兴趣想深入了解的可以查看我的笔记,我一般是采用更多的方法去解决一道题目的


0 回复 有任何疑惑可以回复我~

#include <stdio.h>     
int main()
{
    int a=1;
    while(a<5)
    {
        int b=1;
        while(b<5-a)
        {
            printf(" ");
            b++;
        }
        int c=1;
        while(c<=2*a-1)
        {
            printf("*");
            c++;
        }
        printf("\n");
        a++;
    }
    return 0;
}

这个是我自己用while语句打的,想深入学习的可以了解一下,这个是正确的,同学们可以尝试一下,虽然我也是新生

0 回复 有任何疑惑可以回复我~

为什么会错呢?

因为如果int a,int b,int c放在刚才的那个位置的话,那么在第二次循环的时候b的值就不再等于1了,而是等于2了,c也是一样的,所以输入在里面是为了重新赋值                   

 这是我本人的理解

1 回复 有任何疑惑可以回复我~
#include <stdio.h>int main(){int i=1, j, k;while (i<5){j = i;while (j<5){printf(" ");j++;}k = 0;while (k<2*i-1){printf("*");k++;}i++;printf("\n");}return 0;}


1 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

有人知道用while的语句怎么打吗?我试了下,但不知道哪里错了

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信