字符三角形

作者在 2013-10-14 16:30:25 发布以下内容
Problem Description 

用数字排列出一个三角形

Input

输入数据首先包含一个整数T,表示测试实例的个数,然后是T行测试数据。每行包括1个整数n (1<=n<=9)

Output

对于每组测试数据n。输出一个有2*n-1行的,由数字1..n..1组成的转向三角形(参看Sample Output)。

Sample Input
2
3
5
Sample Output
1
22
333
22
1
1
22
333
4444
55555
4444
333
22
1



 #include<iostream>
using namespace std;
int main()
{
 int t;
 cin>>t;
 for(int i=0;i<t;i++)
 {
 int n;
 cin>>n;
 for(int j=0;j<n;j++)
 {
 for(int k=0;k<j+1;k++)
 {
 cout<<j+1;
 }
 cout<<endl; 
 }
 for(int l=n-1;l>0;l--)
 {
 for(int m=0;m<l;m++)
 {
 cout<<l;
 
 }
 cout<<endl;
 }
 
 }
 return 0;
}

这题我是分成两部分来考虑的,拿n=3为例,先考虑的是从1到333为一部分,再从22到1为一部分,这样我就需要分别用到两个循环,这两个循环的讲解可以参考我的另一个博客“字符梯形”中有讲解,循环中那个小于或大于的界限可以慢慢试过去,当然啦,如果你先前已经想的很清楚了,那完全可以一下子写上去,大不了最后再做修改!!

默认分类 | 阅读 2241 次
文章评论,共0条
游客请输入验证码
浏览19537次
文章分类
最新评论