题目:http://acm.hdu.edu.cn/showproblem.php?pid=2032
题意:输出杨辉三角
思路:用二维数组存数据,用i j 变量风别控制行和列的循环。
注意:题目要求的输出的格式
code:
#include <cstdio> #include<iostream> using namespace std; int pascal[30+1][30+1]; void pascalgo(int n) { int i, j; for(i=0; i<n; i++) for(j=0; j<=i; j++) if(j == 0 || j == i) pascal[i][j] = 1; else pascal[i][j] = pascal[i-1][j] +pascal[i-1][j-1]; } void pascalPrint(int n) { int i, j; for(i=0; i<n; i++) { for(j=0; j<=i; j++) { if(j != 0) printf(" "); printf("%d", pascal[i][j]); } printf("\n"); } } int main(void) { int n; pascalgo(30); while(cin>>n) { pascalPrint(n); printf("\n"); } return 0; }