您的位置:首页 > 其它

蓝桥杯 十字图打印

2017-02-03 14:08 162 查看
自己最近正在准备蓝桥杯的比赛刷提,综合网上大神的解法自己写出来了自己的代码

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



对方同时也需要在电脑 Dos 窗口中以字符的形式输出该标志,并能任意控制层数上面是对应输出 3 层嵌套的时候

1层嵌套如下



输入格式

输入一个整数n,表示嵌套层数

输出格式

对应层数的该标志





如图分成三部分

import java.util.Scanner;
public class Main1 {
public static void main(String[] argv) {
Scanner sc = new Scanner (System.in);
int n = sc.nextInt();
char a[][]=new char[130][130];
//数组初始化成'.'
for(int i=0;i<a.length;i++){
for(int j=0;j<a.length;j++){
a[i][j]='.';
}
}
int mid=5+(n-1)*2;//中线位置
for(int i=1;i<=mid;i++){
for(int j=mid;j>i+1;j--){
if(i%2!=0){
a[i][j]='$';//上三角
a[j][i]='$';//下三角
}
}
}
//中间赋值
for(int i=1;i<=mid;i++){
if(i%2!=0&&i!=1){
a[i][i]='$';
a[i][i-1]='$';
a[i-1][i]='$';
}
}
for(int i=1;i<=mid;i++){
//左上
for(int j=1;j<=mid;j++){
System.out.print(a[i][j]);
}
//右上
for(int k=mid-1;k>=1;k--){
System.out.print(a[i][k]);
}
System.out.println("");
}
for(int i=mid-1;i>=1;i--){
for(int j=1;j<=mid;j++){
System.out.print(a[i][j]);
}
for(int k=mid-1;k>=1;k--){
System.out.print(a[i][k]);
}
System.out.println("");
}

}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: