1 /*50 【程序 50 文件 IO】
2 题目:有五个学生,每个学生有 3 门课的成绩,从键盘输入以上数据(包括学生号,姓名,三门课成
3 绩),计算出平均成绩,将原有的数据和计算出的平均分数存放在磁盘文件"stud"中。
4 */
5
6 /*分析
7 * 1、自定义类student,包括学号,姓名,科目1成绩,科目2成绩,科目3成绩,平均成绩
8 * public class 类名{
9 *.数据类型 属性名称1;
10 *.数据类型 属性名称2;
11 * …
12 * }
13 * 2、分别调用三个学生的三科成绩,求出平均值后存入学生的信息中
14 * 3、将信息表存入磁盘文件中
15 * */
16 /*数据
17 * 12 王力宏 66 77 88
18 * 13 周杰伦 123 109 121
19 * 14 薛之谦 89 72 123
20 * */
21
22
23 package homework;
24
25 import java.io.BufferedWriter;
26 import java.io.FileWriter;
27 import java.io.IOException;
28 import java.util.ArrayList;
29 import java.util.List;
30 import java.util.Scanner;
31
32 public class _50{
33
34 public static void main(String[] args) {
35 // 建立List容器,用来保存学习信息
36 List<Student> list = new ArrayList<Student>();
37 Scanner sc=new Scanner(System.in); //系统输入扫描器
38 for (int i = 0; i < 3; i++) {
39 System.out.println("请输入第"+(i+1)+"个同学的学号、姓名、成绩1、成绩2、成绩3:(以空格相隔)");
40 String[] s = sc.nextLine().split(" "); //从键盘得到一个字符串,用空格分割为5个子字符串
41 int ID = Integer.parseInt(s[0]); //得到ID
42 String name=s[1]; //姓名
43 int grade1 = Integer.parseInt(s[2]); //成绩1
44 int grade2 = Integer.parseInt(s[3]); //成绩2
45 int grade3 = Integer.parseInt(s[4]); //成绩3
46 int aver=(grade1+grade2+grade3)/3; //用3个成绩计算出平均成绩
47 Student stu = new Student(ID, name, grade1, grade2, grade3, aver);
48 list.add(stu); //将数据存入数据表中
49 }
50 sc.close(); //关闭扫描仪
51 //输出数据表中的所有数据
52 for(int i = 0 ; i<list.size();i++){
53 System.out.print(list.get(i)+"\n");
54 }
55
56 //创建一个字符缓冲输出流=====看不到懂啊
57 BufferedWriter out = null;
58 try {
59 out = new BufferedWriter(new FileWriter("D:/stud.txt")); //将数据存到"D:/stud.txt"
60 for (int i = 0; i < list.size(); i++) { //遍历数据表
61 out.write(list.get(i)+"\n"); //将数据写入到
62 out.newLine(); // 换行
63 }
64 } catch (IOException e) {
65 e.printStackTrace();
66 } finally {
67 try {
68 if (out != null) {
69 out.close();
70 }
71 } catch (IOException e) {
72 e.printStackTrace();
73 }
74 }
75
76 }
77
78 //自定义类Student
79 public static class Student{
80 int ID; //学号
81 String name; //姓名
82 private float grade1; //成绩1
83 private float grade2; //成绩2
84 private float grade3; //成绩3
85 private float aver; //平均成绩
86
87 public Student(int ID,String name,float grade1,float grade2,float grade3,float aver) {
88 this.ID = ID;
89 this.name = name;
90 this.grade1 = grade1;
91 this.grade2 = grade2;
92 this.grade3 = grade3;
93 this.aver=aver;
94 }
95
96 public String toString() {
97 return "学生学号:"+ID+" 姓名:"+name+" 成绩1:"+grade1+" 成绩2:"+grade2+" 成绩3:"
98 +grade3+" 平均成绩:"+aver ;
99 }
100
101 }
102
103 }

