题目:

一、测试要求:
     1、按照测试内容要求完成程序的设计与编程;
     2、将最终结果的源文件(.java)文件上传到以班级为单位,保存源程序。
     3、建立学号姓名文件夹,如:“20170001 管学生”,将源程序文件保存在文件夹中。
二、实验内容:
     1、定义 student 类,其中包括五个私有变量(stunumber,name,age,sex,score)。
          各成员的含义如下:
                                变量 stunumber 为字符串类型 String,用于存储学生的学号(有 8 位数字组成)。
                                变量 name 为字符串类型 String,用于存储学生的姓名。
                                变量 age 为 int 类型,用于存储学生的年龄。
                                变量 sex 为 boolean 类型,用于存储学生的性别,男生为 false,女生为true。变量 score 为 double 类型,用于存储学生的成绩。
          并对每个变量定义 get()(读取变量信息)和 set()(设置变量信息)的方法。赋初值方法包括五个参数,用于为变量(stunumber ,name,age,sex 和score)赋值。
2、定义 StudentManager 类实现下列要求。
  (1)利用数组实现至少存储五个学生的信息;(将考生信息作为第一条记录)。
  (2)定义 showStudent()方法打印输出所有的学生信息;
  (3)定义 addStudent (stunumber,name,age,sex,score)方法增加一名新学生的信息,需要判断学号是否重复,如果重复提示用户,并禁止增加新学生信息;
  (4)定义 deleteStudent(stunumber)方法删除一名学生信息(将该学生所有信息清空);
  (5)定义 updateStudent (stunumber,name,age,sex,score)方法修改学生信息;
  (6)定义 selectStudent(stunumber)查询并且输出该名学生的全部信息。
  (7)定义一个输入界面如下图所示,选择相应的数字执行相应的功能
***************************************************************
                ---------信息科学与技术学院
                    学生信息管理系统 v2.0
****************************************************************
1、 遍历输出学生信息;
2、 新学生信息录入;
3、 删除学生信息;
4、 修改学生信息;
5、 查询学生信息;
****************************************************************
 学生类:

