超级炖蛋
2020-06-07 11:52
#include <stdio.h>
int main()
{
int i, j, k;
for(i=1; i<5; i++)
{
/* 观察每行的空格数量,补全循环条件 */
for(j=i;j<5;j++)
{
printf(" "); //输出空格
}
/* 观察每行*号的数量,补全循环条件 */
for(k=0;k<2*i-1;k++)
{
printf("*"); //每行输出的*号
}
printf("\n"); //每次循环换行
}
return 0;
}
第二个子循环for(k=0;k<2*i-1;k++),因为i=2,k<3,那他不是循环两次嘛,为什么第一行只有一个*
这里i=1;
for语句表示为:for(A; B; C))
执行顺序为:
1. 执行A
2. 判断B,若为真进入循环,若为假跳过(跳出)循环
3. 进行完一次循环后,执行C
4. 重复2、3步,直到判断B为假后,跳出循环
C语言入门
926020 学习 · 20793 问题
相似问题