打印杨辉三角 (20 分)
本题要求按照规定格式打印前N行杨辉三角。
输入格式:
输入在一行中给出N(1≤N≤10)。
输出格式:
以正三角形的格式输出前N行杨辉三角。每个数字占固定4位。
输入样例:
6
输出样例:
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; int main() { int arr[10][10]; int n; cin >> n; int count = 0; for (int i = 0; i < n; i++) { count = 0; for (int j=0; j < i+1 ; j++) { if (count != i+1||j==0) { if (j == 0 || j == i) { arr[i][j] = 1; count++; } else {// 2 1 arr[i][j] = arr[i - 1][j - 1] + arr[i -1][j]; count++; } } else break; } } int count1 = 0; for (int i = 0; i < n; i++) { count1 = 0; for (int j = 0; j < i + 1; j++) { if (count1 != i+1||i==0) { for (int k = 0; k < 6 - i-1; k++) { if(j==0) cout << " "; } printf("%4d", arr[i][j]); count1++; } else break; } cout << endl; } }