求解杨辉三角形~~~~
打印出一下的杨辉三角形(要求打印出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;
}