C语言实现等腰杨辉三角形打印
#include <stdio.h>
int main() {
int n;
printf("请输入行数:");
scanf("%d", &n);
int arr[n][n];
for (int i = 0; i < n; i++) {
for (int j = 0; j <= i; j++) {
if (j == 0 || j == i) {
arr[i][j] = 1;
} else {
arr[i][j] = arr[i - 1][j - 1] + arr[i - 1][j];
}
}
}
for (int i = 0; i < n; i++) {
for (int k = 0; k < n - i - 1; k++) {
printf(" ");
}
for (int j = 0; j <= i; j++) {
printf("%-4d", arr[i][j]);
}
printf("\n");
}
return 0;
}
该程序使用二维数组 arr 来存储杨辉三角形的数字,并通过两层循环进行遍历,其中内层循环计算每一行数字的值。程序首先将首尾数字设置为 1,然后根据上一行的数字进行累加计算。
程序使用 printf(" "); 在每行之前打印空格,并使用 n - i - 1 来控制空格的数量,使得三角形呈现等腰形状。最终,程序使用 printf("%-4d", arr[i][j]); 打印每个数字,并使用 %-4d 格式化输出,使每个数字占 4 个字符的空间。
该程序可以根据用户输入的行数来打印相应的杨辉三角形,并且可以很方便地进行扩展,例如,可以通过修改格式化字符串来控制数字的宽度和对齐方式,也可以添加其他功能来实现更复杂的操作。
原文地址: https://www.cveoy.top/t/topic/mMfv 著作权归作者所有。请勿转载和采集!