用java编写一个学生成绩管理系统. //1.学生类 学号 姓名 年龄 语数外三科成绩(三科成绩)?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用java编写一个学生成绩管理系统. //1.学生类 学号 姓名 年龄 语数外三科成绩(三科成绩)?相关的知识,希望对你有一定的参考价值。

//用java编写一个学生成绩管理系统.
//1.学生类 学号 姓名 年龄 语数外三科成绩(三科成绩) 保存三科成绩用什么类型?自定义
//2.科目类 科目类别 期中成绩 期末成绩
//3.学生管理类
//1)可以添加学生和成绩 2)可以删除学生 3)可以展示学生所有科目成绩
4).可以计算某个学生总成绩和平均成绩

参考技术A

    用数组可以,也可以用集合来存储各个同学的成绩。

    添加删除等信息简单。

这里有个迷你图书管理系统,类似,我刚写的。你看看之后应该会有思路了。如果用集合utils做的话,也简单,知识用到了集合框架和泛型等机制。

package cn.kgc.sg.MiTuSys;


import java.util.Scanner;


public class MiNiBookSys

public static void main(String[] args)

Scanner sc = new Scanner(System.in);

// 定义书的信息

String[] bookNames = new String[4];

int[] borrowDate = new int[5];

int[] borrowCount = new int[4];

int[] states = new int[4];

// 定义书单信息

String[] bookMeg = new String[5];

bookMeg[0] = "Java开发";

bookMeg[1] = "C#开发";

bookMeg[2] = "C语言开发";

states[2] = 0; // 0:可借阅 1:已借出


// 初始化两个图书借阅记录信息

bookNames[0] = "安徒生童话";

borrowDate[0] = 15;

borrowCount[0] = 4;

states[0] = 0; // 0:可借阅 1:已借出

bookNames[1] = "格林童话";

states[1] = 1; // 0:可借阅 1:已借出

borrowDate[1] = 26;

borrowCount[1] = 9;


// 搭建项目框架

int num = -1;// 定义用户初始输入的数字

do

System.out.println("*********************欢迎使用图书管理系统**********************");

System.out.println("\\t\\t\\t1.新增图书");

System.out.println("\\t\\t\\t2.查看图书");

System.out.println("\\t\\t\\t3.删除图书");

System.out.println("\\t\\t\\t4.图书借阅");

System.out.println("\\t\\t\\t5.归还图书");

System.out.println("\\t\\t\\t6.退出系统");


System.out.print("请输入您的选择:");

int choose = sc.nextInt();

// 判断输入的选择是否正确

while (choose < 0 || choose > 6)

System.out.print("输入有误,请重新输入:");

choose = sc.nextInt();

// 定义一个flag变量,来定义是否退出系统

boolean flag = true;// true:不退出系统 false:退出系统

String addName = null;

switch (choose)

case 1:

System.out.println("\\n*********1.新增图书*********");

boolean isAdd = true;

System.out.println("序号\\t\\t图书书名");

for (int i = 0; i < bookMeg.length; i++)

// 判断为空的不输出

if (bookMeg[i] != null)

System.out.println((i + 1) + "\\t\\t" + bookMeg[i]);

System.out.print("请输入新增图书名称:");

addName = sc.next();

for (int i = 0; i <bookMeg.length; i++)

// 判断为空的不输出

if (bookMeg[i] == null)

bookMeg[i] = addName;

break;

/*bookMeg[bookMeg.length-1] = addName;      //添加图书信息

*/ System.out.println("\\n序号\\t\\t图书书名");

for (int i = 0; i < bookMeg.length; i++)

// 判断为空的不输出

if (bookMeg[i] != null)

System.out.println((i + 1) + "\\t\\t" + bookMeg[i]);

if (!isAdd)

System.out.println("对不起,图书已满,不能添加!!!");

break;


case 2:

System.out.println("\\n*********2.查看图书*********");

