如何在c中打印0直角三角形?

时间:2014-08-25 09:28:34

标签: c

模式:

0
00
000
0000
00000
000000

#include<stdio.h>
int main()
{
 int value = 6;
 for(int i = 1; i < value+1; i++);
 {
  for(int j = 1; j <= i; j++);
   printf("0");
  printf("\n");
 }
 return 0;
}

并且第1行由1 0组成,第2行组成2 0,依此类推,直到第N行,由N个零组成。喜欢以下模式。

0
00
000
0000
00000
000000

注意:我必须给出正整数N并打印N行。

我的错误:

Program: In function 'main':
Program:7:21: error: 'i' undeclared (first use in this function)
Program:7:21: note: each undeclared identifier is reported only once for each function it appears in

3 个答案:

答案 0 :(得分:3)

;两个语句的末尾都有一个for,这会立即关闭for循环,这意味着i变量超出范围且无法使用。

答案 1 :(得分:0)

在C中没有声明( )内的变量。

int i;  // declare globally
//  do your stuff
for(i = 1; i < value+1; i++)

如果在循环语句之后放置;冒号,则循环会自行阻塞,直到条件失败。它将执行下一行。因此,请在;循环后删除for

试试这个 -

#include<stdio.h>
int main()
{
        int value,i,j;
        printf("Enter the number of rows\n");
        scanf("%d",&value);
        printf("-----------------\n");
        for(i = 1; i < value+1; i++)
        {
                for(j = 1; j <= i; j++)
                printf("0");
                printf("\n");
        }
        return 0;
}

答案 2 :(得分:0)

首先删除分号&amp;记住控制结构你不能在它的末尾加分号,所以删除分号,

顺便说一下,如果你仍然得到错误,那么将你的int i和j放在for循环之外,