我正在创建一个像乘法表闪存卡一样运行的程序。目标是从0-12中选择两个随机数,并要求用户输入正确的答案。我的想法是使用多维数组来存储表,然后使用数组中的索引为用户生成随机“闪存卡”。下面我的代码正常运行,因为它选择了两个随机索引并给出了答案,但是,我不确定如何拉出已经选择的单个索引。对于前者程序可能会根据我的代码输出99,很明显所选的数字是11和9,但是,我不知道如何返回乘数。另外,每当我声明一个数组并在同一个语句中实例化时,我都会收到警告。进入这是一个坏习惯吗?
int i, j;
int MDArray[][]=new int [13][13];
for(i=0; i<13; i++)
for(j=0; j<13; j++)
MDArray[i][j]=i*j;
System.out.println(Arrays.deepToString(MDArray));
int index1=(int)(Math.random()*13);
int index2=(int)(Math.random()*13);
int answer;
answer = MDArray[index1][index2];
答案 0 :(得分:1)
index1
和index2
是你的乘数,问题是什么?
您可以打印任何基元:
int i, j;
int MDArray[][]=new int [13][13];
for(i=0; i<13; i++)
for(j=0; j<13; j++)
MDArray[i][j]=i*j;
int index1=(int)(Math.random()*13);
int index2=(int)(Math.random()*13);
int answer;
answer = MDArray[index1][index2];
System.out.println(index1+"x"+index2+" = "+answer);
您也可以单独打印
System.out.println(index1);