#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(j=i;j<5;j++)
{
printf(" "); 打印里面只有一个空格啊,怎么做到一下子变多个空格的
}
还有
for(k=0;k<2*i-1;k++)
{
printf("*"); 怎么做到一行输出多个*号的
}
求大神讲解,谢谢
*/
你先回去把循环体复习一边,再来看这个多重循环体。
要先了解代码应该先了解运行结果表达的意思
,这是运行结果。
1:这里一共四行,所以代表循环四次。
2:由上到下4行*的数量依次为 1 3 5 7,所以代表循环输出* 1次 3次 5次 7次
3:注意一点在运行结果的左上角共有6个空格,依次排序为3个空格,2个空格,1个空格。
排序出来表达全部意思就是
第一行先输出3个空格和1个* 换下一行,
第二行输出2个空格和3个* 换下一行,
第三行输出1个空格和5个* 换下一行,
第四行直接输出7个* 结束。
还有,这是从上往下输出还是从下往上输出啊