读书人

运用C中2维数组解决杨辉三角小弟我的

发布时间: 2012-03-11 18:15:38 作者: rapoo

运用C中2维数组解决杨辉三角,我的算法怎么都是乱码
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 . . . . .
1 . . . . . .
#include<stdio.h>
int main()
{
int i,j,a[10][10];
a[0][0]=a[1][0]=1;
a[1][1]=1;
for(i=0;i<10;i++)
a[i][0]=1;/*1 1 1 1 1 1 1 1 1.想以这样的形式输出1*/
for(j=0;j<10;j++)
{if(i==j)a[i][j]=1;/*1
1
1
1
1以这样的形式输出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];/*输出1意外的其他数*/
printf("%5d",a[i][j]);
printf("\n");
}
return 0;
}

[解决办法]
输出问题
#include <stdio.h>
main()
{
int i,j,a[10][10]; /*10行10列的杨辉三角*/
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+1;j++)
printf("%d ",a[i][j]);
printf("\n");
}
}

读书人网 >C++

热点推荐