题目:

一、测试要求:
     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. Java的equals方法实现及其细节

    判断两个对象是否等价,是OOP编程中常见的需求(下面围绕Java来进行阐述). 考虑这样几种情况:通过某个特征值来判断两个对象是否“等价”,当这两个对象等价时,判断结果为true,否则结果为false ...

  2. Outer()函数

    转载:https://bbs.pinggu.org/thread-7078237-1-1.html R语言中的outer()函数,名为内积函数,但是他执行的功能并不是解析几何中的内积.那该函数到底发挥 ...

  3. Win7 + Ubuntu 14.04 +tomcat + mysql 搭建测试环境手册

    一.Win7下做安装ubuntu 下载ununtu14.04和EasyBCD软件 Win7下要腾出一个盘来安装ubuntu.我是格式化掉F盘,然后回到桌面,右键点击计算机-->管理-->存 ...

  4. 彻底理解JavaScript中的this

    this 是 JavaScript 语言的一个关键字. 它是函数运行时,在函数体内自动生成的一个对象,只能在函数体内使用. 函数的不同使用场合,this 有不同的值.总的来说,this 就是函数运行时 ...

  5. 033.SAP上查看IDOC接口,PI接口查不到的日志记录,可能在IDOC接口日志里面

    01. SAP系统发料之后,数据没有传输到条码系统,同事也没有任何bc01的日志,这是就要考虑是不是在IDOC接口了,输入事务代码WE02或者WE05 02.双击查看内容 03.点开就能看到详细内容了 ...

  6. java.io.IOException: Error: JSP Buffer overflow

    错误 jsp页面报错如下: Stacktrace: org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java ...

  7. CodeForces - 755C PolandBall and Forest (并查集)

    题意:给定n个数,Ai的下标为1~n.对于每一个i,Ai与i在同一个树上,且是与i最远的点中id最小的点(这个条件变相的说明i与Ai连通).求森林中树的个数. 分析:若i与Ai连通,则在同一个树上,因 ...

  8. POJ 2752:Seek the Name, Seek the Fame

    Seek the Name, Seek the Fame Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 13619 Accept ...

  9. 略坑的C#自动回收机制

    说起这个坑货,要说说折腾了好久的bug,项目对方需要在32位系统上使用,C#加载图像扔给C++处理再返回.所以想好了,C#这边加载图像开好内存扔给C++,各自开的内存各自释放. 所以,在32位系统上出 ...

  10. STM32中ARM系列编译工具链的编译宏选择(__CC_ARM、__ICCARM__、__GNUC__、__TASKING__)

    一 前言 stm32 f103中.关系到一个选择何种编译宏的问题.这里就梳理一下吧. 二 正文 1  在 core_cm3.h 文件中,有如下代码: #if defined ( __CC_ARM ) ...