当前位置: 代码迷 >> C语言 >> 扬辉三角输出问题 把调试过的正确的程序发上来
  详细解决方案

扬辉三角输出问题 把调试过的正确的程序发上来

热度:155   发布时间:2007-08-06 08:58:40.0
扬辉三角输出问题 把调试过的正确的程序发上来
/*扬辉三角
1
11
121
1331
……………………
输出10行*/
#include<stdio.h>
void main()
{
int j,i,k;
int a[10]={1};
for(i=1;i<10;i++)
{
for(j=9;j>0;j--)
a[j]=a[j]+a[j-1];
for(k=0;k<10;k++)
{
if(a[k]=0) continue;
printf("%d",a[k]);
}
printf("\n");
}
}
}
搜索更多相关的解决方案: 三角  发上  调试  输出  

----------------解决方案--------------------------------------------------------
你可以试着使得输出更有型,比如这样输出
1
1 1
1 2 1
1 3 3 1
…………………………
----------------解决方案--------------------------------------------------------

#include<stdio.h>

int main()
{int i,j;
int a[10][10];
printf("\n");
for(i=0;i<10;i++)
  {a[i][0]=1;
  a[i][i]=1;}
for(i=2;i<10;i++)
  for(j=1;j<i;j++)
  a[i][j]=a[i-1][j-1]+a[i-1][j];
for(i=0;i<10;i++)
  {for(j=0;j<=i;j++)
  printf("%5d",a[i][j]);
  printf("\n");
  }
getch();
return 0;
}

 

[此贴子已经被作者于2007-8-6 13:59:19编辑过]


----------------解决方案--------------------------------------------------------

#include <stdio.h>
#define N 20
int main()
{
int a[N][N],i,j,n;
printf("Please input Line:\n");
scanf("%d",&n);
printf("\n");
for(i=0;i<=n;i++)
{
for(j=0;j<=n;j++)
{
a[i][j]=0;
}
}
a[0][0]=1;
for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)
{
a[i][j]=a[i-1][j-1]+a[i-1][j];
}
}
for(i=1;i<=n;i++)
{
for(j=1;j<=n-i;j++)
{
printf(" ");
}
for(j=1;j<=i;j++)
{
printf("%5d",a[i][j]);
}
printf("\n");
}
getch();
return 0;
}


[此贴子已经被作者于2007-8-6 14:07:23编辑过]


----------------解决方案--------------------------------------------------------
  相关解决方案