
java程序改错
packageshiyan3;importjava.io.IOException;publicclassSortArray{publicstaticvoidmain(St...
package shiyan3;
import java.io.IOException;
public class SortArray {
public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
int m, n,k;
int aa[]=new int [6];
int bb[]=new int [6];
int cc[]=new int [12];
for (int i=0;i<=6;i++)
{
m=(int) (100*Math.random());
aa[i]=m;
n=(int) (100*Math.random());
bb[i]=n;
System.out.println(aa[i]+" "+bb[i]);
}
for (int i=0;i<6;i++)
{
for(int j=i;j<6;j++)
{
if(aa[i]>aa[j])
{
int t=aa[i];aa[i]=aa[j];aa[j]=t;
}
if(bb[i]>bb[j])
{
int t=bb[i];bb[i]=bb[j];bb[j]=t;
}
}
}
m=0;
n=0;
k=0;
while (m==6 && n==6)
{
if(aa[m]<=bb[n])
{
cc[k]=aa[m];
m++;
}
else
{
cc[k]=bb[n];
n++;
}
k++;
}
while (m==6) {
cc[k]=aa[m];m++;k++;
}
while (n==6)
{
cc[k]=bb[n];n++;k++;
}
for (int i=0;i<12;i++)
{
System.out.print(cc[i]+" ");
}
}
}
错在哪里 展开
import java.io.IOException;
public class SortArray {
public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
int m, n,k;
int aa[]=new int [6];
int bb[]=new int [6];
int cc[]=new int [12];
for (int i=0;i<=6;i++)
{
m=(int) (100*Math.random());
aa[i]=m;
n=(int) (100*Math.random());
bb[i]=n;
System.out.println(aa[i]+" "+bb[i]);
}
for (int i=0;i<6;i++)
{
for(int j=i;j<6;j++)
{
if(aa[i]>aa[j])
{
int t=aa[i];aa[i]=aa[j];aa[j]=t;
}
if(bb[i]>bb[j])
{
int t=bb[i];bb[i]=bb[j];bb[j]=t;
}
}
}
m=0;
n=0;
k=0;
while (m==6 && n==6)
{
if(aa[m]<=bb[n])
{
cc[k]=aa[m];
m++;
}
else
{
cc[k]=bb[n];
n++;
}
k++;
}
while (m==6) {
cc[k]=aa[m];m++;k++;
}
while (n==6)
{
cc[k]=bb[n];n++;k++;
}
for (int i=0;i<12;i++)
{
System.out.print(cc[i]+" ");
}
}
}
错在哪里 展开
1个回答
展开全部
执行如下代码后报错信息是:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: Index 6 out of bounds for length 6
at SortArray.main(SortArray.java:21)
package shiyan3;
import java.io.IOException;
public class SortArray {
public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
int m;
// TODO Auto-generated method stub
int n;
// TODO Auto-generated method stub
int k;
int[] aa = new int[6];
int[] bb = new int[6];
int[] cc = new int[12];
for (int i = 0; i <= 6; i++) {
m = (int) (100 * Math.random());
aa[i] = m;
n = (int) (100 * Math.random());
bb[i] = n;
System.out.println(aa[i] + " " + bb[i]);
}
for (int i = 0; i < 6; i++) {
for (int j = i; j < 6; j++) {
if (aa[i] > aa[j]) {
int t = aa[i];
aa[i] = aa[j];
aa[j] = t;
}
if (bb[i] > bb[j]) {
int t = bb[i];
bb[i] = bb[j];
bb[j] = t;
}
}
}
m = 0;
n = 0;
k = 0;
while ((m == 6) && (n == 6)) {
if (aa[m] <= bb[n]) {
cc[k] = aa[m];
m++;
} else {
cc[k] = bb[n];
n++;
}
k++;
}
while (m == 6) {
cc[k] = aa[m];
m++;
k++;
}
while (n == 6) {
cc[k] = bb[n];
n++;
k++;
}
for (int i = 0; i < 12; i++) {
System.out.print(cc[i] + " ");
}
}
}
第21行是从0到6,也就是7次循环,应该把<=6改为<6。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询