public class Student {
String stunumber;
String name;
int age;
boolean sex;
double score;
public String getStunumber() {
return stunumber;
}
public void setStunumber(String stunumber) {
this.stunumber = stunumber;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public boolean isSex() {
return sex;
}
public void setSex(boolean sex) {
this.sex = sex;
}
public double getScore() {
return score;
}
public void setScore(double score) {
this.score = score;
}
Student(String stunumber,String name,int age,boolean sex,double score)
{
this.stunumber=stunumber;
this.name = name;
this.age = age;
this.sex = sex;
this.score = score;
}
}

管理学生类:

//import java.util.*;
import java.util.Scanner;
public class StudentManager { static int sum=0;
static Scanner sc = null;
static Student[] a = new Student[1000]; public static int systemMenu() {
sc = new Scanner(System.in);
System.out.println("*************************************************************** \n" +
" -------大学信息科学与技术学院 \n" +
" 学生信息管理系统 v2.0 \n" +
"**************************************************************** \n" +
" 1、 遍历输出学生信息; \n" +
" 2、 新学生信息录入; \n" +
" 3、 删除学生信息; \n" +
" 4、 修改学生信息; \n" +
" 5、 查询学生信息; \n" +
"****************************************************************");
int ch;
System.out.println("请选择:");
ch = sc.nextInt();
return ch;
} public static void showStudent(){
int i,f=0;
for(i = 0 ;i < sum ;i++){
if(a[i].stunumber == null) {
f++;
continue;
}
System.out.println("第"+(i+1-f)+"名学生的学号为:"+a[i].stunumber);
System.out.println("第"+(i+1-f)+"名学生的姓名为:"+a[i].name);
if(a[i].isSex())
System.out.println("第"+(i+1-f)+"名学生的性别为:女");
else
System.out.println("第"+(i+1-f)+"名学生的性别为:男");
System.out.println("第"+(i+1-f)+"名学生的年龄为:"+a[i].age);
System.out.println("第"+(i+1-f)+"名学生的成绩为:"+a[i].score);
}
sum=sum-f;
} public static void addStudent(String stunumber,String name,int age,boolean sex,double score){ int k;
for(k=0;k<sum;k++) {
if( a[k].stunumber == stunumber ) {
System.out.println("您输入的学号与之前有重复,请检查后重新输入");
return;
}
} a[sum] = new Student(stunumber,name,age,sex,score); sum++;
} public static void fristInput() {
int i=0;
System.out.println("请问是否继续初始创建,是请输入:1,否请输入:0");
i = sc.nextInt();
String stunumber;
String name;
int age;
boolean sex;
double score;
while(i == 1) {
stunumber = sc.next();
name = sc.next();
age = sc.nextInt();
sex = sc.nextBoolean();
score = sc.nextDouble();
StudentManager.addStudent(stunumber,name,age,sex,score); System.out.println("请问是否继续初始创建,是请输入:1,否请输入:0");
i = sc.nextInt();
} } public static void deleteStudent(String stunumber){
int k;
for(k=0;k<sum;k++) {
if(a[k].stunumber.compareTo(stunumber)==0) {
a[k].stunumber = null;
a[k].name = null;
a[k].age = 0;
a[k].score = 0.0;
}
}
} public static void updateStudent(String stunumber,String name,int age,boolean sex,double score) {
int k;
for(k=0;k<sum;k++) {
if(a[k].stunumber.compareTo(stunumber)==0) {
a[k].stunumber = stunumber;
a[k].name = name;
a[k].age = age;
a[k].sex = sex;
a[k].score = score;
}
}
} public static void selectStudent(String stunumber){
int k;
for(k=0;k<sum;k++) { if( a[k].stunumber.compareTo(stunumber)==0 ) {
System.out.println("您要查询的名学生的学号为:"+a[k].stunumber);
System.out.println("此学生的姓名为:"+a[k].name);
if(a[k].isSex())
System.out.println("此学生的性别为:女");
else
System.out.println("此学生的性别为:男");
System.out.println("此学生的年龄为:"+a[k].age);
System.out.println("此学生的成绩为:"+a[k].score);
return;
}
}
System.out.println("没有学号为:"+stunumber+"的学生");
} public static void main(String[] args){ sc = new Scanner(System.in);
int choose,k1;
String stunumber;
String name;
int age;
boolean sex;
double score;
System.out.println("现在是初始创建五名学生信息,请输入学生信息(格式:学号 姓名 年龄 性别 成绩):");
for(k1=0;k1<5;k1++) {
stunumber = sc.next();
name = sc.next();
age = sc.nextInt();
sex = sc.nextBoolean();
score = sc.nextDouble();
StudentManager.addStudent(stunumber,name,age,sex,score);
}
sum=5;
fristInput();
choose = systemMenu();
while(choose<=5&&choose>=1) { switch (choose) {
case 1:
StudentManager.showStudent();
break;
case 2:
int n,i,s=0;
System.out.println("请输入添加学生信息的个数:");
n = sc.nextInt();
s=sum+n;
for(i=sum;i<s;i++) {
stunumber = sc.next();
name = sc.next();
age = sc.nextInt();
sex = sc.nextBoolean();
score = sc.nextDouble();
StudentManager.addStudent(stunumber,name,age,sex,score);
}
break;
case 3:
stunumber = sc.next();
StudentManager.deleteStudent(stunumber);
break;
case 4:
stunumber = sc.next();
name = sc.next();
age = sc.nextInt();
sex = sc.nextBoolean();
score = sc.nextDouble();
StudentManager.updateStudent(stunumber,name,age,sex,score);
break;
case 5:
stunumber = sc.next();
StudentManager.selectStudent(stunumber);
break; } choose = systemMenu(); }
}
}
 
 
 

java 学生信息管理的更多相关文章

  1. 098 01 Android 零基础入门 02 Java面向对象 03 综合案例(学生信息管理) 02 案例分析及实现 02 编写并测试Subject类

    098 01 Android 零基础入门 02 Java面向对象 03 综合案例(学生信息管理) 02 案例分析及实现 02 编写并测试Subject类 本文知识点:编写并测试Subject类 说明: ...

  2. 099 01 Android 零基础入门 02 Java面向对象 03 综合案例(学生信息管理) 02 案例分析及实现 03 编写并测试Student类

    099 01 Android 零基础入门 02 Java面向对象 03 综合案例(学生信息管理) 02 案例分析及实现 03 编写并测试Student类 本文知识点:编写并测试Subject类 说明: ...

