二维数组控制台打印可操作调试九宫格

本文介绍如何在控制台上打印一个1~9的二维数组,并设计键盘操作,使得数组的横排、竖排、斜排之和均为15。作者分享了个人实现这种九宫格游戏的思路,包括数字指标、移动指针的方法以及游戏逻辑。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

需求:要求在控制台打印一个值为1~9的普通二维数组,通过键盘操作使横排、竖排、斜排的和均为15.

需求分析:若要通过键盘操作使其移动到自己想要去的位置,首先因给数字设置一个指标,通过这个指标来确定我们要移动那个数字,当我们把一个数字移动到自己想要的位置后,我不想再让他改变,此时需要退出数字交换方法,重新移动指针,通过指针跳过该数字进行交换。因此,需要一个方法移动指针。

  

import java.util.Scanner;
public class SquaredUp {
	public static void main(String[] argc){
        //定义二维数组
		int[][] arr={
  
  {1,2,3},{4,5,6},{7,8,9}};
		Scanner sc=new Scanner(System.in);
		A a=new A();
		bb(arr, a);
       //对移动指针和交换数字进行一个重复循环,减少操作步骤
		while(true){
			if(judgeh(arr)==true){
				System.out.println("答案正确");
				bb(arr, a);
				break;
			}
			System.out.println("是否要交换数字,是:0;其他数字:移动指针;");
			int x=sc.nextInt();
			if(x==0){
				exchangArray(arr,a);
			}else{
				exchangPointer(a, arr);
			}
		}
	}
    //移动指针方法
	public static void exchangPointer(A a,int[][] arr){
		int i=a.x;
		int j=a.y;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值