c语言用二维数组生成杨辉三角
时间: 2023-10-25 17:11:36 浏览: 94
好的,我可以回答这个问题。您使用二维数组来生成杨辉三角形,其中每行的数字是通过前一行的数字相加得出的。以下是使用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;
}
```
这段代码可以让您输入要生成的杨辉三角的行数,并输出该三角形。感谢您向我提问!
相关问题
c语言利用二维数组打印杨辉三角
以下是C语言利用二维数组打印杨辉三角的代码实现:
```c
#include <stdio.h>
#define N 10
int main() {
int a[N][N];
int i, j;
// 将最外端元素置为1
for (i = 0; i < N; i++) {
a[i][0] = 1;
a[i][i] = 1;
}
// 计算其他位置上的元素
for (i = 2; i < N; i++) {
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"); //换行
}
return 0;
}
```
C语言利用二维数组打印杨辉三角
下是C语言利用二维数组打印杨辉三角的代码:
```c
#include <stdio.h>
int main()
{
int n, i, j;
printf("Enter the number of rows: ");
scanf("%d", &n);
int arr[n][n];
for(i = 0; i < n; i++)
{
for(j = 0; j <= i; j++)
{
if(j == 0 || j == i)
arr[i][j] = 1;
else
arr[i][j] = arr[i-1][j-1] + arr[i-1][j];
}
}
printf("The Pascal's Triangle:\n");
for(i = 0; i < n; i++)
{
for(j = 0; j <= i; j++)
{
printf("%d ", arr[i][j]);
}
printf("\n");
}
return 0;
}
```
这个程序首先从用户那里读取一个整数n,表示要打印杨辉三角的行数。然后,它创建了一个n x n的二维数组,用于存储杨辉三角的所有元素。接下来,程序使用两个嵌套的循环来计算和存储杨辉三角的元素。最后,程序使用另外两个嵌套的循环来打印杨辉三角的所有元素。
阅读全文