用C语言写一个杨辉三角
以下是一个用C语言编写的杨辉三角程序:
#include <stdio.h>
int main() {
int rows, coef = 1;
printf("请输入杨辉三角的行数:");
scanf("%d", &rows);
for (int i = 0; i < rows; i++) {
for (int j = 1; j <= rows - i; j++) {
printf(" ");
}
for (int j = 0; j <= i; j++) {
if (j == 0 || i == 0) {
coef = 1;
} else {
coef = coef * (i - j + 1) / j;
}
printf("%4d", coef);
}
printf("\n");
}
return 0;
}
运行程序后,会要求用户输入杨辉三角的行数。然后,程序会使用两个嵌套的循环来打印出杨辉三角的每一行。第一个循环用来打印每一行前面的空格,以便让杨辉三角能够居中显示。第二个循环用来计算并打印出杨辉三角中的数字。在第二个循环中,我们使用了一个变量coef来存储当前位置的数字,并且在每次循环中更新它的值。注意,在计算coef的值时,我们使用了组合公式:C(n,k) = n! / (k! * (n-k)!),其中n表示当前行数,k表示当前位置的列数。最后,程序会输出整个杨辉三角
原文地址: https://www.cveoy.top/t/topic/efg6 著作权归作者所有。请勿转载和采集!