自己最近正在准备蓝桥杯的比赛刷提,综合网上大神的解法自己写出来了自己的代码
小明为某机构设计了一个十字型的徽标(并非红十字会啊),如下所示:
对方同时也需要在电脑 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("");
}
}
}