Re:从零开始的软工生活 #7
石家庄铁道大学2024年秋季
2024 级课堂测试试卷(一)
课程名称: JAVA语言程序设计 任课教师: 王建民 考试时间: 90 分钟
一、测试要求:
1、按照测试内容要求完成程序的设计与编程;
2、将最终结果的源文件(.java)文件汇总给课代表。
二、实验内容:
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)定义一个输入界面如下图所示,选择相应的数字执行相应的功能
/***************************************************************
/石家庄铁道大学软件工程系学生信息管理系统
/****************************************************************
/1、 遍历输出学生信息;
/2、 新学生信息录入;
/3、 删除学生信息;
/4、 修改学生信息;
/5、 查询学生信息;
/****************************************************************
(8)需要在程序开始的注释中注明班级、学号、姓名。
作答:
student类
点击查看代码
package student;
public class student {
String stunumber;
String name;
int age;
boolean sex;
double score;
public 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;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public double getScore() {
return score;
}
public void setScore(double score) {
this.score = score;
}
public boolean getSex() {
return sex;
}
public void setSex(boolean sex) {
this.sex = sex;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getStunumber() {
return stunumber;
}
public void setStunumber(String stunumber) {
this.stunumber = stunumber;
}
}
点击查看代码
package student;
import java.util.Scanner;
public class StudentManager {
public student[] stu=new student[5];
Scanner in=new Scanner(System.in);
public void showStudent(){
if(stu!=null) {
for (int i = 0; stu[i]!=null; i++) {
System.out.println(stu[i].getStunumber());
System.out.println(stu[i].getName());
System.out.println(stu[i].getAge());
if(stu[i].getSex()==true){
System.out.println("boy");
}
else System.out.println("girl");
System.out.println(stu[i].getScore());
}
}
else
System.out.println("没有学生信息!\n");
}
public void addStudent (String stunumber,String name,int age,boolean sex,double score){//添加
if(stu[0]==null) {
stu[0] = new student(stunumber, name, age, sex, score);
System.out.println("录入成功!\n");
}
else {
for (int i = 0; i < stu.length; i++) {
if (stu[i].getStunumber().equals(stunumber)) {
System.out.println("学号重复!\n");
break;
} else if (stu[i] == null) {
System.out.println(stu[i].getStunumber());
System.out.println(stu[i].getName());
System.out.println(stu[i].getAge());
if(stu[i].getSex()==true){
System.out.println("boy");
}
else System.out.println("girl");
System.out.println(stu[i].getScore());
System.out.println("录入成功!\n");
break;
}
}
}
}
public void deleteStudent(String stunumber) {//删除
if(stu!=null) {
int flag = 0;
for (int i = 0; stu[i]!=null; i++) {
if (stu[i].getStunumber().equals(stunumber)) {
for (int j = i; stu[j+1]!=null; j++) {
stu[j].setStunumber(stu[j + 1].getStunumber());
stu[j].setName(stu[j + 1].getName());
stu[j].setAge(stu[j + 1].getAge());
stu[j].setSex(stu[j + 1].getSex());
stu[j].setScore(stu[j + 1].getScore());
}
flag = 1;
}
}
if (flag == 0) System.out.println("未找到该学号!\n");
else if (flag == 1) System.out.println("删除成功!\n");
}
else
System.out.println("没有学生信息!\n");
}
public void updateStudent (String stunumber){//更改学生信息
if(stu!=null) {
int flag = 0;
for (int i = 0; stu[i]!=null; i++) {
if (stu[i].getStunumber().equals(stunumber)) {
System.out.println("输入姓名、年龄、性别、成绩:\n");
String name=in.next();
int age=in.nextInt();
boolean sex=in.nextBoolean();
double score=in.nextDouble();
stu[i].setName(name);
stu[i].setAge(age);
stu[i].setSex(sex);
stu[i].setScore(score);
System.out.println(stu[i].getStunumber());
System.out.println(stu[i].getName());
System.out.println(stu[i].getAge());
if(stu[i].getSex()==true){
System.out.println("boy");
}
else System.out.println("girl");
System.out.println(stu[i].getScore());
System.out.println("录入成功!\n");
flag = 1;
}
}
if (flag == 0) System.out.println("未找到该学号!\n");
else if (flag == 1) System.out.println("更改成功!\n");
}
else System.out.println("没有学生信息!\n");
}
public void selectStudent(String stunumber){//查询学生信息
if(stu!=null){
int flag = 0;
for (int i = 0; stu[i]!=null; i++) {
if (stu[i].getStunumber().equals(stunumber)) {
System.out.println(stu[i].getStunumber());
System.out.println(stu[i].getName());
System.out.println(stu[i].getAge());
if(stu[i].getSex()==true){
System.out.println("boy");
}
else System.out.println("girl");
System.out.println(stu[i].getScore());
flag = 1;
break;
}
}
if (flag == 0) System.out.println("未找到该学号!\n");
else if (flag == 1) System.out.println("查找成功!\n");
}
else
System.out.println("没有学生信息!\n");
}
}
点击查看代码
import student.StudentManager;
import java.util.*;
import java.util.Scanner;
/**
* 班级 2305-1
* 姓名 赵圣涵
* 学号 20234415
* */
public class Main {
public static void main(String[] args) {
StudentManager StuM=new StudentManager();
Scanner in=new Scanner(System.in);
int flag;
do {
System.out.println(
"***************************************************************\n" +
"\t\t\t石家庄铁道大学软件工程系学生信息管理系统\n" +
"****************************************************************\n" +
"\t\t\t\t\t1、\t遍历输出学生信息;\n" +
"\t\t\t\t\t2、\t新学生信息录入;\n" +
"\t\t\t\t\t3、\t删除学生信息;\n" +
"\t\t\t\t\t4、\t修改学生信息;\n" +
"\t\t\t\t\t5、\t查询学生信息;\n" +
"\t\t\t\t\t6、\t退出;\n" +
"****************************************************************\n");
flag = in.nextInt();
if (flag == 1) {//遍历
StuM.showStudent();
} else if (flag == 2) {//录入
System.out.println("请输入学生的学号、姓名、年龄、性别、成绩:\n");
String num = in.next();
in.nextLine();
String n = in.next();
int age = in.nextInt();
boolean sex = in.nextBoolean();
double grade = in.nextDouble();
StuM.addStudent(num, n, age, sex, grade);
} else if (flag == 3) {//删除
System.out.println("请输入8位学号:\n");
String num = in.next();
StuM.deleteStudent(num);
} else if (flag == 4) {//修改
System.out.println("请输入要更改的学生的学号:\n");
String num = in.next();
in.nextLine();
StuM.updateStudent(num);
} else if (flag == 5) {//查找
System.out.println("请输入8位学号:\n");
String num = in.next();
StuM.selectStudent(num);
}
}while(flag!=6);
}
}

浙公网安备 33010602011771号