用c语言输出杨辉三角形
时间: 2023-09-21 07:11:27 浏览: 281
以下是用C语言输出杨辉三角形的代码:
```c
#include <stdio.h>
int main() {
int rows, coef = 1;
printf("Enter the number of rows: ");
scanf("%d", &rows);
for (int i = 0; i < rows; i++) {
for (int space = 1; space <= rows - i; space++)
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;
}
```
这个代码会要求用户输入杨辉三角形的行数,然后使用循环来逐行输出。在每行中,第一个循环用于输出空格,第二个循环用于计算并输出该行的系数。输出格式使用了 `%4d`,以保证每个数占据四个字符的宽度。
相关问题
c语言输出杨辉三角形
C语言可以使用二维数组来输出杨辉三角形。下面是一个示例代码:
```c
#include <stdio.h>
void printYanghuiTriangle(int numRows) {
int triangle[numRows][numRows]; // 定义二维数组
// 初始化第一列和对角线元素为1
for (int i = 0; i < numRows; i++) {
triangle[i][0] = 1;
triangle[i][i] = 1;
}
// 计算其他元素值
for (int i = 2; i < numRows; i++) {
for (int j = 1; j < i; j++) {
triangle[i][j] = triangle[i - 1][j - 1] + triangle[i - 1][j];
}
}
// 输出杨辉三角形
for (int i = 0; i < numRows; i++) {
// 打印每行前面的空格,使得杨辉三角形居中显示
for (int k = 0; k < numRows - i; k++) {
printf(" ");
}
// 打印每行的元素值
for (int j = 0; j <= i; j++) {
printf("%6d ", triangle[i][j]);
}
printf("\n");
}
}
int main() {
int numRows;
printf("请输入要打印的杨辉三角形的行数:");
scanf("%d", &numRows);
printYanghuiTriangle(numRows);
return 0;
}
```
该代码使用二维数组来存储杨辉三角形的每个元素,然后使用两个循环来计算和输出杨辉三角形。在输出时,使用空格来使得杨辉三角形居中显示。
用c语言输出杨辉三角形的前10行。
以下是输出杨辉三角形前10行的C语言代码:
```c
#include <stdio.h>
int main() {
int rows = 10;
int coef = 1;
for (int i = 0; i < rows; i++) {
for (int space = 1; space < rows - i; space++) {
printf(" ");
}
for (int 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
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1
1 7 21 35 35 21 7 1
1 8 28 56 70 56 28 8 1
1 9 36 84 126 126 84 36 9 1
```