螺旋打印一个二维数组

做的一个面试题,当时没做出来,后来自己想了想,做了出来。
做出来这样一个效果。

一开始做的时候一直想从中间的1开始输出,但一直做不出来,后来改变思路,从上面的最大的25开始输出,就是25,24,23……到1,这样输出。用4个变量  xtop,xbottom,yleft,yright来记录数组的4条边。做了一个循环,每次确定数组的最外面的4条边的值。
代码如下:
public static void main(String[] args){
		int[][] a ;
		Scanner input = new Scanner(System.in);
		System.out.println("请输入一个大于0的整数:");
		int x=0;
		try {
			x = input.nextInt();
		} catch (Exception e) {
		System.out.println("只能输入整数");
		return;
		}
		if (x<1){
			System.out.println("你输入的数字小于1了");
			return;
		}
		else{
			//上面的都是一些无关紧要的判断,关键代码在这里。
			a = new int[(2*x-1)][(2*x-1)];
			a[x-1][x-1]=1;
			int co
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值