[蓝桥杯2015初赛]打印大X

题目描述
小明希望用星号拼凑,打印出一个大X,他要求能够控制笔画的宽度和整个字的高度。
为了便于比对空格,所有的空白位置都以句点符来代替。
要求输入两个整数m n,表示笔的宽度,X的高度。
输入
输入存在多组数据
每组测试数据输入一行,包含两个整数,用空格分开
(0<m<n, 3<n<1000, 保证n是奇数)
输出
要求输出一个大X
样例输入 Copy
3 9
4 21
样例输出 Copy
在这里插入图片描述
在这里插入图片描述
代码如下

import java.util.Scanner;

public class Main {
	static char [][]arr;
      public static void main(String[] args) {
    	  int m,n;
    	  Scanner sc=new Scanner(System.in);
    	  while(sc.hasNext()) {
    	  m=sc.nextInt();
    	  n=sc.nextInt();
	      method(m,n);
	      print();
	      }
	}
      public static void method(int m,int n) {
    	  arr=new char [n][(n-m-1)+m*2];
    	  for(int i=0;i<arr.length;i++) {
    		  for(int j=0;j<arr[i].length;j++) {
    			  arr[i][j]='.';
    		  }
    	  }
    	  for(int i=0;i<arr.length;i++) {
    		  int temp=i;
    		  for(int j=i;j<temp+m;j++) {
    			  arr[i][j]='*';
    		  }
    	  }
    	  for(int i=0;i<arr.length;i++) {
    		  int temp=arr[i].length-1-i;
    		  for(int j=temp;j>temp-m;j--) {
    			  arr[i][j]='*';
    		  }
    	  }
      }
      public static void print() {
    	  for(int i=0;i<arr.length;i++) {
    		  for(int j=0;j<arr[i].length;j++) {
    			  System.out.print(arr[i][j]);
    		  }
    		  System.out.println();
    	  }
      }
}

较为简单,找规律的题目

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值