c艹打印三角形1、2、3大合集!(字符)

打印三角形1

试题描述

试编写能够打印输出如下三角形的程序。

输入要求

一个整数 N ,表示三角形的行数和列数。

输出要求

n行 ∗ 组成的直角三角形。

输入样例

6

输出样例

*
**
***
****
*****
******

【解题思路】

首先我们对这个问题进行分析:

假设输入的是6,那么我们就需要输出6行 * ,用一个循环就能解决:

for(int i=1;i<=6;i++){

}

通过观察可得,每一行输出的 * 的个数正好是 i 的大小,想要输出这个,我们就需要运用嵌套循环:

for(int i=1;i<=6;i++){
    for(int j=1;j<=i;j++){
        cout<<"*"<<endl;
    }
    cout<<endl;
}

在因为输入的是n,所以我们把n带入6中,再加上头文件等就可以得到我们最终的代码:

#include<bits/stdc++.h>
using namespace std;
int main(){
	int n;
    cin>>n;
    for(int i=1;i<=n;i++){
        for(int j=1;j<=i;j++){
            cout<<"*";
        }
        cout<<endl;
    }
}

打印三角形2

试题描述

试编写能够打印输出如下三角形的程序。

输入要求

一个整数 N ,表示三角形的行数。

输出要求

n 行 ∗ 组成的等腰三角形,第一行一个∗∗,第 2 行 3 个 ∗,第 3 行 5 个 ∗,依次增加,注意每行星号右侧没有多余的空格。

输入样例

6

输出样例

     *
    ***
   *****
  *******
 *********
***********

解题思路

我个人认为,就普遍理性而论,这一题最重要的就是。。。

列关系式!!!

作者比较懒...下面直接上代码,比较简单,大家自己体会。

参考代码

#include<bits/stdc++.h>
using namespace std;
int main(){
	int a;
    cin>>a;
    for(int i=a-1;i>=0;i--){
        for(int j=1;j<=i;j++){
            cout<<" ";
        }
        for(int k=1;k<=2*(a-i)-1;k++){
            cout<<"*";
        }
        cout<<endl;
    }
	return 0;
}

打印三角形3

试题描述

打印星号三角形。

输入要求

一个整数N,表示三角形的行数。

输出要求

如下图的三角形。

输入样例

5

输出样例

Output Format

    *        *        *
   ***      ***      ***
  *****    *****    *****
 *******  *******  *******
***************************

这一道题的话...其实还是有些难度的。不过思路和第二题差不多:列关系式!!!

这一题可以一行一行打印,每行将它拆成相等的三个部分,就可以轻松解决啦!!!

下面上代码:

#include<bits/stdc++.h>
using namespace std;
int main(){
    int n;
    cin>>n;
    for(int i=1;i<=n;i++){
        for(int j=1;j<=3;j++){
            for(int k=1;k<=n-i;k++){
                cout<<" ";
            }
            for(int k=1;k<=2*i-1;k++){
                cout<<"*";
            }
            for(int k=1;k<=n-i;k++){
                cout<<" ";
            }
        }
        cout<<endl;
    }
}

这三道题都是关于字符的题,相对来说掌握了思路就比较简单了!

  • 12
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值