System.out.println("序号" + "\\t图书书名" + "\\t   借阅次数 \\t借阅状态\\t借阅日期\\t");

// 遍历数组

for (int i = 0; i < bookNames.length; i++)

// 判断信息为空的不输出

if (bookNames[i] != null)

String borrowCounts = borrowCount[i] + "次";

String borrowDates = borrowDate[i] + "日";

String state = (states[i] == 0) ? "可借阅" : "已借出";

System.out.println((i + 1) + "\\t" + bookNames[i] + "\\t   " + borrowCounts + "\\t " + state

+ "\\t " + borrowDates);

break;


case 3:

System.out.println("\\n*********3.删除图书*********");

System.out.println("序号\\t\\t图书书名");

for (int i = 0; i < bookMeg.length; i++)

// 判断为空的不输出

if (bookMeg[i] != null)

System.out.println((i + 1) + "\\t\\t" + bookMeg[i]);

System.out.print("请输入删除的图书序号:");

int delNo = sc.nextInt();

// 判断输入的序号是否有误

while (delNo < 1 || delNo > bookMeg.length)

System.out.print("输入有误,重新输入:");

delNo = sc.nextInt();

// 删除图书

for (int i = 0; i <=bookMeg.length-1;i++)

if (bookMeg[i] != null && i == delNo - 1)    

bookMeg[i] = bookMeg[i+1];

bookMeg[i+1] = null;    //

// 最后置空

bookMeg[bookMeg.length - 1] = null;

for (int i = 0; i < bookMeg.length; i++)

// 判断为空的不输出

if (bookMeg[i] != null)

System.out.println((i + 1) + "\\t\\t" + bookMeg[i]);

break;


case 4:

System.out.println("\\n*********4.图书借阅*********");

System.out.println("\\n序号\\t\\t图书书名\\t\\t借阅状态\\t\\t借阅次数\\t\\t借阅日期");

for (int i = 0; i < bookMeg.length; i++)

// 判断为空的不输出

if (bookMeg[i] != null)

String state = (states[i] == 0) ? "可借阅" : "已借出";

String borrowCi = borrowCount[i] + "次";

System.out.println((i + 1) + "\\t\\t" + bookMeg[i] + "\\t\\t" + state + "\\t\\t" + borrowCi + "\\t\\t"

+ borrowDate[i]);

System.out.print("请输入您要借阅的图书序号:");

int borrowNo = sc.nextInt();

boolean isFind = true;// false:找不到


for (int i = 0; i < bookMeg.length; i++)

// 查到了,但是状态是0可借阅,可以借阅

if (i == borrowNo - 1 && states[i] == 0)

isFind = true;

// 改变状态为已借出

states[i] = 1;

// 借阅次数加一

borrowCount[i]++;

// 输入借阅日期

System.out.print("请输入借阅日期:");

int borrow = sc.nextInt();

// 对输入的日期判断

while (borrow < 1 || borrow > 31)

System.out.print("您输入日期有误,请重新输入:");

borrow = sc.nextInt();

// 更新借阅日期

borrowDate[i] = borrow;

else if (i == borrowNo - 1 && states[i] == 1)

// 查到了,但是状态是1已借出,不可以借阅

isFind = true;

System.out.println("状态是已借出,不可以借阅!!!");

if (!isFind)

System.out.println("找不到图书!");

break;

break;


case 5:

System.out.println("\\n*********5.归还图书*********");

System.out.println("\\n序号\\t\\t图书书名\\t\\t借阅状态\\t\\t借阅次数\\t\\t借阅日期");

for (int i = 0; i < bookMeg.length; i++)

// 判断为空的不输出

if (bookMeg[i] != null)

String state = (states[i] == 0) ? "可借阅" : "已借出";

String borrowCi = borrowCount[i] + "次";

