n("****************************************************"); System.out.println("请选择排序方式代号:"); x=s2.nextInt(); for(int i=0;i<9;i++)
");
{ int j,max; max=i; for(j=i+1;j<10;j++) { if(x==4&;&;number[j]>number[max]) max=j; else if(x==5&;&;age[j]>age[max]) max=j; else if(x==1&;&;chinese[j]>chinese[max]) max=j; else if(x==2&;&;math[j]>math[max]) max=j; else if(x==3&;&;english[j]>english[max]) max=j; } change(i,max); } System.out.println("已完成你选择的排序,你可选择打印功能进行查看!");
} public static void change(int i,int j) { String t1=name[i]; int t2=number[i]; int t3=age[i]; double t4=chinese[i]; double t5=math[i]; double t6=english[i]; double t7=p_ave[i]; double t8=t_score[i]; name[i]=name[j]; name[j]=t1; number[i]=number[j]; number[j]=t2; age[i]=age[j]; age[j]=t3; chinese[i]=chinese[j]; chinese[j]=t4; math[i]=math[j]; math[j]=t5;
english[i]=english[j]; english[j]=t6; p_ave[i]=p_ave[j]; p_ave[j]=t7; t_score[i]=t_score[j]; t_score[j]=t8; } //统计个人的总分,及平均分 public static void statistic1() { int i; for(i=0;i<10;i++) { t_score[i]=chinese[i]+math[i]+english[i]; p_ave[i]=t_score[i]/3; } } //统计整体的单科平均分,及总分平均分 public static void statistic2() { int i; double sum1=0.0,sum2=0.0,sum3=0.0,sum4=0.0; for(i=0;i<10;i++) { sum1+=chinese[i]; sum2+=math[i]; sum3+=english[i]; sum4+=t_score[i]; } c_ave[0]=sum1/10;//语文平均分 c_ave[1]=sum2/10;//数学平均分 c_ave[2]=sum3/10;//英语平均分 t_score_ave=sum4/10;//总分平均分 } public static void search() { int x,i,j; String k; Scanner s3=new Scanner(System.in); System
.out.println("请选择
查询的方式代号(1: 2:):"); x=s3.nextInt(); if(x==1) {
System.out.println("请输入要查找的学生:"); j=s3.nextInt(); for(i=0;i<10;i++) { if(j==number[i]) { System.out.printf("%d %s %d %.1f %.1f %.1f\n",number[i],name[i],age[i],chinese[i],math[i], english[i]); break; } } if(i>=10) System.out.println("没找到你想查找的学生!"); } if(x==2) { System.out.println("请输入要查找的学生:"); k=s3.next(); for(i=0;i<10;i++) { if(k.equals(name[i])) { System.out.printf("%d %s %d %.1f %.1f %.1f\n",number[i],name[i],age[i],chinese[i],math[i], english[i]); break; } } if(i>=10) System.out.println("没找到你想查找的学生!"); } } //打印所有信息 public static void print() { int i; System.out.println("**************个人信息如下******************"); System.out.println(" 年龄 语文 数学 英语 总分 平均分"); for(i=0;i<10;i++) {
System.out.printf("%d %s %d %.1f %.1f %.1f %.1f %.1f\n",number[i],name[i],age[i],chine se[i],math[i],english[i],t_score[i],p_ave[i]); } System.out.println("**************整体信息如下******************"); System.out.println("语文平均分"+c_ave[0]); System.out.println("数学平均分"+c_ave[1]); System.out.println("英语平均分"+c_ave[2]); System.out.println("总分平均分"+t_score_ave); } }
5.运行结果 运行结果
检索功能运行结果截图:
统计功能运行结果截图:
按语文成绩从高到底排序的运行结果截图:
按语文成绩从高到底排序的运行结果截图:
6.实验总结(含心得体会) 实验总结(含心得体会) 实验总结 通过编写此系统学到了: 1、能够应用字符串、数组等两种高级数据类型; 2、应用 Scanner 类的对象,读取不同类型的数据; 3、学会了在函数的参数传递中,传递 String 对象和数组对象; 4、会用 java 语言对数组中的元素进行排序;