c语言打印“*”号组成的图形(例:“X“形,菱形)

您所在的位置:网站首页 打印数字菱形图案c语言 c语言打印“*”号组成的图形(例:“X“形,菱形)

c语言打印“*”号组成的图形(例:“X“形,菱形)

2024-01-17 23:16| 来源: 网络整理| 查看: 265

        当用c语言打印出以下类型的图形,第一眼看下去往往没有任何头绪,甚至用了很复杂的代码才能打印出来。其实想打印出这些图形往往不难,只要清楚其中的规律即可,用对方法后甚至几行代码就可以完成打印要求。

1、打印"X"形

        虽然该图形有行、列,很像一个二维数组,但不需要二维数组也可以实现要求。

        思路:观察要打印这十个*号的坐标,发现他是有一定的规律的:

        红色斜线的横坐标,竖坐标的数值是一样的。蓝色斜线的横坐标,竖坐标的值相加起来都等于4,然而这是一个5行5列的图形,也就是说蓝色斜线的横坐标,竖坐标的值相加等于图形规格(行数/列数-1)的 值。

        比如要打印一个a行a列的x形图形,那么只有在行和列相等、行+列等于a-1的情况下才打印*号,其他情况打印空格就行。代码如下:

#include int main() { int a = 0; scanf("%d", &a); int i = 0; for (i = 0; i < a; i++) { int j = 0; for (j = 0; j < a; j++) { if (i == j || i + j == a-1)//明白要打印的*坐标后,给出判断语句打印 printf("x"); else printf(" "); } printf("\n"); } return 0; }

运行结果:

2、打印直角三角形

        在明白上述x形的打印后,打印直角三角形同理,从元素的坐标下手,观察他们的特性:

        

        首先这是一个5x5的图形,其次发现空格坐标的行与列加起来的数值最大也不会超过5-1,那么就好办了,我们只需要判断一个条件,只要坐标的行与列的值加起来



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3