C语言循环控制

描述

根据要求打印出对应的图形。(谭浩强 C 语言 第三版 130 页第 6.14 题)

题目

输出以下图案:

18_6.14题目.png

题目解决思路

我们不能被题目中的 * 所迷惑,其实它是每行都有七个字符,是有 “ ” 和 * 组成的。前四行 * 数量是依次递增,后三行是依次递减。

代码具体实现

#include <stdio.h> void main() { printf("嗨客网(www.haicoder.net)\n\n"); int i,j,k; for(i=0; i<=3; i++) { for(j=0; j<=2-i; j++) { printf(" "); } for(k=0; k<=2*i; k++) { printf("*"); } printf("\n"); } for(i=0; i<=2; i++) { for(j=0; j<=i; j++) { printf(" "); } for(k=0; k<=4 - 2*i; k++) { printf("*"); } printf("\n"); } }

运行后,控制台输出如下:

19_6.14答案.png

我们把这个分成两部分,前四行和后三行,对他们分别进行处理。