我是靠谱客的博主 淡定宝马,最近开发中收集的这篇文章主要介绍二维数组(N*N),沿对角线方向,从右上角打印到左下角如N=4:,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

4*4二维数组
{{1,2,3,4},
{5,6,7,8},
{9,10,11,12},
{13,14,15,16}}

打印顺序 

4
3 8
2 7 12 
1 6 11 16
5 10 15
9 14
13
两种实现方法,原理相同:

package com.edu.csu.test;

public class Test {

	/**
	 * @param args
	 */
	public static void main(String[] args){
        int[][] str = {{1,2,3,4},{5,6,7,8},{9,10,11,12},{13,14,15,16}};
//        int[][] arr = {{1,2,3},{4,5,6},{7,8,9}};
//        arrayPrint(str);
        array(str);
    }	
	
	//方法一
	private static void array(int[][] arr){
		for(int y= 0; y<arr.length;y++){
			int i = 0;
			int j = arr.length-1-y;
			for(int x = j;x < arr.length;i++,x++){
				System.out.print(arr[i][x]+" ");
		
			}
			System.out.println();
		}
		
		for(int i = 1; i < arr.length; i++){
			int x = 0;
			int y = i;
			for(int j = i;j < arr.length;j++,x++){
				System.out.print(arr[j][x]+" ");
			}
			System.out.println();
		}
	}
	
	//方法二:
	private static void arrayPrint(int[][] str){
	       int i=0;
	        int j=str.length-1;
	        while(i<str.length){
	            for(int k=0;k<=i;k++){
	                System.out.print(str[k][j-i+k]+" ");
	            }
	            i++;
	            System.out.println();
	        }
	        i=1;
	        j=0;
	        while(i<str.length){
	            for(int k=i;k<str.length;k++){
	                System.out.print(str[k][j+k-i]+" ");
	            }
	            i++;
	            System.out.println();
	        }
	}


}




最后

以上就是淡定宝马为你收集整理的二维数组(N*N),沿对角线方向,从右上角打印到左下角如N=4:的全部内容,希望文章能够帮你解决二维数组(N*N),沿对角线方向,从右上角打印到左下角如N=4:所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(44)

评论列表共有 0 条评论

立即
投稿
返回
顶部