提问:
c语言。打印数字金字塔。
for循环中为什么是j < i+1 呢?以及如何判断这里的控制变量到底是与n有关还是与循环变量i有关呢? 需要详细的解答
#include<stdio.h>
void pinrtTriangle(int n)
{
int num = 1; //输入的内容
for(int i = 0;i < n;i++)
{
for(int j = 0;j < i+1;j++) //为什么是j < i+1 呢?以及如何判断这里的控制变量到底是与n有关还是与循环变量i有关呢? 需要详细的解答
printf("%d",num++);
printf("\n");
}
}
int main()
{
int n;
scanf("%d",&n);
pinrtTriangle(n);
return 0;
}
解答:
你输入数字10,就会打印10行语句,第一行语句打印了一个元素,第二行语句打印了两个元素,第三行语句打印了三个数字,因此可以发现每次需要打印当前行次数,而外层for循环中i变量代表当前行,因此只需要在内层for循环写个条件,使得循环i次,而内存for循环从0开始,因此j<i+1或者j<=i
标签:语句,数字,int,打印,++,循环,金字塔 From: https://www.cnblogs.com/dituirenwu/p/17061980.html