java例题_50 题目:有五个学生,每个学生有 3 门课的成绩,从键盘输入以上数据(包括学生号,姓名,三门课成 绩),计算出平均成绩,将原有的数据和计算出的平均分数存放在磁盘文件"stud"中。的更多相关文章

  1. /* * 有五个学生,每个学生有3门课的成绩,从键盘输入以上数据 *(包括学生号,姓名,三门课成绩),计算出平均成绩, *将原有的数据和计算出的平均分数存放在磁盘文件"stud"中。 */

    1.Student类:类中有五个变量,分别是学号,姓名,三门成绩 package test3; public class Student { private int num; private Stri ...

  2. 代码实现:有五个学生,每个学生有3门课的成绩,从键盘输入以上数据 (包括学生号,姓名,三门课成绩),计算出平均成绩,将原有的数据和计算出的平均分数存放在磁盘文件"stud"中。

    import java.io.BufferedWriter; import java.io.FileWriter; import java.io.IOException; import java.ut ...

  3. java利用Scanner获取键盘输入

    首发地址:我的网易博客 在运行一个java程序的时候,可能我们需要在运行的时候传递一些参数进去...咋办呢... java提供了一个Scanner类,利用这个类,我们可以很方便的获取键盘输入的参数.. ...

  4. JAVA第三周作业(从键盘输入若干数求和)

    JAVA第三周作业(从键盘输入若干数求和) 在新的一周,我学习了JAVA的IO编程.下面的代码实现了从键盘输入若干数求和的目标.import java.util.Scanner; public cla ...

  5. java例题_47 读取 7 个数(1—50)的整数值,每读取一个值,程序打印出该值个数的*

    1 /*47 [程序 47 打印星号] 2 题目:读取 7 个数(1-50)的整数值,每读取一个值,程序打印出该值个数的*. 3 */ 4 5 /*分析 6 * 1.多次读取---for循环 7 * ...

  6. 案例:利用累加器计算前N个学生的总成绩和平均成绩

    /* *录入N个学生的成绩,并求出这些学生的总成绩和平均成绩! * */ import java.util.Scanner; public class SumTest{ public static v ...

  7. 【Java例题】5.1 多项式计算

    1. 计算下列多项式的值. pn=an*x^n+...+a1*x+a0其中,"^"表示乘方. x.n以及ai(i=0,1,...,n-1)由键盘输入. package chapte ...

  8. 【Java例题】2.3 计算银行存款本息

    3.计算银行存款本息. 用户输入存款金额money,存款期years和年利率rate, 根据公式: sum=money(1+rate)^years ,计算到期存款本息. 这里的"^" ...

  9. Java算法-各种题目总结

    1.排列计算 /*[程序1] 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? 1.程序分析: 兔子 ...

随机推荐

  1. 24 Days Of JavaScript mas

    24 Days Of JavaScript mas Level up your JavaScript skills with a daily coding challenge from Decembe ...

  2. JavaScript 注释规范

    JavaScript 注释规范 总原则 As short as possible(如无必要,勿增注释).尽量提高代码本身的清晰性.可读性. As long as necessary(如有必要,尽量详尽 ...

  3. javascript 克隆对象/数组的方法 clone()

      1 11 javascript 克隆对象/数组的方法 clone() 1 demo: code: 1 var Obj; 2 let clone = (Obj) => { 3 var buf; ...

  4. how to get window width in javascript

    how to get window width in javascript how to get window width in js How to Detect Screen Resolution ...

  5. SVG 场馆图

    SVG 场馆图 https://www.infoq.cn/article/1BVg9VDSmqyHv3W3TeNH https://mp.weixin.qq.com/s/aNPAfJIHL14NFtL ...

  6. Google can't be accessed again, today is shit day

    Google can't be accessed again, today is shit day 2019.11.28 12:00~20:56 holy shit (pile of poop) Go ...

  7. 让 gRPC 提供 REST 服务

    让 gRPC 提供 REST 服务 Intro gRPC 是一个高性能.开源和通用的 RPC 框架,面向移动和 HTTP/2 设计. gRPC 基于 HTTP/2 标准设计,带来诸如双向流.流控.头部 ...

  8. 对DevOps的九大误解,是时候纠正了!

    DevOps是开发和运维的结合,有助于集成和自动化测试过程以及部署存储库,还提供了透明度以及灵活性.DevOps的目标如下: ●更快的上市时间(TTM). ●减少各种修复之间的前置时间.●提高部署频率 ...

  9. 内核栈与thread_info结构详解

    本文转载自内核栈与thread_info结构详解 什么是进程的内核栈? 在内核态(比如应用进程执行系统调用)时,进程运行需要自己的堆栈信息(不是原用户空间中的栈),而是使用内核空间中的栈,这个栈就是进 ...

  10. Error: Actions must be plain objects. Use custom middleware for async actions.

    原本代码: import { SREACH_FOCUS, SREACH_BLUR } from "./actionType" export const searchFocus = ...