求三角形
查看原帖
求三角形
428954
tianxinyu12138楼主2021/5/22 12:04

前言

目前算法不咋会哈,并且只会点c语言

思路

正方形

正方形就是 行数*矩阵规模+这行第几个数

三角形

三角形就是先开始输出空格,在输出数字,每行的空格数是 矩阵规模-行号。每行最后一个数字是有规律的(行号*(行号+1))/2,这里可以思考下为啥两层括号。

代码

#include <stdio.h>
int main(){
	int a,i,j,b,m,n=1;
	scanf("%d",&a);	
	for(i=0;i<a;i++)
	{
		for(j=1;j<=a;j++)
		{
			printf("%02d",i*a+j);
		}
		printf("\n");
	}
	printf("\n");//上面此处输出的是正方形 
	for(m=1;m<=a;m++)
	{
		b=a-m;
		for(b;b>0;b--)
		{
			printf("  ");
		}
		for(;n<=((m*(m+1))/2);n++)
		{
			if(n==((m*(m+1))/2))
				printf("%02d\n",n);
			else
				printf("%02d",n);	
		}
	}
}
2021/5/22 12:04
加载中...