问一个关于程序的问题(附程序)

inter104 2008-06-05 10:20:45
本人才开始学习JAVA,今天看到一道题,自己试了试,方法很笨,编译通过了,可是在java的时候什么都不输出就显示输出结束了,实在没搞明白,现向各位请教,将本人写的程序如下:
import java.util.*;
public class WangLuoWenTi
{
public static void main(String[] args)
{
int[][] a=new int[3][];
a[0]=new int[2];
a[1]=new int[4];
a[2]=new int[2];
Random rand=new Random();
a[0][0]=rand.nextInt(9)+1;
a[0][1]=rand.nextInt(9)+1;
a[1][0]=rand.nextInt(9)+1;
a[1][1]=rand.nextInt(9)+1;
a[1][2]=rand.nextInt(9)+1;
a[1][3]=rand.nextInt(9)+1;
a[2][0]=rand.nextInt(9)+1;
a[2][1]=rand.nextInt(9)+1;
if ((a[0][0]!=a[0][1])&&(a[0][0]!=a[1][1])&&(((a[0][0])+1)!=a[0][1])&&
(((a[0][0])-1)!=a[0][1])&&(((a[0][0])+1)!=a[1][0])&&(((a[0][0])-1)!=a[1][0]))
{
if ((a[0][1]!=a[1][2])&&(((a[0][1])+1)!=a[1][2])&&(((a[0][1])-1)!=a[1][2]))
{
if ((a[1][0]!=a[1][1])&&(((a[1][0])-1)!=a[1][1])&&
(((a[1][0])+1)!=a[1][1]))
{
if ((a[1][1]!=a[2][0])&&(a[1][1]!=a[1][2])&&
(((a[1][1])-1)!=a[2][0])&&(((a[1][1])+1)!=a[2][0])&&
(((a[1][1])-1)!=a[1][2])&&(((a[1][1])+1)!=a[1][2]))
{
if ((a[1][2]!=a[2][1])&&(a[1][2]!=a[1][3])&&
(((a[1][2])+1)!=a[2][1])&&
(((a[1][2])-1)!=a[2][1])&&
(((a[1][2])+1)!=a[1][3])&&
(((a[1][2])-1)!=a[1][3]))
{
System.out.println(" "+a[0][0]+" "+a[0][1]);
System.out.println(a[1][0]+" "+a[1][1]+" "+
a[1][2]+" "+a[1][3]);
System.out.println(" "+a[2][0]+" "+a[2][1]);
}
}
}
}
}

}
}
...全文
45 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
inter104 2008-06-05
  • 打赏
  • 举报
回复
刚才小弟看了会别的也发现这个问题了,还是要谢谢二楼的朋友。
cxgman 2008-06-05
  • 打赏
  • 举报
回复
你的这个程序的要输出东西的前提是所有的判断语句(也就是IF语句)都必须为真才能有执行
以下的语句:
System.out.println(" "+a[0][0]+" "+a[0][1]);
System.out.println(a[1][0]+" "+a[1][1]+" "+ a[1][2]+" "+a[1][3]);
System.out.println(" "+a[2][0]+" "+a[2][1]);
vison22 2008-06-05
  • 打赏
  • 举报
回复
很简单,你的数组里的随机数的可选范围太小,很难符合你的if条件
跟你说一下,如果是我,我会这样解决(排错):
在第一个if前,把数组里的所有的元素的值打印出来,再比对一下if条件,你会豁然开朗的
inter104 2008-06-05
  • 打赏
  • 举报
回复
为了忠实于原题,发现程序中的一个问题,现将需要替换的部分,做完修改后重新写在下面,见谅!
a[0][0]=rand.nextInt(8)+1;
a[0][1]=rand.nextInt(8)+1;
a[1][0]=rand.nextInt(8)+1;
a[1][1]=rand.nextInt(8)+1;
a[1][2]=rand.nextInt(8)+1;
a[1][3]=rand.nextInt(8)+1;
a[2][0]=rand.nextInt(8)+1;
a[2][1]=rand.nextInt(8)+1;

62,629

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