我想生成一张图 只要画出中间那只鸟就可以了
 但是我 运行这代码的时候
 出现的都是null 晕死 谁帮我看下哪里错了的
 
                                                      £     ==空格49 =50
                                                     ≠   =2
                         ◎    =5
      ◎    =8
=11         *〓◎≠◎◎◎◎≠
==22      ◎              ◎
==27      *   ◎         ◎
==34      ◎    ◎        ◎
==41      ≠     *       ◎
==48      ◎              ◎
==53      ◎
==56      ◎◎◎◎≠◎◎◎〓
                                                                   ◎
==70                          ◎
                                                  ◎◎◎◎◎≠◎◎ 〓
==84             ◎
                                                           ◎◎  ♂ =90
public class game { public static void main(String[] args){
String[] tu = new String[49];
tu[0] = "£";
for(int i =0;i>50;i++){  //生成前50个图形
switch(i){
case 2:
case 3:
case 6:
case 8:
case 9:
case 10:
case 11:
case 13:
case 14:
case 16:
case 17:
case 18:
case 19:
case 20:
case 23:
case 24:
case 25:
case 26:
case 27:
case 28:
case 29:
case 30:
case 32:
case 33:
case 34:
case 36:
case 37:
case 38:
case 39:
case 40:
case 41:
case 42:
case 44:
case 45:
case 47:
case 48:
case 49:
tu[i] = "◎";
break;
case 1:
case 7:
case 12:
case 21:
case 31:
case 43:
tu[i] = "≠";
break;

case 4:
case 15:
case 22:
tu[i] = "*";
break;
case 5:
case 35:
case 46:
tu[i] = "〓";
break;
case 50:
tu[i] ="♂";
break;
// 地图完成  【鸟】
}

}
for(int i=0;i<49;i++){System.out.print(" ");}
System.out.println(tu[0]);

for(int i=0;i<48;i++){System.out.print(" ");}
System.out.println(tu[1]);

for(int i=0;i<47;i++){System.out.print(" ");}
System.out.println(tu[2]);

for(int i=0;i<46;i++){System.out.print(" ");}
System.out.println(tu[3]);

for(int i=0;i<45;i++){System.out.print(" ");}
for(int i=4;i<=12;i++){System.out.println(tu[i]);}

for(int i=0;i<45;i++){System.out.print(" ");}
System.out.print(tu[13]);

for(int i=0;i<13;i++){System.out.print(" ");}
System.out.println(tu[14]);

for(int i=0;i<45;i++){System.out.print(" ");}
System.out.print(tu[15]);
for(int i=0;i<2;i++){System.out.print(" ");}
System.out.print(tu[16]);
for(int i=0;i<8;i++){System.out.print(" ");}
System.out.println(tu[17]);

for(int i=0;i<45;i++){System.out.print(" ");}
System.out.print(tu[18]);
for(int i=0;i<3;i++){System.out.print(" ");}
System.out.print(tu[19]);
for(int i=0;i<7;i++){System.out.print(" ");}
System.out.println(tu[20]);

for(int i=0;i<45;i++){System.out.print(" ");}
System.out.print(tu[21]);
for(int i=0;i<4;i++){System.out.print(" ");}
System.out.print(tu[22]);
for(int i=0;i<6;i++){System.out.print(" ");}
System.out.println(tu[23]);

for(int i=0;i<45;i++){System.out.print(" ");}
System.out.print(tu[24]);
for(int i=0;i<13;i++){System.out.print(" ");}
System.out.println(tu[25]);

for(int i=0;i<45;i++){System.out.print(" ");}
System.out.println(tu[26]);

for(int i=0;i<45;i++){System.out.print(" ");}
for(int i=27;i<=35;i++){System.out.println(tu[i]);}

for(int i=0;i<60;i++){System.out.print(" ");}
System.out.println(tu[36]);

for(int i=0;i<60;i++){System.out.print(" ");}
System.out.println(tu[37]);

for(int i=0;i<43;i++){System.out.print(" ");}
for(int i=38;i<=45;i++){System.out.print(tu[i]);}
System.out.println(" "+tu[46]);

for(int i =0;i<60;i++){System.out.print(" ");}
System.out.println(tu[47]);

for(int i =0;i<59;i++){System.out.print(" ");}
System.out.print(tu[48]+tu[49]);
System.out.println(" "+tu[50]);




}
}

