模式:
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
答案 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循环之外,