还没学到集合,用StringBuffer作了一下灌灌水
//输入一个整数,再由用户输入要删除数的个数,按原来的顺序排只是把要删除的数从中抽出import java.io.*;
class xct{
void output(String str,int n){
StringBuffer sb=new StringBuffer(str);
int i=0;
//int l=sb.length();
while(n!=0){
if(sb.charAt(i)>sb.charAt(i+1)&&sb.charAt(i+1)!='0'){ //删除高位较大的数
sb.deleteCharAt(i);
n--;
}
else
i++;
if(i>=sb.length()-n)break;
}
if(n!=0)sb.delete(i,sb.length()); //直接删除剩下的数
System.out.println(sb);
}
public static void main(String [] args) throws IOException{
int n;
String numstr;
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
do{
System.out.print("请输入一个数 : ");
numstr=br.readLine();
System.out.print("数字长度为 : "+ numstr.length()+"\n请输入要删除数字的位数 : ");
n=Integer.parseInt(br.readLine());
if(n<numstr.length())break;
else System.out.println("所删除位数不能大于数字长度,重新输入!");
}while(true);
xct t=new xct();
t.output(numstr,n);
}
}
[此贴子已经被作者于2006-5-18 19:14:56编辑过]