System.out.println((i + 1) + "\\t\\t" + bookMeg[i] + "\\t\\t" + state + "\\t\\t" + borrowCi + "\\t\\t"

+ borrowDate[i]);

System.out.print("请输入您要归还的图书序号:");

int huanNo = sc.nextInt();

// 判断归还的序号是否合法

while (huanNo < 1 || huanNo > bookMeg.length - 1)

System.out.print("输入的归还图书序号有误,请重新输入:");

huanNo = sc.nextInt();

boolean isHuan = true;// false:找不到

for (int i = 0; i < bookMeg.length; i++)

// 查到了,但是状态是1已借出,可以还

if (i == huanNo - 1 && states[i] == 1)

isHuan = true;

// 改变状态为已借出

states[i] = 0;

// 输入归还日期

System.out.print("请输入归还日期:");

int huan = sc.nextInt();

// 对归还的日期判断,必须大于借阅日期

while (huan < 1 || huan > 31)

System.out.print("您输入日期有误,请重新输入(1-31):");

huan = sc.nextInt();

while (huan < borrowDate[i])

System.out.print("归还日期必须大于借阅日期" + borrowDate[i] + "号,请重新输入:");

huan = sc.nextInt();

borrowCount[i]++;

System.out.println("归还图书成功!!!");


else if (i == huanNo - 1 && states[i] == 0)

// 查到了,但是状态是0可借阅,不能还

isFind = true;

System.out.println("状态是可借阅,不可以归还!!!");

if (!isHuan)

System.out.println("抱歉,找不到图书,不能归还图书!");

break;

break;


case 6:

System.out.println("\\n*********6.退出系统*********");

flag = false;

break;

default:

flag = false;

break;

if (flag)

System.out.print("输入0返回:");

num = sc.nextInt();

else

break;

while (num == 0);

System.out.println("**********谢谢使用**********");

希望能帮到你!!!

学生信息管理系统最简单源代码。

求一个c语言编写的简单点的学生信息管理系统。

方法一:

1、创建一个c语言项目。然后右键头文件,创建一个Stu的头文件。

2、然后编写头文件的代码。再将数据结构的增删改查和结构体写入头文件。

3、然后在源文件中创建main源文件和Stu源文件。再main文件中写入intmian()代码。

4、然后在mian主函数中,写入while语句无限循环。再写入Init函数。

5、在Stu源文件的Init函数用printf语句,将学生管理系统输出。再创建链表的头节点head。

6、然后用switch函数对操作进行判断。再执行数据结构的增删改查功能。这样一个学生管理系统的基本框架就完成了。

方法二:

1、新建一个学生实体类,用于存放学生的各项信息。

2、新建一个链表节点类,每个节点存放一个学生信息及下一个节点的引用。

3、添加一个主操作类,并添加本系统的菜单方法。

4、定义链表的头节点,当前最后一个节点,以及主控制逻辑信息。

5、使用io流逐行读取存有学生信息的文本文件,对每行字符串,采用\\t分割后得到一个字符串数组,数据各项即为一个学生的具体信息。然后新建一个节点加入到链表。

6、运行结果:

参考技术A #include <stdio.h>
#include <string.h>

struct student

long int num;
char name[20];
int age;
char sex[4];
char b[30];
char p[15];
;
int n=0;
struct student stu[100];
struct student *p;

void lr();
void ll();
void cx();
void xg();
void sc();

void main()

int z;
printf("+---------------------------+\n");
printf("| 欢迎使用学生信息管理系统 |\n");
printf("+---------------------------+\n");
printf("提示:为保证您的操作得到保存,请按正常顺序退出系统^_^\n");
do

