本帖最后由 NCry 于 2014-11-17 23:35 编辑
- /*1 2 3 4 5
- 16 17 18 19 6
- 15 24 25 20 7
- 14 23 22 21 8
- 13 12 11 10 9
- */
- public class LuoXuanDemo2 {
- public static void main(String[] args) {
- fun(3);
- }
- private static void fun(int i) {
- if(i<=0){
- System.out.println("输入数字有误,请输入大于零的数字");
- System.exit(0);
- }
- int count = 0,x=0,y=-1,size=i,l=0,temp=size;
- int[][] arr = new int[size][size]; //定义数组容器
- for(int q=0;q<(size+1)/2;q++){
- temp--;
- while(y<temp) arr[x][++y]=++count; //获取第一行1-5
- while(x<temp) arr[++x][y]=++count; //获取右边第一列
- while(y>l) arr[x][--y]=++count; //获取最后一行
- l++;
- while(x>l) arr[--x][y]=++count; //获取左边第一列
- }
- for(int a=0;a<size;a++){ //打印二维数组
- for(int b=0;b<size;b++){
- System.out.print(arr[a][b]+"\t");
- }
- System.out.println();
- }
- }
- }
复制代码 这是一个打印如上图的图形。这个是我们的作业题花了好长时间才搞出来。希望能给大家分享下。求支持,求顶啊!!!!
|