给出C语言代码输出6行等腰杨辉三角形。 输出格式: 第一行的1前面有13个空格;第2行的第一个1前面有11个空格,两个1之间有3个空格;最后一行的第一个1前面有3个空格。可以考虑每个数输出占4列列宽。
时间: 2024-03-17 16:40:46 浏览: 61
好的,下面是C语言的代码实现:
```c
#include <stdio.h>
#define ROWS 6
// 生成杨辉三角形
void generate_triangle(int triangle[][ROWS]) {
for (int i = 0; i < ROWS; i++) {
triangle[i][0] = 1;
for (int j = 1; j <= i; j++) {
triangle[i][j] = triangle[i - 1][j - 1] + triangle[i - 1][j];
}
}
}
// 输出杨辉三角形
void print_triangle(int triangle[][ROWS]) {
int max_width = 4 * ROWS;
for (int i = 0; i < ROWS; i++) {
int row_width = 0;
for (int j = 0; j <= i; j++) {
int num = triangle[i][j];
int num_width = printf("%4d", num);
row_width += num_width;
}
int padding = (max_width - row_width) / 2;
printf("%*s\n", padding, "");
}
}
int main() {
int triangle[ROWS][ROWS] = {0};
generate_triangle(triangle);
print_triangle(triangle);
return 0;
}
```
输出结果如下:
```
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
```
阅读全文