printf("\n\t\t\t--------------------------------\n");
printf("\t\t\t+ 主菜单 |\n");
printf("\t\t\t--------------------------------\n");
printf("\t\t\t+ [1]----录入学生信息 |\n");
printf("\t\t\t+ [2]----浏览学生信息 |\n");
printf("\t\t\t+ [3]----查询学生信息 |\n");
printf("\t\t\t+ [4]----删除学生信息 |\n");
printf("\t\t\t+ [5]----修改学生信息 |\n");
printf("\t\t\t+ [0]----退出系统 |\n");
printf("\t\t\t--------------------------------\n");
printf("请输入您的选择:");
scanf("%d", &z);
switch(z)

case 0 : break;
case 1 :lr();break;
case 2 :ll();break;
case 3 :cx();break;
case 4 :sc();break;
case 5 :xg();break;
default:printf("\n无效选项!");


while(z!= 0);


void lr()/*录入函数*/

int y;
if(n==0)
p=stu;
do

printf("--------------------\n");
printf("请输入学生的学号:");
scanf("%ld",&p->num);
printf("请输入学生的姓名:");
scanf("%s",p->name);
printf("请输入学生的年龄:");
scanf("%d",&p->age);
printf("请输入学生的性别:");
scanf("%s",p->sex);
printf("请输入学生的地址:");
scanf("%s",p->b);
printf("请输入学生的电话:");
scanf("%s",p->p);
n++;
p++;
printf("\n1.继续输入.\n0.输入完毕.\n");
printf("请选择:");
scanf("%d",&y);

while(y==1);
printf("提示:输入完毕!你一共输入%d个\n",n);



void ll()/*浏览函数*/

int i,j;
if(n!=0)
printf("学生总数:%d\n", n);
printf("学号\t姓名\t年龄\t性别\t地址\t\t电话\n");
printf("-----------------------------------------------------\n");
for(i=0;i<n;i++)
printf("%ld\t%s\t%d\t%s\t%s\t\t%s\n",stu[i].num,stu[i].name,stu[i].age,stu[i].sex,stu[i].b,stu[i].p);

else printf("提示:无学生数据,请输入数据!");


void cx()/*查询函数*/

int c;
int w,i,j=0;
char name[20];
if(n!=0)

do printf("\n");
printf("+--------------------+\n");
printf("| 按学号查询 请按 1 |\n");
printf("| 按姓名查询 请按 2 |\n");
printf("| 取消 请按 0 |\n");
printf("+--------------------+\n");
printf("请输入您的选择:");
scanf("%d", &c);
switch(c)

case 0:break;
case 1:
printf("请输入学生的学号;");
scanf("%ld", &w);
printf("\n");
for(i=0;i<n;i++)
if(stu[i].num==w)

printf("\n学号\t姓名\t年龄\t性别\t地址\t\t电话\n");
printf("%ld\t%s\t%d\t%s\t%s\t\t%s\n",stu[i].num,stu[i].name,stu[i].age,stu[i].sex,stu[i].b,stu[i].p);
j=1;

if(j==0)
printf("提示:没有该学生记录,请核对!");
break;
case 2:
printf("请输入学生的姓名:");
scanf("%s", name);
printf("\n");
for(i=0;i<n;i++)
if(strcmp(name,stu[i].name)==0)

printf("\n学号\t姓名\t年龄\t性别\t地址\t\t电话\n");
j=1;
printf("%ld\t%s\t%d\t%s\t%s\t\t%s\n",stu[i].num,stu[i].name,stu[i].age,stu[i].sex,stu[i].b,stu[i].p);

if(j==0)
printf("提示:没有该学生记录,请核对!");
break;
default:
printf("\n提示:无效选项!");
break;


while(c!= 0);
else printf("提示:无学生数据,请输入数据!");
return;


void xg()/*修改函数*/

long int num;
int i,j,c;
if(n!=0)

