c语言+直角杨辉三角
时间: 2024-01-10 19:02:28 浏览: 80
以下是两种C语言实现直角杨辉三角的例子:
1. 使用二维数组存储杨辉三角的值,并按照直角形状打印出来:
```c
#include<stdio.h>
int main(){
int n;
printf("请输入需要打印的行数:");
scanf("%d",&n);
printf("%d行打印的杨辉三角如下:\n",n);
int a[n][n]; // 定义一个n行n列的二维数组a
int i,j;
for(i=0;i<n;i++){
for(j=0;j<=i;j++){
if(j==0||j==i){
a[i][j]=1; // 杨辉三角规定,当列坐标等于0或者行坐标和列坐标相等时,值为1
}else{
a[i][j]=a[i-1][j]+a[i-1][j-1]; // 除了上边的情况就是当前位置的数值=当前位置前一行的值+当前位置前一行前一列的值
}
printf("%d\t",a[i][j]);
}
printf("\n");
}
return 0;
}
```
2. 使用部分棋盘打印法实现直角杨辉三角:
```c
#include<stdio.h>
int main() {
int i = 0;
int j = 0;
int n = 0;
scanf("%d", &n);
int a[10][10] = { 0 }; // 存放元素
for (i = 0; i < n; i++) {
for (j = 0; j < n; j++) {
if (j == 0 || i == j) { // 第一列和i==j时直接赋值为1
a[i][j] = 1;
}
if (i >= 2 && j >= 1) {
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("%d ", a[i][j]);
}
printf("\n");
}
return 0;
}
```
阅读全文