历届试题 打印十字图 (蓝桥杯)
来源:互联网 发布:威锋认证的淘宝店 编辑:程序博客网 时间:2024/04/26 07:53
问题描述
小明为某机构设计了一个十字型的徽标(并非红十字会啊),如下所示:
对方同时也需要在电脑dos窗口中以字符的形式输出该标志,并能任意控制层数。
输入格式
一个正整数 n (n<30) 表示要求打印图形的层数。
输出格式
对应包围层数的该标志。
样例输入1
1
样例输出1
样例输入2
3
样例输出2
提示
请仔细观察样例,尤其要注意句点的数量和输出位置。
这题找下规律,一点一点写,麻烦没啥,做出来就OK
#include<iostream>#include<cstdio>#include<cstring>using namespace std;int a[1000][1000]={0};int main(){int n;cin>>n;int sum=n;for(int i=1;i<=sum;i++){n=sum-i+1; int j;for( j=2+(i-1)*2;j<=6+(i-1)*2+(n-1)*4;j++){a[(i-1)*2][j]=1;} a[(i-1)*2+1][j-1]=1; a[(i-1)*2+2][j-1]=1;a[(i-1)*2+2][j]=1; j++;int k;for(k=2+(i-1)*2;k<=6+(i-1)*2+(n-1)*4;k++) a[k][j]=1; j--; a[k-1][j]=1; j--;a[k-1][j]=1; a[k][j]=1; for(k++;j>=2+(i-1)*2;j--) a[k][j]=1; a[k-1][j+1]=1; a[k-2][j]=1; a[k-2][j+1]=1; k-=2;j--; for(;k>=2+(i-1)*2;k--) a[k][j]=1; a[k][j+2]=1; a[k+1][j+1]=1; a[k+1][j+2]=1;} for(int i=sum*2;i<5+sum*2;i++) a[i][2+sum*2]=1; for(int i=sum*2;i<5+sum*2;i++) a[2+sum*2][i]=1; for(int i=0;i<9+(sum-1)*4;i++){for(int j=0;j<9+(sum-1)*4;j++)if(a[i][j])cout<<'$';else cout<<'.'; cout<<endl;}return 0;}
0 0
- 历届试题 打印十字图 (蓝桥杯)
- 蓝桥杯 历届试题 打印十字图(打印)
- 蓝桥杯 历届试题 打印十字图
- 历届试题 打印十字图 Java蓝桥杯
- 蓝桥杯历届试题-打印十字图
- 蓝桥杯 历届试题 打印十字图
- 打印十字图-蓝桥杯历届试题
- 蓝桥杯历届试题 打印十字图
- 蓝桥杯 历届试题 打印十字图
- 蓝桥杯之 历届试题 打印十字图
- 蓝桥杯-历届试题-打印十字图
- 蓝桥杯 历届试题 打印十字图
- 蓝桥杯 历届试题 打印十字图
- 历届试题 打印十字图
- 历届试题 打印十字图
- 历届试题 打印十字图
- 历届试题 打印十字图
- 历届试题 打印十字图
- 深入理解Java:注解(Annotation)自定义注解入门
- 建立一个类SUM,求二维数组外围各元素的和,并且输出数组各元素及所求之和。具体要求如下:
- JAVA 进制转换
- 单链表的初始化、插入、删除、查找
- 数字旋转方阵 分治法
- 历届试题 打印十字图 (蓝桥杯)
- UVA
- jQuery的应用
- c语言中关于数组的一些基本运算
- 博弈论
- SSL2295 暗黑破坏神(dp)
- 自篡改Dalvik字节码delta.apk原理
- java io
- Caused by: java.lang.UnsupportedOperationException: Can't convert to color: type=0x1