FeimiL


私信TA

用户名:feimil

访问量:1306

签 名:

等  级
排  名 14050
经  验 842
参赛次数 0
文章发表 3
年  龄 0
在职情况 学生
学  校 滁州学院
专  业

  自我简介:

TA的其他文章

解题思路:

本题的关键在于要理解题中的“3层十字架”是什么意思,然后我们通过观察图像来得到它的排布规律

注意事项:
1.十字架指的是由“.”构成的空白部分;

2.图像的排布规律推荐从一层十字架看,然后再看看多层是怎么在一层的基础上叠加形成的;并且我们要格外注意的是每一行的排列规律

3.如下为1-3层对应的图像(为了观看方便我让每个字符中间都加了一个空格以达到正方形的效果)

参考代码:

#include<stdio.h>

void waiwei();

void waiwei2();

int main()

{

int n;

scanf("%d",&n);

for(int i=n-1;i>=-1;--i)

{

for(int j=n-1-i-1;j>0;--j) waiwei();

if(i==n-1) printf("..");

else printf("$$$.");

for(int j=5+4*i;j>0;--j) printf("$");

if(i==n-1) printf("..");

else printf(".$$$");

for(int j=n-1-i-1;j>0;--j) waiwei2();

puts("");//No.1

for(int j=n-1-i;j>0;--j) waiwei();

printf("..");

if(i!=-1)

{

printf("$");

for(int j=5+4*i-2;j>0;--j) printf(".");

printf("$");

}

else printf("$");

printf("..");

for(int j=n-1-i;j>0;--j) waiwei2();

puts("");//No.2

}

for(int i=n;i>0;--i) waiwei();

printf("$$$$$");

for(int i=n;i>0;--i) waiwei2();

puts(""); //middle

for(int i=-1;i<=n-1;++i)

{

for(int j=n-1-i;j>0;--j) waiwei();

printf("..");

if(i!=-1)

{

printf("$");

for(int j=5+4*i-2;j>0;--j) printf(".");

printf("$");

}

else printf("$");

printf("..");

for(int j=n-1-i;j>0;--j) waiwei2();

puts("");//No.2

for(int j=n-1-i-1;j>0;--j) waiwei();

if(i==n-1) printf("..");

else printf("$$$.");

for(int j=5+4*i;j>0;--j) printf("$");

if(i==n-1) printf("..");

else printf(".$$$");

for(int j=n-1-i-1;j>0;--j) waiwei2();

puts("");//No.1

}

return 0;


}

void waiwei()

{

printf("$.");

}

void waiwei2()

{

printf(".$");

}


 

0.0分

3 人评分

看不懂代码?想转换其他语言的代码? 或者想问其他问题? 试试问问AI编程助手,随时响应你的问题:

编程语言转换万能编程问答  

代码解释器

代码纠错

SQL生成与解释

  评论区