问题:
再插入数字时,没有中断循环,导致从输入数处再次循环,如下错误结果:
3 3
1 2 4
1 2 3 3
4 3
1 2 4 5
1 2 3 3 4
当循环完成后记得中断;
3 3 1 2 4 0 0
1 2 3 4
代码:
import java.util.*;
public class Main{
public static void main(String args[]){
Scanner cin=new Scanner(System.in);
while(cin.hasNext()){
int n=cin.nextInt();
int m=cin.nextInt();
if(n==0&&m==0)
break;
else{
int a[]=new int[100];
for(int i=0;i<n;i++)
a[i]=cin.nextInt();
if(m>a[n-1])
a[n]=m;
else
{
for(int i=0;i<n;i++){
if(m<a[i]){
int j=i;
for( i=n;i>j;i--)
a[i]=a[i-1];
a[i]=m;
break;
}
}
}
for(int i=0;i<=n;i++)
if(i==0)
System.out.print(a[i]);
else
System.out.print(" "+a[i]);
}
System.out.println();
}
}
}
原文:http://blog.csdn.net/amx50b/article/details/45819585