printf("请输入您要修改的学生的学号:");
scanf("%ld", &num);
printf("\n");
for(i=0;i<n;i++)
if(stu[i].num==num)
j=i;
do
printf("请选择您要修改的学生的信息内容:\n");
printf("+----------------------+\n");
printf("| 姓名 请按 1 |\n");
printf("| 年龄 请按 2 |\n");
printf("| 性别 请按 3 |\n");
printf("| 学号 请按 4 |\n");
printf("| 地址 请按 5 |\n");
printf("| 电话 请按 6 |\n");
printf("| 取消 请按 0 |\n");
printf("+----------------------+\n");
printf("请输入您的选择:");
scanf("%d", &c);
printf("\n");
switch(c)

case 0:break;

case 1:printf("请输入新姓名:");
scanf("%s",stu[j].name);
break;
case 2:printf("请输入新年龄:");
scanf("%d",&stu[j].age);
break;
case 3:printf("请输入新性别:");
scanf("%s",stu[j].sex);
break;
case 4:printf("请输入新学号:");
scanf("%ld",&stu[j].num);
break;
case 5:printf("请输入新地址:");
scanf("%s",stu[j].b);
break;
case 6:printf("请输入新电话:");
scanf("%s",stu[j].p);
break;
default:
printf("\n无效选项!");
break;


while(c!= 0);
else printf("提示:无学生数据,请输入数据!");


void sc()/*删除函数*/

long int num;
int i,j,e;
if(n!=0)

printf("学号\t姓名\t年龄\t性别\t地址\t\t电话\n");
printf("-----------------------------------------------------\n");
for(i=0;i<n;i++)
printf("%ld\t%s\t%d\t%s\t%s\t\t%s\n",stu[i].num,stu[i].name,stu[i].age,stu[i].sex,stu[i].b,stu[i].p);
printf("请输入您要删除的学生的学号:");
scanf("%ld", &num);
printf("\n");
for(i=0;i<n;i++)
if(num==stu[i].num)
j=i;
if(j!=(n-1))

for(e=i-1;e<n;e++,j++)

stu[j].num=stu[j+1].num;
strcpy(stu[j].name,stu[j+1].name);
strcpy(stu[j].sex,stu[j+1].sex);
stu[j].age=stu[j+1].age;
strcpy(stu[j].b,stu[j+1].b);
strcpy(stu[j].p,stu[j+1].p);
n--;p--;

