题意
描述
plw吃完午饭之后,马上又觉得肚子饿了。他决定马上从美食区离开,赶往下一个吃饭地点"香香鸡"。但是在plw离开离开美食区之前,需要按美食区的规矩画一个特殊符号,并且如果是这是第k次离开美食区,就需要画k倍大小的图形
输入
多组测试
第一行输入T (T <= 10)
接下来T行,每一行输入一个k(k<=1000),代表这是第k次离开美食区。
输出
对于每次输入要求输出k倍大小的标准图形。
每2组测试数据之间输出一个空行。
注意,不要输出多余的空行或者行末空格。
输入样例 1
2
1
2
输出样例 1
分析
没什么难的就是看你细不细心
“不要输出多余的空行或者行末空格”
就是末尾不能有空格而且每2组测试数据之间输出一个空行。
代码
#include<iostream>
using namespace std;
void print(int k){
for(int i=1;i<=4*k;i++)
if(i>k&&i<=4*k) cout<<'_';
else cout<<' ';
cout<<endl;
for(int i=1;i<=k;i++){
for(int j=1;j<=5*k;j++)
if(j==k-i+1) cout<<'/';
else if(j==4*k+i) cout<<'\\';
else if(j<4*k+i) cout<<' ';
else continue;
cout<<endl;
}
for(int i=1;i<=k;i++){
for(int j=1;j<=5*k;j++)
if(j==i) cout<<'\\';
else if(j==5*k-i+1) cout<<'/';
else if(j>i&&j<5*k-i+1&&i==k) cout<<'_';
else if(j<5*k-i+1) cout<<' ';
else continue;
cout<<endl;
}
for(int i=1;i<k;i++){
for(int j=1;j<=5*k;j++)
if(j==k+1||j==4*k) cout<<'|';
else if(j<4*k) cout<<' ';
else continue;
cout<<endl;
}
for(int i=1;i<=5*k;i++)
{
if(i==k+1||i==4*k) cout<<'|';
if(i<k+1||i>4*k) cout<<'_';
if(i>k+1&&i<4*k) cout<<' ';
}
cout<<endl;
for(int i=1;i<=k;i++){
for(int j=1;j<=5*k;j++)
if(j==1||j==5*k) cout<<'|';
else if(i!=k&&j!=1&&j!=5*k)
cout<<' ';
else cout<<'_';
cout<<endl;
}
}
int main(){
int t,k;
cin>>t;
while(t--){
cin>>k;
if(t!=0)
{
print(k);
cout<<endl;
}
else
print(k);
}
return 0;
}