既然出这样的问题,当然是想叫你一次完成了
断成两截虽然也不算错,但总是美中不足吧
我用一次循环就搞定了,
分析过程是这样的:
每行的个数分别是
1 3 5 3 1
发现没有,非常具有对称性,5刚好就是中间数
在整数里,绝对值也有对称性,取5个数的话0可以做中间数
所以借用了一个取绝对值的函数abs(),循环数用的就是-2到2这5个数
具体代码如下:
#include "math.h"
#include "stdio.h"
int main()
{
int hang,ge,geshu;
for(hang=-2 ; hang<3;hang++)
{
geshu =5-abs(hang)*2;
for( ge=0; ge< geshu;ge++)
{
printf("*");
}
printf("\n");
}
}