用c语言写一个打印杨辉三角的代码
时间: 2024-04-29 20:22:00 浏览: 12
以下是用C语言实现打印杨辉三角的代码:
```c
#include <stdio.h>
int main() {
int rows, coef = 1, space, i, j;
printf("Enter number of rows: ");
scanf("%d", &rows);
for (i = 0; i < rows; i++) {
for (space = 1; space < rows - i; space++)
printf(" ");
for (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;
}
```
在这个程序中,我们首先通过用户输入确定了要打印的行数。然后使用两个嵌套循环来遍历每一行和每一列,以计算和打印杨辉三角的系数。在内层循环中,我们首先检查当前行是否为第一行或当前列是否为第一列,如果是,则将系数设置为1。否则,我们计算系数,然后使用“%4d”格式打印它。最后,我们在每一行结束时打印一个换行符。
相关问题
C语言写一个杨辉三角代码
以下是一个C语言实现杨辉三角的代码示例:
```
#include <stdio.h>
int main() {
int n, i, j, coef = 1;
printf("请输入杨辉三角的行数:");
scanf("%d", &n);
for (i = 0; i < n; i++) {
for (j = 0; j <= i; j++) {
if (j == 0 || i == 0)
coef = 1;
else
coef = coef * (i - j + 1) / j;
printf("%d ", coef);
}
printf("\n");
}
return 0;
}
```
该代码通过嵌套循环来生成杨辉三角。外层循环控制行数,内层循环控制每行的数字个数。在内层循环中,判断当前数字是否在三角形的边缘,如果是,则将该数字设置为1;否则,根据杨辉三角的规律计算该数字的值。最后,打印出每行的数字并换行,生成完整的杨辉三角。
用C语言数组写一个杨辉三角形
以下是使用C语言数组写的杨辉三角形代码:
```c
#include<stdio.h>
int main() {
int n, i, j;
printf("请输入要打印的行数:\n");
scanf("%d", &n);
int a[n][n];
// 初始化杨辉三角形第一行
for(i = 0; i < n; i++) {
a[0][i] = 1;
}
// 构造杨辉三角形其他行
for(i = 1; i < n; i++) {
for(j = 0; j < n-i; j++) {
printf(" ");
}
for(j = 0; j <= i; j++) {
if(j == 0 || j == i) {
a[i][j] = 1;
} else {
a[i][j] = a[i-1][j-1] + a[i-1][j];
}
printf("%d ", a[i][j]);
}
printf("\n");
}
return 0;
}
```
该程序先要求用户输入要打印的行数n,然后根据杨辉三角形的构造规律,使用二维数组a[n][n]存储杨辉三角形的每个元素值,最后打印出整个杨辉三角形。在构造杨辉三角形时,先初始化第一行为1,然后逐行构造,使用一个循环控制每行前面的空格数,使用另一个循环控制每行的元素值,并将元素值存储到数组a[n][n]中。