  3. 101 01 Android 零基础入门 02 Java面向对象 03 综合案例(学生信息管理) 02 案例分析及实现 05 通过方法实现学生类与专业类关联——方案二

    101 01 Android 零基础入门 02 Java面向对象 03 综合案例(学生信息管理) 02 案例分析及实现 05 通过方法实现学生类与专业类关联--方案二 本文知识点:通过方法实现学生类与 ...

  4. Java学生管理系统项目案例

    这是一个不错的Java学生管理系统项目案例,希望能够帮到大家的学习吧. 分代码如下 package com.student.util; import java.sql.Connection; impo ...

  5. 【学员管理系统】0x02 学生信息管理功能

    [学员管理系统]0x02 学生信息管理功能 写在前面 项目详细需求参见:Django项目之[学员管理系统] Django框架大致处理流程 捋一下Django框架相关的内容: 浏览器输入URL到页面展示 ...

  6. Laravel之简单的学生信息管理平台

    laravel框架写的简易版的学生信息管理平台,贯穿了laravel的控制器.视图.模板.模型.中间件.路由规则的使用. 页面是使用BootStrap前端框架搭建 使用laravel实现了增删改查的功 ...

  7. vue实现简单学生信息管理案例

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  8. JAVA学生宿舍管理系统

    转: JAVA学生宿舍管理系统 需要的工具 1.SQL Server 2.Eclipse 3.JDBC连接数据库驱动 https://download.microsoft.com/download/A ...

  9. Java学生成绩

    import java.util.*; public class guanlixiton { public static void main(String[] args) { Scanner in = ...

随机推荐

  1. 二、spring集成ibatis进行数据源事务管理拦截器环境配置

    1.dataSource-applicationContext.xml文件配置理解:(spring1.2.8+ibatis1.5.3)1.1)配置数据源 DriverManagerDataSource ...

  2. detectron2 配置记录

    1. RuntimeError: Not compiled with GPU support (ROIAlign_forward at /home/oliver/PycharmProjects/det ...

  3. 机器学习(ML)十一之CNN各种模型

    深度卷积神经网络(AlexNet) 在LeNet提出后的将近20年里,神经网络一度被其他机器学习方法超越,如支持向量机.虽然LeNet可以在早期的小数据集上取得好的成绩,但是在更大的真实数据集上的表现 ...

  4. 一个自己实现的Vector(只能处理基本类型数据)

    一个自己实现的Vector(只能处理基本类型数据) string 类型不行 bool char* int double float long long 等基本s类型可用 使用模板类实现.底层为数组实现 ...

  5. java与MySQL数据库的连接

    java与MySQL数据库的连接 1.数据库的安装和建立参见上一篇博客中的第1,2步骤.(http://blog.csdn.net/nuptboyzhb/article/details/8043091 ...

  6. 一、Linux&配置,依赖安装&Tomcat,Mysql,jdk安装

    基础知识: 1 OS Operation System 作用:控制硬件,服务软件 2 VMware虚拟机: 虚拟出一台计算机环境 配置两个虚拟网卡,适配器里查看 3 在虚拟机上安装操作系统Linux ...

  7. 关于ESP8266和ESP8285的对比

    ESP8285=ESP8266+1M Flash. 与ESP8266相比,其能耐高温达125摄氏度!且原有ESP8266源码程序可以原封不动移植使用.ESP-M1/M2 模块核心处理器采用高性价比芯片 ...

  8. 小程序包大小超过2M的解决方法

    小程序的包被限制在2M以下, 超出的时候点击预览, 发现报错: Error: 代码包大小为 3701 kb,上限为 2048 kb,请删除文件后重试 1. 优化代码, 删除掉不用的代码 2. 图片压缩 ...

  9. 云时代架构阅读笔记十四——我对Hash算法的理解

    Hash,一般翻译做“散列”,也有直接音译为“哈希”的,就是把任意长度的输入(又叫做预映射, pre-image),通过散列算法,变换成固定长度的输出,该输出就是散列值.这种转换是一种压缩映射,也就是 ...

  10. <强化学习>基于采样迭代优化agent

    前面介绍了三种采样求均值的算法 ——MC ——TD ——TD(lamda) 下面我们基于这几种方法来 迭代优化agent 传统的强化学习算法 || ν ν 已经知道完整MDP——使用价值函数V(s) ...