打印三角形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;
}
}
这三道题都是关于字符的题,相对来说掌握了思路就比较简单了!