c语言循环输出图案*方法 笨人必看
搞一下题2019.6.22
1.在屏幕上输出以下图案:
* *** ***** ******* ********* *********** ************* *********** ********* ******* ***** *** *
分析
首先得确定输出的图案有没有规律,很明显看出来是有的,第一行输出一个 * 第二行输出3个 *
这是一个有规律的输出(*)我们来分为上下部分来分析
上半部分
* *** ***** ******* ********* *********** *************
正三角每一行比上一行多2个* 相当于一个奇数输出1 3 5 7 9 … 可以看出上半部分有7行我们用i控制行,一共有 2*i+1 列我们用j控制列
核心代码如下:
for (int i = 0; i < 7; i++) { for (int j = 0; j< 2*i+1; j++) { printf("*"); } printf(" "); }
第一个for循环 循环行数,第二个for循环循环列数,在第二个for循环里面输出图案即可! 切记在每一列循环(内循环后)后要加换行 ,否则就输出成一条线;
下半部分
*********** ********* ******* ***** *** *
同分析上半部分一样,倒三角每一行比上一行少2个* 相当于一个倒奇数输出…9 5 7 3 1 可以看出下半部分有6行我们用i控制行,一共有 11-2*i 列我们用j控制列
核心代码如下:
for (int i = 0; i <= 6; i++) { for (int j = 0; j < 11-2*i; j++) { printf("*"); } printf(" "); }
切记在每一列循环(内循环后)后要加换行 ,否则就输出成一条线;