#include <stdio.h>
//递归算法
void printNumberTriangleRecursively(int n) {
if (n == 0) {
return;
}
// 递归打印前 n-1 行
printNumberTriangleRecursively(n - 1);
// 打印一行包含数字 n 的 n 个重复数字
for (int i = 0; i < n; i++) {
printf("%d ", n);
}
printf("\n");
}
//非递归算法
void printNumberTriangleIteratively(int n) {
for (int i = 1; i <= n; i++) {
// 打印当前行数的数字
for (int j = 0; j < i; j++) {
printf("%d ", i);
}
printf("\n");
}
}
int main() {
int n;
printf("Enter the value of n: ");
scanf("%d", &n);
printNumberTriangleRecursively(n);
printNumberTriangleIteratively(n);
return 0;
}