遇到这种图案型的题目一般都是先看对称性 分成上下两部分再找规律(也可以分成左右或者其他两部分 主要看规律是什么)
题目一
打印x形图案
KiKi学习了循环,BoBo老师给他出了一系列打印图案的练习,该任务是打印用“”组成的X形图案。
输入描述:
多组输入,一个整数(2~20),表示输出的行数,也表示组成“X”的反斜线和正斜线的长度。
输出描述:
针对每行输入,输出用“”组成的X形图案。
首先来分析两个图案
可以很明显的发现 这两个图案是由两个对称的斜杠组成的
我们再来找找这两条斜杠的规律
第一条正斜杠的x y坐标相等
第二条反斜杠的x y坐标相加等于n-1
于是我们有代码如下
int main() { int n = 0; int i, j; scanf("%d", &n); for ( i = 0; i < n; i++) { for ( j = 0; j < n; j++) { if ((i == j) || ((i + j) == (n - 1))) { printf("*"); } else { printf(" "); } } printf("\n"); } return 0; }
题目二
描述
KiKi学习了循环,BoBo老师给他出了一系列打印图案的练习,该任务是打印用“”组成的箭形图案。
输入描述:
本题多组输入,每行一个整数(2~20)。
输出描述:
针对每行输入,输出用“”组成的箭形。
图案如下
题目分析: 我们可以将这个图案分成上下两个部分 发现这两个图案是沿着中线对称的
于是我们可以有
第一行先打印0个空格 4个星星
第二行打印 2个空格 3个星星
第三行打印 4 个空格 2个星星
这样子我们就打印出来了下半部分的图片
然后我们再打印上班部分的
然后我再去掉下面第一行的图案
我们就可以得到这样的图案了
以上就是本篇博客的全部内容啦 由于博主才疏学浅 所以难免会出现纰漏 希望大佬们看到错误之后能够
不吝赐教 在评论区或者私信指正 博主一定及时修正
那么大家下期再见咯