1、需求分析

1.1、需求分析概述

需求分析是我们在软件开发中的重要环节,是软件开发的第一步也是最基础的环节,这将决定我们所实现的目标以及系统的各个组成部分、各部分的任务职能、以及使用到的数据结构、各个部门之间的组成关系和数据流程,为我们的系统设计打下基础。

1.2、学生管理系统需求分析

1、实现数据的录入(INSERT)、删除(DELETE)、修改(UPDATE)、查找(SELECT)。

2、根据学生姓名查询信息

3、更新学生的班级

4、根据班级编号查询学生信息

5、根据学生id删除学生信息

6、插入学生分数记录

7、修改学生成绩

8、删除学生成绩

9、删除成绩

10、根据班级id查询所有学生的成绩

11、根据班级名称查询班级信息

2、设计思路

1、将数据库中的Student、Classes、Course、Score四张表封装为实体类

2、设计三种Classes、Score、Student对象的工具类,工具类的主要工作就是与数据库进行交互,实现录入(INSERT)、删除(DELETE)、修改(UPDATE)、查找(SELECT)四种操作。

3、主函数实现界面的修饰,根据我们的需求实现对某个对象的具体操作,界面的功能主要是通过调用我们所实现的工具类进行完成操作,所以说,界面能实现哪些功能取决于我们能够在工具类中所能实现哪些功能

2.1、流程图

根据上述系统功能的分析,按照结构化程序设计的要求,得到系统的结构图,如下图所示

3、详细设计

3.1、设计四张表的实体类

Classes表


public class Classes {private int id;private String name;private String desc;public int getId() {return id;}public void setId(int id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}public String getDesc() {return desc;}public void setDesc(String desc) {this.desc = desc;}
}

Course表


public class Course {public int getId() {return id;}public void setId(int id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}private int id;private String name;
}

Score表


import java.math.BigDecimal;public class Score {private int id;private BigDecimal score;private int studentId;private int courseId;private Student student;private Course course;public Student getStudent() {return student;}@Overridepublic String toString() {return "Score{" +"id=" + id +", score=" + score +", studentId=" + studentId +", courseId=" + courseId +'}';}public void setStudent(Student student) {this.student = student;}public Course getCourse() {return course;}public void setCourse(Course course) {this.course = course;}public int getId() {return id;}public void setId(int id) {this.id = id;}public BigDecimal getScore() {return score;}public void setScore(BigDecimal score) {this.score = score;}public int getStudentId() {return studentId;}public void setStudentId(int studentId) {this.studentId = studentId;}public int getCourseId() {return courseId;}public void setCourseId(int courseId) {this.courseId = courseId;}
}

Student表


public class Student {private int id;private int sn;private String name;private String mail;private int classId;public int getId() {return id;}public void setId(int id) {this.id = id;}public int getSn() {return sn;}public void setSn(int sn) {this.sn = sn;}public String getName() {return name;}public void setName(String name) {this.name = name;}public String getMail() {return mail;}public void setMail(String mail) {this.mail = mail;}public int getClassId() {return classId;}public void setClassId(int classId) {this.classId = classId;}
}

上述四张表在我之前的博客都有创建过,想要了解的可以去看看这所用到的四张表https://blog.csdn.net/m0_53714343/article/details/13105454

3.2、连接数据库的工具类

调用连接数据库工具类,就可以连接到自己的数据库,调用连接数据库之后如何释放资源,关闭连接等方法。


import com.mysql.jdbc.jdbc2.optional.MysqlDataSource;import javax.sql.DataSource;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;public class DBUtil {//定义要返回的对象private static DataSource dataSource;//关于数据源的配置项private static final String URL="jdbc:mysql://localhost:3306/java_4?characterEncoding=utf8&useSSL=false";private static final String USER="root";private static final String PassWord="qwb251635..";//在使用之前要初始化dataSource,写在static静态代码块中让类在加载JVM的时候就完成初始化操作static{//设置配置参数MysqlDataSource mysqlDataSource=new MysqlDataSource();mysqlDataSource.setURL(URL);mysqlDataSource.setUser(USER);mysqlDataSource.setPassword(PassWord);dataSource=mysqlDataSource;}//不允许外部创建这个类的实例,也就是不允许new这个对象private DBUtil(){};public static Connection getConnection() throws SQLException {return dataSource.getConnection();}public static void close(ResultSet resultSet, Statement statement, Connection connection){if (resultSet!=null){try {resultSet.close();} catch (SQLException e) {throw new RuntimeException(e);}}if(statement!=null){try {statement.close();} catch (SQLException e) {throw new RuntimeException(e);}}if(connection!=null){try {connection.close();} catch (SQLException e) {throw new RuntimeException(e);}}}
}