解决方案 »

  1.   

    用JAVA写这样的代码,恐怖!我觉得用C比较好,估计C也不是你这样写的啊!
      

  2.   

    你看看你的for循环,i>50,怎么会有匹配的~~~
      

  3.   

    String[] tu = new String[51]; //此处注意你的范围,要和循环匹配,否则会下标越界
    tu[0] = "£"; 
    for(int i =0;i<50;i++){  //生成前50个图形 
    switch(i){ 
    case 2: 
    case 3: 
    case 6: 
    case 8: 
    case 9: 
    case 10: 
    case 11: 
    case 13: 
    case 14: 
    case 16: 
    case 17: 
    case 18: 
    case 19: 
    case 20: 
    case 23: 
    case 24: 
    case 25: 
    case 26: 
    case 27: 
    case 28: 
    case 29: 
    case 30: 
    case 32: 
    case 33: 
    case 34: 
    case 36: 
    case 37: 
    case 38: 
    case 39: 
    case 40: 
    case 41: 
    case 42: 
    case 44: 
    case 45: 
    case 47: 
    case 48: 
    case 49: 
    tu[i] = "◎"; 
    break; 
    case 1: 
    case 7: 
    case 12: 
    case 21: 
    case 31: 
    case 43: 
    tu[i] = "≠"; 
    break;  case 4: 
    case 15: 
    case 22: 
    tu[i] = "*"; 
    break; 
    case 5: 
    case 35: 
    case 46: 
    tu[i] = "〓"; 
    break; 
    case 50: 
    tu[i] ="♂"; 
    break; 
    // 地图完成  【鸟】 
    }  } 
    for(int i=0;i <49;i++){System.out.print(" ");} 
    System.out.println(tu[0]);  for(int i=0;i <48;i++){System.out.print(" ");} 
    System.out.println(tu[1]);  for(int i=0;i <47;i++){System.out.print(" ");} 
    System.out.println(tu[2]);  for(int i=0;i <46;i++){System.out.print(" ");} 
    System.out.println(tu[3]);  for(int i=0;i <45;i++){System.out.print(" ");} 
    for(int i=4;i <=12;i++){System.out.println(tu[i]);}  for(int i=0;i <45;i++){System.out.print(" ");} 
    System.out.print(tu[13]);  for(int i=0;i <13;i++){System.out.print(" ");} 
    System.out.println(tu[14]);  for(int i=0;i <45;i++){System.out.print(" ");} 
    System.out.print(tu[15]); 
    for(int i=0;i <2;i++){System.out.print(" ");} 
    System.out.print(tu[16]); 
    for(int i=0;i <8;i++){System.out.print(" ");} 
    System.out.println(tu[17]);  for(int i=0;i <45;i++){System.out.print(" ");} 
    System.out.print(tu[18]); 
    for(int i=0;i <3;i++){System.out.print(" ");} 
    System.out.print(tu[19]); 
    for(int i=0;i <7;i++){System.out.print(" ");} 
    System.out.println(tu[20]);  for(int i=0;i <45;i++){System.out.print(" ");} 
    System.out.print(tu[21]); 
    for(int i=0;i <4;i++){System.out.print(" ");} 
    System.out.print(tu[22]); 
    for(int i=0;i <6;i++){System.out.print(" ");} 
    System.out.println(tu[23]);  for(int i=0;i <45;i++){System.out.print(" ");} 
    System.out.print(tu[24]); 
    for(int i=0;i <13;i++){System.out.print(" ");} 
    System.out.println(tu[25]);  for(int i=0;i <45;i++){System.out.print(" ");} 
    System.out.println(tu[26]);  for(int i=0;i <45;i++){System.out.print(" ");} 
    for(int i=27;i <=35;i++){System.out.println(tu[i]);}  for(int i=0;i <60;i++){System.out.print(" ");} 
    System.out.println(tu[36]);  for(int i=0;i <60;i++){System.out.print(" ");} 
    System.out.println(tu[37]);  for(int i=0;i <43;i++){System.out.print(" ");} 
    for(int i=38;i <=45;i++){System.out.print(tu[i]);} 
    System.out.println(" "+tu[46]);  for(int i =0;i <60;i++){System.out.print(" ");} 
    System.out.println(tu[47]);  for(int i =0;i <59;i++){System.out.print(" ");} 
    System.out.print(tu[48]+tu[49]); 
    System.out.println(" "+tu[50]); //这一句也要注意循环时下标越界

    ....你根据你自己的业务逻辑修改吧