解题思路:找到规律,就像第一行1 3 6 10 15,1+2=3;3=3=6;6+4=10;10+5=10.

纵向也是一样1 2 4 7 11,1+1=2;2+2=4;4+3=7;7+4=11。

我们先来实现* * * * *

                    * * * *

                    * * *

                    * *

                    *

让数这样输出

 然后我们先解决横向让程序这样输出

1 3 6 10 15

1 3 6 10

1 3 6

1 3

1

接下来我们找到规律实现

注意事项:一定要找对规律!!!

参考代码:


#include <stdio.h>
int main()
{
	int a[100],i,n=0,b,c=1,d=2,x,y,z=1;
	scanf("%d", &x);
	y = x;
	while (y--) 
	{
		for (i = 0;i < x;i++)
		{

			a[n] = c;
			printf("%d ", a[n]);
			n++;
			c += d;
			d++;
			if (x - 1 == i)
			{
				c = 1;
				d = 2;
				b = 1;
				while (b <= z)
				{
					c+=b;
					d++;
					b++;
				}
				z++;
			}
			
		}
		printf("\n");
		x--;

	}
   return 0;
}


点赞(0)
 

0.0分

1 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 0 条评论

暂无评论