算法题:按规律输出

编写算法:打印具有下面规律的图形。

             1              
             5  2           
             8  6  3        
            10  9  7  4   

输入:手动输入n
输出:格式输出n行
思路:
1.定义100x100的二维数组并给其赋值
a30 a31 a32 a33
a20 a21 a22  
a10 a11    
a00      
赋值方式:
从最后一行开始赋值,第一行赋值n个第二行n-2第i行n-i;
for(i=n-1;i>=0;i--)
{
for(j=0;j<=i;j++)
{
a[i][j]=k;k++;
}
}
输出:
第一行输出1个第i行输出i个
观察上面的表格得出输出规律:
1:a30
2:a20,a31
3:a10,a21,a31
n:a(n+1)0.......a(n+j)
#include
void main()
{
	int a[100][100],i,j,n;
	int k=1,g=1;

	printf("输入显示行数:");
	scanf("%d",&n);
	//给数组赋值
	for(i=n-1;i>=0;i--)
	{
		for(j=0;j<=i;j++)
		{
			a[i][j]=k;k++;
		}
	}
	//printf("%d\n",a[2][0]);
	for(i=n-1;i>=0;i--)
	{
	  for(j=0;j

你可能感兴趣的:(程序算法,数组,找规律输出,算法分析)