c++打印一个四行三角形
时间: 2024-05-13 15:20:11 浏览: 15
我可以回答这个问题。以下是打印一个四行三角形的代码:
```
for i in range(1,5):
for j in range(1, i+1):
print("*", end=" ")
print()
```
运行此代码将输出如下结果:
```
*
* *
* * *
* * * *
```
希望这个答案对您有帮助!
相关问题
c++, 写一个打印三角形的程序
以下是一个打印三角形的程序:
```
#include <stdio.h>
int main() {
int rows, i, j, k;
printf("请输入三角形的行数:");
scanf("%d", &rows);
for (i = 1; i <= rows; i++) {
for (j = 1; j <= rows - i; j++) {
printf(" ");
}
for (k = 1; k <= 2 * i - 1; k++) {
printf("*");
}
printf("\n");
}
return 0;
}
```
输入三角形的行数后,程序使用一个嵌套的 for 循环来打印三角形。外层循环控制行数,内层循环分别打印空格和星号。具体来说,内层第一个循环打印空格,循环次数为当前行数减一;内层第二个循环打印星号,循环次数为当前行数乘以 2 减一。最后,程序在每行末尾打印一个换行符,以便下一行能够正确输出。
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;
}
```