首页 新闻 会员 周边 捐助

帮我看看代码

0
悬赏园豆:80 [已关闭问题] 关闭于 2009-10-27 20:24


public class ChoiSort
{
 public static void main(String[] args)
 {
  int i,min;
  int str[]={2,13,41,58,32};
  for(i=0;i<5;i++)
  {
   min=i;
   for(int j=i+1;j<6;j++)
   {
    if(str[min]>str[j])
    {
     int at=str[i];
     str[i]=str[min];
     str[min]=at;
    }
   }
  }
  for(i=0;i<5;i++)
  
   System.out.println(str[i]+" ");
  
 }
  

}

显示数组越界,但是小弟刚刚接触编程,请指教并作出一些指导,谢谢!

福荣的主页 福荣 | 初学一级 | 园豆:0
提问于:2009-10-27 18:31
< >
分享
所有回答(1)
0

 for(int j=i+1;j<6;j++)
这一句中j<6决定了j可以等于5,所以str[j]越界,str最大下标只能为4

BBK | 园豆:210 (菜鸟二级) | 2009-10-27 19:28
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册