A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 胡成成 中级黑马   /  2016-3-8 15:13  /  1897 人查看  /  19 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

题目:有五个学生,每个学生有3门课的成绩,从键盘输入以上数据(包括学生号,姓名,三门课成绩),计算出平均成绩,将原有的数据和计算出的平均分数存放在磁盘文件"stud"中。
import java.io.*;
public class Prog50{
        //定义学生模型
        String[] number = new String[5];
        String[] name = new String[5];
        float[][] grade = new float[5][3];
        float[] sum = new float[5];
        public static void main(String[] args) throws Exception{
                Prog50 stud = new Prog50();
                stud.input();
                stud.output();
        }
        //输入学号、姓名、成绩
        void input() throws IOException{
                BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
                //录入状态标识
                boolean isRecord = true;
                while(isRecord){
                        try{
                          for(int i=0;i<5;i++){
                                  System.out.print("请输入学号:");
                                  number = br.readLine();
                                  System.out.print("请输入姓名:");
                                  name = br.readLine();
                                  for(int j=0;j<3;j++){
                                          System.out.print("请输入第"+(j+1)+"门课成绩:");
                                          grade[j] = Integer.parseInt(br.readLine());
                                  }
                                  System.out.println();
                                  sum = grade[0]+grade[1]+grade[2];
                          }
                            isRecord = false;
                    }catch(NumberFormatException e){
                             System.out.println("请输入一个数字!");
                  }
                }
        }
        //输出文件
        void output() throws IOException{
                FileWriter fw = new FileWriter("E://java50//stud.txt");
                BufferedWriter bw = new BufferedWriter(fw);       
                bw.write("No.  "+"Name  "+"grade1  "+"grade2  "+"grade3  "+"average");
                bw.newLine();
                for(int i=0;i<5;i++){
                  bw.write(number);
                  bw.write("  "+name);
                  for(int j=0;j<3;j++)
                    bw.write("  "+grade[j]);
                  bw.write("  "+(sum/5));
                  bw.newLine();
                }
                bw.close();
        }
}

19 个回复

倒序浏览
学习了。
回复 使用道具 举报
666666666666666666666666666666666
回复 使用道具 举报
已学!!!
回复 使用道具 举报
66666666666666
回复 使用道具 举报
以学习  谢谢
回复 使用道具 举报
受教了,写的很不错
回复 使用道具 举报
可以把学生提出来做为一个类!
class student{
    String name;
    String math;
    String chinaese;
    String english;
    public student(){}
    public student(.....){
        ....
    }
    ....打字太麻烦此处省略setter和getter
}
拿走不谢
回复 使用道具 举报 2 0
已保存,谢谢
回复 使用道具 举报

不客气{:2_31:}{:2_30:}
回复 使用道具 举报
喧闹的世界 发表于 2016-3-10 09:29
可以把学生提出来做为一个类!
class student{
    String name;

谢谢了谢谢啦
回复 使用道具 举报
芸芸众生 发表于 2016-3-10 00:21
受教了,写的很不错

{:2_31:}{:2_32:}{:2_32:}{:2_32:}
回复 使用道具 举报

一起学习,,,,,加油
回复 使用道具 举报
回复 使用道具 举报

一起学习,加油
回复 使用道具 举报
赞成2楼              
回复 使用道具 举报
就是我 来自手机 中级黑马 2016-3-10 14:40:30
17#
集合基础视频有啊,涉及集合,学生类定义,键盘输入,再加上后面的输出流的知识
回复 使用道具 举报
。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
回复 使用道具 举报
回复 使用道具 举报
学习了,谢谢
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马