else n--;p--;
printf("提示:删除完毕!");
else printf("提示:无学生数据,请输入数据!");
参考技术B

    一.需求分析

    用动态链表储管理姓名、电话、住址、身份证等信息和具备添加、删除等编辑功能

    可以通过身份证号码识别性别,省份,年龄

    可以统计总人数,男生人数,女生人数,同一年龄段人数

    可以通过姓名,身份证号查询与修改数据

    具备较美观的界面与汉字提示

    具备保存信息至文件,及从文件中读取信息的功能

    用动态链表来储存数据,便于管理

    二.概要设计

    流程图

    添加信息

    声明一个结构体来储存数据,并通过声明指针来动态添加信息

    显示信息

    声明一个结构体指针,让指针等于头指针,并遍历所有节点,打印每个节点的信息

    查询信息

    1.获取用户的选择确定 用姓名查找或是身份证号查找

    2.遍历所有节点,找到与用户输入相和的节点

    3.打印该节点的信息

    修改信息

    1.获取用户的选择确定 用姓名查找或是用身份证号查找并修改

    2.遍历所有节点,找到与用户输入相和的节点

    3.开始修改该节点的姓名,身份证号,手机号

    删除信息

    1.获取用户的选择确定 用姓名查找并删除或是用身份证号查找并删除,及全部删除

    2.遍历所有节点,找到与用户输入相和的节点的上一个节点的地址

    3.将这个节点的next储存为下下个节点的地址

    4.删除中间的节点

    数据分析

    1.遍历所有节点

    2.依次辨别性别,年龄段

    3.在储存总人数,男生人数,女生人数,年龄段的数据上添加人数

    保存信息至文件

    1.遍历每个节点

    2.将每个节点的信息储存到文件中

    3.每储存一个count便加一

    4.打印储存数据的个数

    从文件中读取数据

    1.将文件中的数据依次添加到新的节点上

    退出程序

    将菜单的while(running)循环,running=0

    三.详细设计

    信息添加

    struct IdCard

    char num[20];

    char phone[11];

    int sex;

    char city[20];

    char name[20];

    long age;

    struct IdCard *next;

    ;

    struct IdCard *head=NULL;//声明一个头节点作为全局变量,且使他为空

    动态生成节点,并往节点中添加信息,生成动态链表

    while(strcmp(pid1->num,str)!=0)

    n++;

    if(n==1) head=pid1;

    else pid2->next=pid1;

    pid2=pid1;

    pid1=(struct IdCard*)malloc(sizeof(struct IdCard));

    printf("请输入身份证号(按0退出):");

    char str[]="0";//用来辨别

    scanf("%s",pid1->num);

    if(strcmp(pid1->num,str)==0) break;

    在此处通过身份证号计算相应的年龄,性别,将这些信息添加到该节点上。

    效果图如下

    菜单样式

    通过printf打印选项

    在while中循环,使菜单一直刷新存在

    在while中的最后加system(“pause”)使每个键盘信息能被显示出来

    效果图如下:

    显示信息

    struct IdCard *pid;//遍历节点

    pid=head;

    通过遍历节点打印出所有节点的信息

    效果图如下:

    查询信息

    int num;

    printf("按1,身份证号查询\\n按2,姓名查询:\\n");

    获取用户的选择

    声明字符串变量来储存用户输入的姓名或身份证号

    遍历所有节点,找到与用户相符合的那个节点,并打印

    struct IdCard *pid;

    pid=head;

    while(pid)

    if(strcmp(pid->num,num)==0)

    printf("------------------------------显示所有信息---------------------------------------\\n"); 

    printf("身份证号            姓名          性别          省份          手机号      年龄\\n");

    printf("%18s ",pid->num);

    printf("%-16s",pid->name);

    printf("%-13s",pid->sex==1?"男":"女");

    printf("%-14s",pid->city);

    printf("%11s",pid->phone);

    printf("  %d\\n",pid->age);

    printf("---------------------------------------------------------------------------------\\n");

    pid=pid->next;

    效果图如下:

    修改信息

    获取用户的选择

    ystem("cls");

    char name[20];

    printf("请输入要修改的名字(20个字节):\\n");

    while(1!=scanf("%s",name))

    printf("你的输入有误,请重新输入(20个字节):");

    fflush(stdin);

    选择相应的修改方式

    遍历节点选到与用户输入相符的节点,并修改

    struct IdCard *pid,*ptmp;

    pid=head;

    while(pid)

    if(strcmp(pid->name,name)==0)

    printf("请输入你要重写的身份证号:\\n");

    while(1!=scanf("%s",pid->num)||strlen(pid->num)!=18)

    printf("你的输入有误,请重新输入(18位):");

    fflush(stdin);

    效果图如下:

    保存信息至文件

    以只写的二进制方式打开一个文件

    FILE *pf = fopen("FILENAME", "wb");

    遍历节点

    struct IdCard *pid = head;  

    if(!pf)  

           

    printf("打开待写入的文件失败!\\n");  

    return;  

     

    while(pid)  

     

    fwrite(pid, 1, sizeof(struct IdCard), pf);//把每位学生信息写入文件  

    i++;  

    pid = pid->next;  

     

    fclose(pf); 

    printf("\\t\\t\\t成功写入%d信息",i);  

    将每个节点写入文件中,用frwite函数

    声明一个变量来计算写入的信息数

    效果图如下:

    从文件中读取信息

    以只读的二进制方式打开文件夹

    FILE *pf;  

    struct IdCard *pid;  

    if((pf = fopen("FILENAME", "rb")) == NULL)  

     

    printf("文件还没有创建,请手工输入学生信息并保存吧!\\n");  

    return;  

     

    申请新的空间将地址赋给节点

    struct IdCard *pid1,*pid2;

    pid1=pid2=(struct IdCard*)malloc(sizeof(struct IdCard));

    fread(pid1,1,sizeof(struct IdCard),pf);

    while(!feof(pf))

    i++;

    if(head==NULL)

    head=pid1;

    else

    pid2->next=pid1;

    pid2=pid1;

    pid1 = (struct IdCard*)malloc(sizeof(struct IdCard));

    fread(pid1,1, sizeof(struct IdCard), pf);  

     

    fclose(pf);  

    printf("文件读取完毕!新增学生信息%d条。\\n",i);

    将文件信息写入节点中

    将节点添加进动态链表中

    声明一个变量来记录读出信息数量

    效果图如下:

    数据分析

    遍历每个节点

    int ManCount=0,

    WomanCount=0,

    age1Count=0,

    age2Count=0,

    count=0;

    struct IdCard *pi;

    pi=head;

    while(pi)

    count++;

    if(pi->sex==1)

    ManCount++;

    else

    WomanCount++;

    if(pi->age>10&&pi->age<20)

    age1Count++;

    if(pi->age>20&&pi->age<40)

    age2Count++;

    pi=pi->next;

    printf("\\n");

    printf("总共有%d个身份证\\n男的占%d个\\n女的占%d个\\n年龄段在10到20岁之间的有%d个\\n年龄段在20到40岁之间的有%d个\\n",count,ManCount,WomanCount,age1Count,age2Count);

    辨别每个节点的性别,年龄段

    在相应的变量上加减

    于是统计出了总信息数量,男生数量,女生数量,各年龄段数量

    效果图如下:

    四.测试结果

    程序开始运行

    回车键后显示菜单

    添加信息

    当身份证号输入的位数不够18位时,会报错,当手机号不够11位时,会报错重新输入

    查询信息

    删除一个信息

    删除所有信息

    修改信息

    保存信息至文件

    从文件中读取信息

    显示所有信息

    数据分析

    五.用户使用说明

    信息添加:

    可以输入相应的身证号,名字与手机号。当身份证号与手机号的位数输入错误时,会有相应的提示,此时你可以重新输入。在输入信息结束时,可以按0

    保存信息至文件

    如果想要在下一次打开此程序时,还能看到相应的信息,一定要记得保存信息至文件,但此次保存文件会覆盖上一次的信息

    从文件中读取信息

    从文件中读取的信息会添加到你新写的信息后面,当显示所有信息时,会以链表形式逐个打印出来

    查询信息

    当你输入的信息查找不到时,此时不会打印任何信息,可按任意键回到菜单。

    同样输入手机号和身份证号会检查你的位数对不对,不对的话,将提示你重新输入

    修改信息

    当你输入相应的身份证号或名字时,会让你把这个人的信息全部输入一次

    删除所有信息

    该选项将会删除你所有的信息,谨慎!

    删除一个信息

    可以选择你想删除的身份证号或名字,删除掉其中一个信息,不会影响其他信息

    数据分析

    会统计出总信息数量,男生数量,女生数量,各年龄段数量

    退出程序

    按0会退出程序,此次使用身份证信息管理系统结束

Hu118391  徊 c语言课程设计

希望我的回答,你能喜欢

以上是关于用java编写一个学生成绩管理系统. //1.学生类 学号 姓名 年龄 语数外三科成绩(三科成绩)?的主要内容,如果未能解决你的问题,请参考以下文章

用java做一个学生成绩管理系统 需要哪些技术

用java做一个学生成绩管理系统需要哪些技术?

用JAVA编写一个学生类Student的程序

如何用Java语言编写学生成绩管理系统

JAVA:编写一个学生成绩管理系统。学生的属性包括学号、姓名、年龄等。

怎么用JAVA编写一个班级管理系统