devc++打印杨辉三角
时间: 2023-11-24 14:51:05 浏览: 129
以下是使用Dev-C++打印杨辉三角的代码:
```c++
#include <stdio.h>
int main() {
int a[10][10],i,j;
for(i=0;i<10;i++) {
a[i][i]=1;
a[i][0]=1;
} //负责对角线和每行第一列
for(i=2;i<10;i++)
for(j=1;j<=i-1;j++)
a[i][j]=a[i-1][j-1]+a[i-1][j]; //负责第三行起,每个数等于左上方和正上方的数相加
for(i=0;i<10;i++) {
for(j=0;j<=i;j++)
printf("%4d ",a[i][j]);
printf("\n"); //内嵌for每循环完一次(j<=i)就换行
} //打印数组
return 0;
}
```
相关问题
c++打印杨辉三角形
下面是C++打印杨辉三角形的代码,使用了二维vector来存储杨辉三角形的每个元素,然后按照格式打印出来:
```c++
#include <iostream>
#include <vector>
#include <cstdio>
using namespace std;
int main(){
int n;
cin >> n;//输入行数
//定义n行n列的二维数组 ,并初始化为1
vector<vector<int>> arr(n,vector<int>(n,1));
//打印下三角 ,每个元素左对齐,占用6个位 ,超出6位就按照实际输出
for(int i=0;i<n;i++){
for(int j=0;j<=i;++j){
printf("%-6d",arr[i][j]) ;
}
printf("\n");
}
//重新赋值,元素规律为arr[i][j]=arr[i-1][j-1]+arr[i-1][j]
//注意i和j范围
//每一行的第一个元素不需要重新赋值,每一行的最后一个不需要重新赋值,因为都是1
for(int i=1;i<n;i++){
for(int j=1;j<i;++j){
arr[i][j]=arr[i-1][j-1]+arr[i-1][j];
}
printf("\n");
}
for(int i=0;i<n;i++){
//这里在每行元素前打印空格,使其成为等腰三角
//打印空格的循环h自行体会数值 我觉得这样比较整齐
for(int h=6*(n-i-1)/2; h>0; --h)
printf(" ");
for(int j=0;j<=i;++j){
printf("%-6d",arr[i][j]) ;
}
printf("\n");
}
return 0;
}
```
使用C++打印杨辉三角
以下是使用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;
}
```
运行结果:
```
Enter the number of rows: 6
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
```
阅读全文