编写c语言程序输出杨辉三角
时间: 2023-05-24 17:06:14 浏览: 131
#include <stdio.h>
#define MAX_ROWS 10 // 输出的最大行数为10
int main() {
int i, j, rows, coef;
printf("请输入输出的行数(小于等于10):");
scanf("%d", &rows);
if (rows > MAX_ROWS) {
printf("行数超出最大行数,自动将行数设置为%d\n", MAX_ROWS);
rows = MAX_ROWS;
}
for(i = 0; i < rows; 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;
}
相关问题
编写c语言程序求解杨辉三角
以下是两种C语言编写杨辉三角的例子:
方法一:
```c
#include <stdio.h>
void main() {
int i, j, n = 0, a[17][17] = {0};
while (n < 1 || n > 16) {
printf("请输入杨辉三角形的行数:");
scanf("%d", &n);
}
for (i = 0; i < n; i++) {
a[i][0] = 1; // 第一列置为1
for (j = 1; j <= i; j++) {
a[i][j] = a[i - 1][j - 1] + a[i - 1][j]; // 每个数是上面两数之和
}
}
for (i = 0; i < n; i++) { // 输出杨辉三角
for (j = 0; j <= i; j++) {
printf("%5d", a[i][j]);
}
printf("\n");
}
}
```
方法二:
```c
#include <stdio.h>
void main() {
int i, j, n = 0, a[17] = {1}, b[17];
while (n < 1 || n > 16) {
printf("请输入杨辉三角形的行数:");
scanf("%d", &n);
}
for (i = 0; i < n; i++) {
b[0] = a[0];
for (j = 1; j <= i; j++) {
b[j] = a[j - 1] + a[j]; // 每个数是上面两数之和
}
for (j = 0; j <= i; j++) { // 输出杨辉三角
a[j] = b[j];
printf("%5d", a[j]);
}
printf("\n");
}
}
```
用C语言编写程序输出杨辉三角形
好的,以下是用C语言编写的输出杨辉三角形的程序:
```
#include <stdio.h>
int main()
{
int rows, coef = 1, space, i, j;
printf("Enter the 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;
}
```
运行程序后,会要求输入要输出的杨辉三角形的行数,然后程序会依次输出每一行的数字。每个数字之间会有空格隔开,每一行末尾会有一个换行符。
阅读全文
相关推荐