3.3、实现三种与数据库交互的工具类

ClassesDao工具类


import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;public class ClassesDao {/*** 根据班级名称查询班级信息* @param className 班级名称* @return 班级信息*/public Classes selectByName(String className){Connection connection=null;PreparedStatement statement=null;ResultSet resultSet=null;try {//获取连接对象connection= DBUtil.getConnection();//构建sql语句String sql="select id,name,`desc` from classes where name=?";//获取预处理对象statement = connection.prepareStatement(sql);//将占位符替换为真实值statement.setString(1, className);//执行sql并获取返回结果resultSet=statement.executeQuery();//处理返回结果,构造最终返回对象Classes result=null;if(resultSet.next()){if(result==null){result=new Classes();}//设置属性的值result.setId(resultSet.getInt(1));result.setName(resultSet.getString(2));result.setDesc(resultSet.getString(3));}//返回结果return result;} catch (SQLException e) {e.printStackTrace();}finally{//释放资源,关闭连接DBUtil.close(resultSet,statement,connection);}//返回结果return null;}
}

ScoreDao工具类


import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;public class ScoreDao {/*** 插入学生分数记录** @param score*/public void insert(Score score) {Connection connection = null;PreparedStatement statement = null;try {//获取连接对象connection = DBUtil.getConnection();//构造sql语句String sql = "insert into score values(?,?,?)";//获取预处理对象statement = connection.prepareStatement(sql);//替换占位符statement.setBigDecimal(1, score.getScore());statement.setInt(2, score.getStudentId());statement.setInt(3, score.getCourseId());//执行sql语句,并获取返回结果int result = statement.executeUpdate();if (result > 0) {System.out.println("添加学生信息成功!!!");} else {System.out.println("执行指令失败!!!");}} catch (SQLException e) {e.printStackTrace();} finally {//释放资源,关闭连接DBUtil.close(null, statement, connection);}}/*** 修改学生成绩** @param score*/public void update(Score score) {Connection connection = null;PreparedStatement statement = null;try {//获取数据库连接对象connection = DBUtil.getConnection();//构造sql语句String sql = "update score set score=? where student_id=? and course_id=?";//获取预处理对象statement = connection.prepareStatement(sql);//替换占位符statement.setBigDecimal(1, score.getScore());statement.setInt(2, score.getStudentId());statement.setInt(3, score.getCourseId());//执行sql语句int result = statement.executeUpdate();if (result > 0) {System.out.println("修改学生成绩成功!!!");} else {System.out.println("执行指令失败!!!");}} catch (SQLException e) {e.printStackTrace();} finally {DBUtil.close(null, statement, connection);}}/*** 删除学生成绩** @param score*/public void delete(Score score) {Connection connection = null;PreparedStatement statement = null;try {//获取数据库连接对象connection = DBUtil.getConnection();//构造sql语句String sql = "delete from score where student_id=? and course_id=?";//获取预处理对象statement = connection.prepareStatement(sql);//替换占位符statement.setInt(1, score.getStudentId());statement.setInt(2, score.getCourseId());//执行sql语句int result = statement.executeUpdate();if (result > 0) {System.out.println("删除成功, studentId = " + score.getStudentId() + ", classesId = " + score.getCourseId() + ".");} else {System.out.println("执行指令失败!!!");}} catch (SQLException e) {e.printStackTrace();} finally {DBUtil.close(null, statement, connection);}}/*** 删除成绩* @param studentId 学生编号* @param courseId 课程编号*/public void deleteByStudentIdAndClassesId (int studentId, int courseId) {Connection connection = null;PreparedStatement statement = null;try {// 获取数据库连接connection = DBUtil.getConnection();// 定义SQL语句String sql = "delete from score where student_id = ? and course_id = ?";// 获取预处理对象statement = connection.prepareStatement(sql);// 替换占位符statement.setInt(1, studentId);statement.setInt(2, courseId);// 执行SQL获取结果int result = statement.executeUpdate();if (result > 0) {System.out.println("删除成功, studentId = " + studentId + ", classesId = " + courseId + ".");} else {System.out.println("删除失败");}} catch (SQLException e) {e.printStackTrace();}}/*** 根据班级id查询所有学生的成绩** @param classesId* @return*/public List<Score> selectByClassesId(int classesId) {Connection connection = null;PreparedStatement statement = null;ResultSet resultSet = null;//返回结果List<Score> result = null;try {connection = DBUtil.getConnection();//构造sql语句String sql = "select s.score,s.student_id,s.course_id,stu.id,stu.sn,stu.name,co.id,co.name from classes c,student stu,Course co,score s where c.id=stu.classes_id and stu.id=s.student_id and s.course_id=co.id and c.id=?";//执行sql语句connection.prepareStatement(sql);//替换占位符statement.setInt(1, classesId);//获取返回结果集resultSet = statement.executeQuery();if (resultSet.next()) {if (result == null) {result = new ArrayList<>();}//构建Score对象Score score = new Score();score.setScore(resultSet.getBigDecimal(1));score.setStudentId(resultSet.getInt(2));score.setCourseId(resultSet.getInt(3));//关联学生对象Student student = new Student();student.setId(resultSet.getInt(4));student.setSn(resultSet.getInt(5));student.setName(resultSet.getString(6));score.setStudent(student);// 关联课程对象Course course = new Course();course.setId(resultSet.getInt(7));course.setName(resultSet.getString(8));score.setCourse(course);// 加入到返回的结果集合result.add(score);}} catch (SQLException e) {e.printStackTrace();} finally{DBUtil.close(resultSet,statement,connection);}return result;}
}

StudentDao工具类


import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;public class StudentDao {/*** 新增学生信息* @param student* @return*/public int insert(Student student){Connection connection=null;PreparedStatement statement=null;int result=0;try {//建立数据库连接connection= DBUtil.getConnection();//构造SQL语句String sql="insert into student (sn,name,qq_mail,classes_id) values(?,?,?,?)";//获取预处理对象statement=connection.prepareStatement(sql);//替换占位符statement.setInt(1,student.getSn());statement.setString(2, student.getName());statement.setString(3, student.getMail());statement.setInt(4,student.getClassId());//执行sql语句,返回结果result=statement.executeUpdate();} catch (SQLException e) {e.printStackTrace();}finally{DBUtil.close(null,statement,connection);}return result;}/*** 根据学生姓名查询信息* @param name* @return*/public List<Student> selectByName(String name){Connection connection=null;PreparedStatement statement=null;ResultSet resultSet=null;List<Student> result=null;try {//建立数据库连接connection=DBUtil.getConnection();//构造sql语句String sql="select * from student where name=?";//获取预处理对象statement=connection.prepareStatement(sql);//替换占位符statement.setString(1,name);resultSet = statement.executeQuery();while(resultSet.next()){//第一次进来时先判断集合是否为空,为空就创建一个if(result==null){result=new ArrayList<>();}//构造学生对象Student student=new Student();student.setId(resultSet.getInt(1));student.setSn(resultSet.getInt(2));student.setName(resultSet.getString(3));student.setMail(resultSet.getString(4));student.setClassId(resultSet.getInt(5));//把学生对象加入集合中result.add(student);}} catch (SQLException e) {e.printStackTrace();}finally{DBUtil.close(resultSet,statement,connection);}//返回查询结果return result;}/*** 更新学生的班级* @param studentId 学生班级号* @param classesId 班级编号* @return*/public int updateClassId(int studentId,int classesId){Connection connection=null;PreparedStatement statement=null;int result=0;try {//建立连接connection=DBUtil.getConnection();//构建sql语句String sql="update student set classes_id=? where id=?";//获取预处理对象statement=connection.prepareStatement(sql);//替换占位符statement.setInt(1,classesId);statement.setInt(2,studentId);//执行sql并返回结果result =statement.executeUpdate();} catch (SQLException e) {e.printStackTrace();}finally{DBUtil.close(null,statement,connection);}return result;}/*** 根据班级编号查询学生信息* @param classesId* @return*/public List<Student> selectByClassId(int classesId){Connection connection=null;PreparedStatement statement=null;ResultSet resultSet=null;List<Student> result=null;try {//建立数据库连接connection=DBUtil.getConnection();//构造sql语句String sql="select * from student where classes_id=?";//获取预处理对象statement=connection.prepareStatement(sql);//替换占位符statement.setInt(1,classesId);//执行sql语句,并返回结果resultSet=statement.executeQuery();while(resultSet.next()){//判断返回数据集是否为空if(result==null){result =new ArrayList<>();}//创建学生对象Student student=new Student();student.setId(resultSet.getInt(1));student.setSn(resultSet.getInt(2));student.setName(resultSet.getString(3));student.setMail(resultSet.getString(4));student.setClassId(resultSet.getInt(5));//把学生对象加入集合中result.add(student);}} catch (SQLException e) {e.printStackTrace();}finally{DBUtil.close(resultSet,statement,connection);}//返回结果集return result;}/*** 根据学生id删除学生信息* @param id* @return*/public int deleteId(int id){Connection connection=null;PreparedStatement statement=null;int result = 0;try {//连接数据库connection=DBUtil.getConnection();//构建sql语句String sql="delete from student where id=?";//获取预处理对象statement= connection.prepareStatement(sql);//替换占位符statement.setInt(1,id);//执行sql,并获取返回结果result=statement.executeUpdate();} catch (SQLException e) {e.printStackTrace();}//返回受影响的行数return result;}
}

4、实现的界面功能

4.1、指定某个班级新增一位同学


import Dao.Text01.ClassesDao;
import Dao.Text01.StudentDao;
import Model.Text01.Classes;
import Model.Text01.Student;import java.text.MessageFormat;
import java.util.Scanner;/*** 指定某个班级新增一位同学*/
public class Exe_01 {//按照逻辑顺序一步一步实现功能,遇到需要的数据库操作去工具包Dao中去调用即可//先分析需求实现步骤,把能够用到的sql操作语句都实现了//最后处理用户交互问题public static void main(String[] args) {while(true){Scanner sc=new Scanner(System.in);//1、先让用户输入班级名称System.out.println("请输入班级名称:");String className=sc.next();//根据班级名称去数据库中查询班级编号ClassesDao classesDao=new ClassesDao();Classes classes= classesDao.selectByName(className);//修改错误信息出现的异常if(classes==null){System.out.println("你要找的班级名称不存在"+className);return;}//处理打印信息String classInfo= MessageFormat.format("班级编号:{0}\t班级名称:{1}\t",classes.getId(),classes.getName());System.out.println(classInfo);//录入学生信息System.out.println("============录入学生信息===========");System.out.println("请输入学号:");int sn=sc.nextInt();System.out.println("请输入姓名:");String name=sc.next();System.out.println("请输入邮箱:");String mail=sc.next();System.out.println("请输入班级学号:");int classes_id=sc.nextInt();//将上面获取到的信息封装成学生类Student student=new Student();student.setSn(sn);student.setName(name);student.setMail(mail);student.setClassId(classes_id);//把这个学生对象添加到数据库中StudentDao studentDao=new StudentDao();int result=studentDao.insert(student);//result是数据库返回了更改的行数if(result>0){System.out.println("新增学生成功!!!"+student.getName());}else{System.out.println("新增学生失败!!!");}}}
}

4.2、修改指定学生的班级


import Dao.Text01.StudentDao;
import Model.Text01.Student;import java.text.MessageFormat;
import java.util.List;
import java.util.Scanner;/*** 修改指定学生的班级*/
public class Exe_02 {public static void main(String[] args) {//1、先要获取某个同学的信息while (true) {Scanner sc = new Scanner(System.in);System.out.println("请输入学生的姓名:");String studentName = sc.next();//2、根据学生姓名获取详细信息StudentDao studentDao = new StudentDao();List<Student> students = studentDao.selectByName(studentName);//判断获取到的信息是否为空if (students == null) {System.out.println("非常抱歉,没有找到对应的学生信息:" + studentName);}//循环打印学生信息for (Student student : students) {String info = MessageFormat.format("编号:{0}\t| 学号:{1}\t| 姓名:{2}\t| 邮箱:{3}\t| 班级编号:{4}",student.getId(), student.getSn(), student.getName(), student.getMail(), student.getClassId());System.out.println(info);}//获取目标班级的编号System.out.println("请输入要调班的学生编号:");int studentId = sc.nextInt();System.out.println("请输入要调入的目标班级编号:");int classesId = sc.nextInt();//调用StudentDao工具包中的Update方法,更新学生班级int result = studentDao.updateClassId(studentId, classesId);if (result > 0) {System.out.println("学生调班成功");} else {System.out.println("调班失败!!");}}}
}

4.3、根据班级名称查询这个班级所有学生


import Dao.Text01.ClassesDao;
import Dao.Text01.StudentDao;
import Model.Text01.Classes;
import Model.Text01.Student;import java.text.MessageFormat;
import java.util.List;
import java.util.Scanner;/*** 根据班级名称查询这个班级所有学生*/
public class Exe_03 {public static void main(String[] args) {while(true){Scanner sc=new Scanner(System.in);//1、让用户输入班级名称System.out.println("请输入班级名称:");String className=sc.next();//2、根据班级名称去数据库中查询班级编号ClassesDao classesDao=new ClassesDao();Classes classes=classesDao.selectByName(className);//3.修改错误信息出现的空指针异常if (classes == null) {System.out.println("你要找的班级不存在" + className);return;}//4、获取对应班级的所有学生StudentDao studentDao=new StudentDao();List<Student> students=studentDao.selectByClassId(classes.getId());//5、判断是否为空if(students==null){System.out.println("没有找到对应班级的学生信息"+className);}//6、打印结果集for (Student student:students) {String Info= MessageFormat.format("编号:{0}\t| 学号:{1}\t| 姓名:{2}\t| 邮箱:{3}\t| 班级编号:{4}",student.getId(), student.getSn(), student.getName(), student.getMail(), student.getClassId());System.out.println(Info);}}}
}

4.4、删除某个同学的信息


import Dao.Text01.StudentDao;
import Model.Text01.Student;import java.text.MessageFormat;
import java.util.List;
import java.util.Scanner;/*** 删除某个同学的信息*/
public class Exe_04 {public static void main(String[] args) {//先要获取某个同学的信息while (true) {Scanner sc = new Scanner(System.in);System.out.println("请输入学生姓名:");String studentName = sc.next();//校验是否为空if (studentName == null || studentName.equals("")) {System.out.println("输入学生姓名为空");continue;}//根据学生姓名获取详细信息StudentDao studentDao = new StudentDao();List<Student> students = studentDao.selectByName(studentName);//判断获取学生数据集是否为空if (students == null) {System.out.println("非常抱歉,没有找到对应的学生信息:studentName" + studentName);continue;}//打印结果集for (Student student : students) {String Info = MessageFormat.format("编号:{0}\t| 学号:{1}\t| 姓名:{2}\t| 邮箱:{3}\t| 班级编号:{4}",student.getId(), student.getSn(), student.getName(), student.getMail(), student.getClassId());System.out.println(Info);}//让用户输入要删除的学生编号System.out.println("请输入要删除的学生编号:");int studentId = sc.nextInt();int result = studentDao.deleteId(studentId);//result是数据库返回的一个更改行数if (result > 0) {System.out.println("删除学生信息成功!!,id="+studentId+"name ="+studentName);} else {System.out.println("删除学生信息失败!!,id="+studentId+"name ="+studentName);}}}
}

4.5、修改学生的成绩


import Dao.Text01.ScoreDao;
import Model.Text01.Score;import java.math.BigDecimal;
import java.util.Scanner;/*** 修改学生的成绩*/
public class Exe_05 {public static void main(String[] args) {System.out.println("添加学生成绩");System.out.println("==============================");while (true) {Scanner scanner = new Scanner(System.in);System.out.println("请输入学生编号:");int studentId = scanner.nextInt();System.out.println("请输入课程编号:");int courseId = scanner.nextInt();System.out.println("请输入分数:");BigDecimal score = new BigDecimal(scanner.next());// 打印日志System.out.println(studentId + "-" + courseId + "-" + score);// 构建Score对象Score scoreObj = new Score();scoreObj.setScore(score);scoreObj.setStudentId(studentId);scoreObj.setCourseId(courseId);// 调和ScoreDao完成插入操作ScoreDao scoreDao = new ScoreDao();scoreDao.insert(scoreObj);}}
}

4.6、修改学生的成绩


import Dao.Text01.ScoreDao;
import Model.Text01.Score;import java.math.BigDecimal;
import java.util.Scanner;/*** 修改学生的成绩*/
public class Exe_06 {public static void main(String[] args) {System.out.println("=========== 修改学生成绩 ==========");while (true) {Scanner scanner = new Scanner(System.in);System.out.println("请输入学生Id:");int studentId = scanner.nextInt();System.out.println("请输入课程Id");int courseId = scanner.nextInt();System.out.println("请输入成绩:");BigDecimal score = new BigDecimal(scanner.next());// 调用DAO的更新方法Score scoreObj = new Score();scoreObj.setScore(score);scoreObj.setStudentId(studentId);scoreObj.setCourseId(courseId);// 执行更新ScoreDao scoreDao = new ScoreDao();scoreDao.update(scoreObj);}}
}

4.7、删除某个同学的成绩


import Dao.Text01.ScoreDao;import java.util.Scanner;/*** 删除某个同学的成绩*/
public class Exe_07 {public static void main(String[] args) {System.out.println("============== 删除学生的成绩 ==============");while (true) {Scanner scanner = new Scanner(System.in);System.out.println("请输入学生编号:");int studentId = scanner.nextInt();System.out.println("请输入课程编号:");int courseId = scanner.nextInt();// 调用Dao中的删除方法ScoreDao scoreDao = new ScoreDao();scoreDao.deleteByStudentIdAndClassesId(studentId, courseId);}}
}

4.8、查询指定班级同学的成绩


public class Exe_08 {public static void main(String[] args) {System.out.println("=========== 查询指定班级同学的成绩 ===========");while (true) {Scanner scanner = new Scanner(System.in);System.out.println("请输入班级名称:");String classesName = scanner.next();// 获取班级信息ClassesDao classesDao = new ClassesDao();Classes classes = classesDao.selectByName(classesName);if (classes == null) {System.out.println("指定的班级不存在,请检查。班级名 = " + classesName);break;}// 调用ScoreDao查询结果ScoreDao scoreDao = new ScoreDao();List<Score> scores = scoreDao.selectByClassesId(classes.getId());if (scores == null) {System.out.println("没有找到班级为:" + classes.getName() + " 的成绩信息.");break;}for (Score score : scores) {String str = MessageFormat.format("班级:{0} | 学号:{1} | 姓名:{2} \t| 分数:{3} | 课程:{4}",classes.getName(),score.getStudent().getSn(),score.getStudent().getName(),score.getScore(),score.getCourse().getName());System.out.println(str);}System.out.println("==========================================================");}}
}

5、总结

我所做的课题学生成绩管理系统部分功能基本完成。其功能基本符合的用户要求,能够对学生成绩的基本信息进行查询、修改、添加、删除。

学生成绩管理系统(逻辑清楚-简单实用)相关推荐

  1. java mysql 学生成绩管理系统_Java实现简单的学生成绩管理系统

    ScoreInformation.java import java.util.Scanner; class ScoreInformation { private String stunumber;   ...

  2. 课程设计:学生成绩管理系统

    亲爱的小伙伴们~[学生成绩管理系统]上线啦!!! [Java毕设项目]手把手教你搭建学生成绩管理系统_操作简单_功能实用(SQL+文档+代码)https://www.bilibili.com/vide ...

  3. 西南交通大学高级语言程序设计(SCAI000812)第2次实验报告-学生成绩管理系统(链表版)

    背景描述: 因为苦于网上到处都找不到答案,仅有的链表版还要收费,我就自己写了一个低配版链表,将就着用,想的是帮助明年以及后年的学弟学妹们. 题目描述: 实验目的: 掌握程序设计的基本算法和简单数据结构 ...

  4. 测试学生成绩的软件,《软件测试-学生成绩管理系统》.doc

    宿迁学院 软件测试 -学生成绩管理系统 姓名: ***** 班级:计算机(3)班 学号:****** 系部: 三 系 指导老师:***** 成绩: 目录 目录2 1引言3 1.1开发系统目标3 1.2 ...

  5. C语言学生成绩简单,C语言实现简单学生成绩管理系统.pdf

    C语言实现简单学生成绩管理系统 这篇文章主要为大家详细介绍了C语言实现简单学生成绩管理系统,具有 定的参考价值,感兴趣的小伙伴们可以 参考 下 本文实例为大家分享了C语言实现学生成绩管理系统的具体代码 ...

  6. 学生成绩管理系统(简单版)

    学生成绩管理系统(简单版) 学生成绩管理系统(简单版) 数组版 结构体版 函数版 学生成绩管理系统(简单版) 要求:存储50个学生下信息(学号,姓名,性别,成绩1,成绩2)计算平均成绩,与等级(等级要 ...

  7. 简单的学生成绩管理系统

    简单的学生成绩管理系统 写一个科目类,包含科目名称,科目分数2个数据成员,一个衡量是否及格的成员函数,用其构造函数为科目对象赋值.写一个学生类,含学号,姓名2个数据成员,以及一个成绩对象指针成员(指向 ...

  8. java简单学生成绩系统_JAVA 实现简单的学生成绩管理系统

    一.实验目的 1.掌握java的类与对象的基本概念: 2.掌握简单的信息管理系统的设计与实现. 二.实验环境 实验建议在安装了以下软件的计算机上完成: 1.       Windows xp/win7 ...

  9. 第一篇博客——C语言实现简单的学生成绩管理系统

    C语言简单实现学生成绩管理系统 一.前言 首先,要写一个管理系统必须要先搭出一个框架来,即明确自己要实现哪些功能,将每个功能都写陈一个函数,然后再去编写实现各个功能的函数,最后再思考各个函数之间的相互 ...

最新文章

  1. 将excel中是数据导入数据库
  2. IoT机会窗打开:运营商亟需战略转型 获取物联网最大化价值
  3. makefile:4:***缺少分隔符。 停止
  4. 2020年最好用的手机是哪一款_2020年好评最多的三款手机,看看你在用哪款?
  5. jzoj1295-设计【差分约束系统,最短路】
  6. php 兼容unicode文字的字符串大小写转换,php实现兼容Unicode文字的字符串大小写转换strtolower()和strtoupper()...
  7. Topcoder SRM 637 (Div.2)
  8. java hibernate 插入数据_hibernate 批量插入数据
  9. 不通过App Store实现ios应用分发下载安装
  10. DPDK Release 20.08
  11. c语言表达式优先级最高的是,C语言运算符优先级表
  12. Pycharm下载与安装教程
  13. 【多目标进化优化】MOEA 的分类
  14. matlab 矩阵满秩分解
  15. 如何判断数字华容道中随机排列的数字阵列是否有解
  16. _poto_和prototype的问题续集
  17. u-boot之u-boot-2009.11启动过程分析
  18. USB数据端子 type-A/B/C
  19. 面试题:堆、栈、队列的区别以及使用场景
  20. 程序员,如何从平庸走向理想?

热门文章

  1. gitlib如何删除创建的project
  2. AuAgSe量子点|Ag2Se量子点硒化银量子点|油酸修饰PbTe碲化铅量子点|硫铟铜量子点CulnS2|近红外量子点
  3. 计算机思维相关实例,几个培养计算思维的教学小案例
  4. python闯关训练营怎么样3.0_【新升级】3周!0基础Python量化投资!闯关式学习打卡,解锁新技能!...
  5. git常用命令(一)本地库初始化git init / add / commit / status / rm --cached / restore / reset
  6. hana数据库如何使用if()
  7. 将原图像恢复为单色图像---MATLAB
  8. cmd命令提示窗口进入其他盘符
  9. c#工业自动化通信开发库,工业自动软件必备的基本程序
  10. java注释的三种形式讲解1.2