从题目中可以看出四边形一共有5行,每一行有8个“*”,同时可以看到空格的个数是行数减去一,
故,假设行数为n,且从一开始,在设置另一个变量为m,从图中可知,每一行中都有比行数小一个空格,所以当打印空格时,令m=1,在这样的嵌套式的for循环中,就可以满意打印空格的条件(开始时n=m=1,不能打印空格,在打印8个“*”后,m=1<n=2,此时打印一个空格,以此类推),同时每次打印8个“*”,即让m=1,m<9就能满足条件。
#include <stdio.h>
int main()
{
int n, m;
for (n = 1; n < 6;n++) //四边形一共有5行
{
for (m = 1; m< n; m++) //每一行需要打印行数减去一个空格
{
printf(" ");
}
for (m = 1; m < 9; m++) //每一行需要打印8个*
{
printf("*");
}
printf("\n");
}
return 0;
}