import java.awt. * ; import java.applet. * ; public class BubbleSort extends Applet { Label prompt=new Label("请输入欲排序的整数数据(最多10个): "); TextField input=new TextField(5); Button sortbtn=new Button("排序"); int[] DataArray=new int[10]; int DataInputed=0; int[][] SortPro=new int[11][10]; public void init() { add(prompt);add(input);add(sortbtn); } public void paint(Graphics g){ for(int i=0;i<SortPro.length;i++) for(int j=0;j<SortPro[i].length;j++) g.drawString(Integer.toString(SortPro[i][j]),10+30*j,40+20*i); } public boolean action(Event e,Object o){ if(e.target==input){ DataArray[DataInputed++]=Integer.parseInt(input.getText()); if(DataInputed<10){ prompt.setText("已输入"+DataInputed+"个数据,请继续"); input.setText(""); } else {prompt.setText("已输入10个数据,不能再输入了"); input.hide(); } } if(e.target==sortbtn) {for(int i=0;i<DataArray.length;i++) SortPro[0][i]=DataArray[i]; SortProcedure(); repaint(); } return true; } void SortProcedure(){ int pass,i,temp,exchangeCnt; for(pass=0;pass<DataArray.length;pass++) { exchangeCnt=0; for(i=0;i<DataArray.length-pass-1;i++) { if(DataArray[i]>DataArray[i+1]) {temp=DataArray[i]; DataArray[i]=DataArray[i+1]; DataArray[i+1]=temp; exchangeCnt++; } } for(i=0;i<DataArray.length;i++) SortPro[pass+1][i]=DataArray[i]; if(exchangeCnt==0) return; } } } 沉默奔跑者 2008-03-11 11:08 发表评论