C语言题输入数字N,输出如下图所示N行三角形。

如题所述

第1个回答  2018-12-07
等一下追答

void p(int a[][100],int n,int m,int,i,int j,int k)
{int t;
for(t=n;t;t--)
if(k%3==0)a[++i][j]=m++;
else if(k%3==1)a[i][++j]=m++;
else a[--i][--j]=m++;
if(n-1)p(a,--n,m,i,j,++k);
}

main()
{int a[100][100],n,i,j;
scanf("%d",&n);
p(a,n,1,-1,0,0);
for(i=0;i<n;i++)
{for(j=0;j<=i;j++)
printf("%5d",a[i][j]);
printf("\n");
}}

追问

能讲下思路吗

追答

其实就是一个p函数,理解它,思路就在里面。

追问

大哥厉害啊直接在记事本之类上写的啊,有些小错误但问题不大。然后我自己写的,写了五十多行代码。。

追答

被你发现了😁

祝贺你自己写出来了😄

本回答被提问者采纳