这题主要卡PE,要注意空行要在开始输出,如果在后面输出空行,会导致最后多一个空行,获得PE;
#include<iostream>
#include<string>
#include<string.h>
using namespace std;
int main()
{
char a;
int n;
int t=0;
while(cin>>a>>n)
{
if(t) //表示第一次的时候不输出空行,后面每次一个三角形之后都会输出一个空行
{
cout<<endl;
}
else
{
t=1;
}
if(a=='@') break;
for(int i=1;i<=n;i++)
{
if(i==n)
{
for(int s=1;s<=2*n-1;s++)
cout<<a;
}
else
{
for(int j=1;j<=n-i;j++)
{
cout<<" ";
}
for(int k=1;k<=2*i-1;k++)
{
if(k==1||k==2*i-1)
cout<<a;
else
cout<<" ";
}
}
cout<<endl;
}
//cout<<endl; 空行不能在这里输出,要在最前面输出,在后面输出会PE
}
return 0;
}