蓝桥杯练习-打印十字图

问题描述

小明为某机构设计了一个十字型的徽标(并非红十字会啊),如下所示:

..$$$$$$$$$$$$$..
..$...........$..
$$$.$$$$$$$$$.$$$
$...$.......$...$
$.$$$.$$$$$.$$$.$
$.$...$...$...$.$
$.$.$$$.$.$$$.$.$
$.$.$...$...$.$.$
$.$.$.$$$$$.$.$.$
$.$.$...$...$.$.$
$.$.$$$.$.$$$.$.$
$.$...$...$...$.$
$.$$$.$$$$$.$$$.$
$...$.......$...$
$$$.$$$$$$$$$.$$$
..$...........$..
..$$$$$$$$$$$$$..

对方同时也需要在电脑dos窗口中以字符的形式输出该标志,并能任意控制层数。

输入格式

一个正整数 n (n<30) 表示要求打印图形的层数。

输出格式

对应包围层数的该标志。

样例输入1

1

样例输出1

..$$$$$..
..$...$..
$$$.$.$$$
$...$...$
$.$$$$$.$
$...$...$
$$$.$.$$$
..$...$..
..$$$$$..

样例输入2

3

样例输出2

..$$$$$$$$$$$$$..
..$...........$..
$$$.$$$$$$$$$.$$$
$...$.......$...$
$.$$$.$$$$$.$$$.$
$.$...$...$...$.$
$.$.$$$.$.$$$.$.$
$.$.$...$...$.$.$
$.$.$.$$$$$.$.$.$
$.$.$...$...$.$.$
$.$.$$$.$.$$$.$.$
$.$...$...$...$.$
$.$$$.$$$$$.$$$.$
$...$.......$...$
$$$.$$$$$$$$$.$$$
..$...........$..
..$$$$$$$$$$$$$..

 

#include 
#include  
using namespace std;
int fun(int n){
	if(n==0){
		return 1; 
	}else{
		return fun(n-1)+4;
	}
}
int fun1(int n){
	if(n==0){
		return 3; 
	}else{
		return fun(n-1)+4;
	}
}


int main(void){
	int n;
	cin>>n;
	int size=fun(n)+4;
	char box[size][size];
	for(int i=0;i=(size-1)/2 &&i%2==0){
					box[i+1][j]='$';
					box[i][j+1]='$';
				}
								
			}if(i==size-j-1){
				if(i<=(size-1)/2 && i%2!=0){
					box[i+1][j]='$';
					box[i][j-1]='$';
				}	
				else if(i>=(size-1)/2 &&i%2==0){
					box[i+1][j]='$';
					box[i][j-1]='$';
				}
			}
			
		}
	}
	box[size-1][size-1]='.';
	box[size-1][0]='.';
	box[0][0]='.';
	box[0][size-1]='.';
	//输出 
	for(int i=0;i

 

你可能感兴趣的:(C++)