import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class bible
{
public static void main (String args[]) throws Exception
{
int result[]=null;
System.out.print("请输入待排序的数字,以空格隔开:");
System.out.print('\n');
BufferedReader in= new BufferedReader(new InputStreamReader(System.in));
String str=null;
while(true)
{
try
{
str=in.readLine();
}
catch(Exception e)
{
e.printStackTrace();
}
StringTokenizer stringt = new StringTokenizer(str);
result=new int[stringt.countTokens()+1];
for (int i=1;i<result.length;i++)
{
result[i]=Integer.valueOf(stringt.nextToken()).intValue();
for(int j=i+1;j<result.length;j++)
{
if (result[i]>result[j])
{
int tmp=0;
tmp=result[i];
result[i]=result[j];
result[j]=tmp;
}
}
System.out.println(result[i]);
}
} }
}
一个简单的冒泡排序,却有问题,比如我输入 9 8 7 6 返回结果却是0 0 0 6 帮我改改!
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class bible
{
public static void main (String args[]) throws Exception
{
int result[]=null;
System.out.print("请输入待排序的数字,以空格隔开:");
System.out.print('\n');
BufferedReader in= new BufferedReader(new InputStreamReader(System.in));
String str=null;
while(true)
{
try
{
str=in.readLine();
}
catch(Exception e)
{
e.printStackTrace();
}
StringTokenizer stringt = new StringTokenizer(str);
result=new int[stringt.countTokens()+1];
for (int i=1;i<result.length;i++)
{
result[i]=Integer.valueOf(stringt.nextToken()).intValue();
for(int j=i+1;j<result.length;j++)
{
if (result[i]>result[j])
{
int tmp=0;
tmp=result[i];
result[i]=result[j];
result[j]=tmp;
}
}
System.out.println(result[i]);
}
} }
}
一个简单的冒泡排序,却有问题,比如我输入 9 8 7 6 返回结果却是0 0 0 6 帮我改改!
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class bible
{
public static void main (String args[]) throws Exception
{
int result[]=null;
System.out.print("请输入待排序的数字,以空格隔开:");
System.out.print('\n');
BufferedReader in= new BufferedReader(new InputStreamReader(System.in));
String str=null;
while(true)
{
try
{
str=in.readLine();
}
catch(Exception e)
{
e.printStackTrace();
}
StringTokenizer stringt = new StringTokenizer(str);
result=new int[stringt.countTokens()+1];
for (int i=1;i<result.length;i++)
result[i]=Integer.valueOf(stringt.nextToken()).intValue();
for (int i=1;i<result.length;i++)
{
//result[i]=Integer.valueOf(stringt.nextToken()).intValue();
for(int j=i+1;j<result.length;j++)
{
if (result[i]>result[j])
{
int tmp=0;
tmp=result[i];
result[i]=result[j];
result[j]=tmp;
}
}
System.out.println(result[i]);
}
} }
}
result[i]=Integer.valueOf(stringt.nextToken()).intValue(); 最好用try{}catch(NumberFormatException e){} 捕获一下.