首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

求解杨辉三角形~该如何解决

2012-02-14 
求解杨辉三角形~~~~打印出一下的杨辉三角形(要求打印出10行以上)。11112113311464115101051 [解决办法]#inc

求解杨辉三角形~~~~
打印出一下的杨辉三角形(要求打印出10行以上)。

                                                  1
                                              1       1
                                          1       2       1
                                      1       3       3       1
                                  1       4       6       4       1
                              1       5       10     10     5       1


[解决办法]
#include <iostream>
#include <iomanip>
using namespace std;

const int N = 12;

void main()
{
int n[N+1];
n[0] = 0;
for (int i = 1; i <= N; ++i)
{
n[i] = 1;
for (int j = i-1; j > = 1; --j)
n[j] += n[j-1];
for (int m = N; m > = i; --m)
cout < < " ";
for (int j = 1; j <= i; ++j)
cout < < setw(3) < <n[j] < < " ";
cout < <endl;
}
}
[解决办法]
#include <stdio.h>

#define MAX_MY 10

int a[MAX_MY][MAX_MY] = {0};

void mytrangle(void *p)
{
for (int i = 0; i <MAX_MY; i++)
a[i][i] = 1;

for (i = 0; i <MAX_MY; i++)
a[i][0] = 1;

for (i = 2; i <MAX_MY; i++)
{
for (int j = 1; j < i; j++)
a[i][j] = a[i - 1][j - 1] + a[i - 1][j];
}
}

int main()
{
mytrangle(a);

for (int i = 0; i < MAX_MY; i++)
{
for(int j = 0; j < i + 1; j++)
printf( "%4d ", a[i][j]);
printf( "\n ");
}

return 0;
}

热点排行