对数组的操作 一个成绩统计

 

  1import java.util.Scanner;
  2
  3public class StuManager {
  4
  5 /**
  6  * @param args
  7  */

  8 public static void main(String[] args) {
  9  int[][] scores={
 10    {54,65,78,89,97},
 11    {87,67,98,87,67},
 12    {87,98,76,98,76},
 13    {98,87,78,76,56},
 14    {87,87,65,65,76},
 15    {87,98,76,67,87},
 16    {74,84,83,93,74}
 17  }
;
 18  String[] students={"张三","李四","王五","马六","田七","刘八","马九"};
 19  String[] courses={"java","unix","jdbc","jsp","ejb"};
 20  Scanner sca=new Scanner(System.in);
 21  while(true){
 22   System.out.println("欢迎您使用学生成绩统计系统!"+"\n"+
 23     "1:查询课程总分平均分:avgcou 课程名"+"\n"+
 24     "2:查询学生总分平均分:avgstu 姓名"+"\n"+
 25     "3:查询学生莫一门课程:get 姓名 课程"+"\n"+
 26     "4:打印出全部成绩:s"+"\n"+
 27     "5:全部姓名:n"+"\n"+
 28     "6:全部课程:c"+"\n"+
 29     "7:退出程序:q"+"\n"+
 30       "请输入指令:");
 31   String str=sca.next();
 32   if (str.equals("q")) {
 33    System.exit(0);
 34   }
 else if (str.equals("avgcou")) {
 35    String cou = sca.next();
 36    avgcou(scores, courses, cou);
 37   }
else if(str.equals("avgstu")){
 38    String stu=sca.next();
 39    avgstu(scores,students,courses,stu);
 40   }
else if(str.equals("get")){
 41    String stu=sca.next();
 42    String cou=sca.next();
 43    get(scores,students,courses,stu,cou);
 44   }
else if(str.equals("n")){
 45    n(students);
 46   }
else if(str.equals("c")){
 47    c(courses);
 48   }
else if(str.equals("s")){
 49    s(scores);
 50   }

 51  }

 52 }

 53public static void s(int[][] scores){
 54 for(int i=0;i<scores.length;i++){
 55  for(int j=0;j<scores[0].length;j++){
 56   System.out.print(scores[i][j]+"  ");
 57  }
System.out.println();
 58 }

 59}

 60public static void n(String[] students){
 61 for(int i=0;i<students.length;i++){
 62   System.out.println(students[i]+"  ");
 63 }
System.out.println();
 64}

 65public static void c(String[] courses){
 66 for(int i=0;i<courses.length;i++){
 67   System.out.print(courses[i]+"  ");
 68 }
System.out.println();
 69}

 70 public static void avgcou(int[][] scores, String[] courses, String cou) {
 71  int index=-1;
 72  int sum=0;
 73  for(int i=0;i<courses.length;i++){
 74   if(cou.equals(courses[i])){
 75    index=i;
 76    //找到课程的下标
 77    break;
 78   }

 79  }

 80  if(index==-1){
 81   System.out.println("您输入的课程不存在,请重新输入:");
 82   return;
 83  }

 84  for(int i=0;i<scores.length;i++){
 85   sum+=scores[i][index];//成绩累加
 86  }

 87  System.out.println("您查询" + cou + "课程的总分为:" + sum + "平均分为" + sum
 88    / scores.length);
 89 }

 90 public static void avgstu(int[][] scores,String[] students,String[] courses,String stu){
 91  int index=-1;
 92  int sum=0;
 93  for(int i=0;i<students.length;i++){
 94   if(stu.equals(students[i])){
 95    index=i;
 96    break;
 97   }

 98  }

 99  if(index==-1) System.out.println("您输入的学生姓名不存在,请重新输入!");
100  for(int i=0;i<scores[0].length;i++){
101   sum+=scores[index][i];
102  }

103  int avg=sum/scores[index].length;
104  System.out.println("您查询学生"+stu+"的总分为"+sum+"平均分为"+avg);
105 }

106 public static void get(int[][] scores,String[] students,String[] courses,String stu,String cou){
107  int stuindex=-1;
108  int couindex=-1;
109        for (int i = 0; i < students.length; i++{
110   if (stu.equals(students[i])) {
111    stuindex = i;
112    for (int j = 0; j < students.length; j++{
113     if (cou.equals(courses[j])) {
114      couindex = j;
115      System.out.println(stu+"同学"+cou+"课程分数为"+scores[i][j]);
116      break;
117     }

118    }

119   }

120  }

121        if(stuindex==-1||couindex==-1) System.out.println("您输入的学生姓名或者是课程不存在,请重新输入!");
122 }

123}

124

posted on 2008-08-24 00:16 姜波 阅读(327) 评论(0)  编辑  收藏 所属分类: java 代码


只有注册用户登录后才能发表评论。


网站导航:
 
<2008年8月>
272829303112
3456789
10111213141516
17181920212223
24252627282930
31123456

导航

统计

常用链接

留言簿(1)

随笔分类

随笔档案

website

搜索

最新评论

阅读排行榜

评论排行榜