这篇文章用作给大家演示如何发天花板编程手把手计划的打卡贴
其实没有第0天,哈哈
题目
请用代码在屏幕上打印出下面这幅图。
原文:http://www.jianshu.com/p/9e321ae3cd08
解题思路
这个图形共31行,可以分成两个部分。上半部分是一个16行的正三角形,下半部分是一个15行的倒三角形。
两个三角形分别用一个嵌套的for循环可以完成。
源码
#define LINE 31
int main()
{
int i, j;
int n;
for (i = 0; i < LINE; i++)
{
if (i <= LINE / 2)
n = i;
else
n = LINE - i - 1;
for (j = 0; j < (LINE / 2 - n); j++)
printf(" ");
for (j = 0; j < 2 * n + 1; j++)
printf("*");
printf("\n");
}
return 0;
}
执行结果
总结
遇到任何问题先把它分解成我们曾经使用过的算法单元,之后再逐一完成操作。
网友评论