基于C++的学生成绩管理系统设计 联系客服

发布时间 : 星期四 文章基于C++的学生成绩管理系统设计更新完毕开始阅读f789533cba68a98271fe910ef12d2af90242a8fd

各个功能单元完成情况良好,均能准确并且快速的实现课题所需功能。

1.按名字 2.按学号 3.按英语成绩 4.按平均成绩 1.按名字 2.按学号 3.模糊查找 1.英语成绩 2.java成绩 3.数学成绩 4.语文成绩 5.C成绩 5学生成绩统计 3.2 设计思想:

(1)学生信息管理系统的功能为显示主要操作页面。学生信息处理功能包括输入学生信息,显示学生的个人信息,学生信息条件查询(分为:按学生姓名进行查询,按学生学号进行查询),更新学生个人信息。

(2)学生信息管理系统的功能模块有:

系统登陆界面,美观大方,按enter键进入主菜单选择框架界面,方便用户对程序个功能进行选择,选择要实现的功能按enter键进入该功能。

1. 添加学生信息。 2. 显示学生信息 3. 删除学生

4. 查询学生信息。 5. 修改学生信息 6. 统计学生信息 0. 退出

程序分为多个小模块,通过调用实现各种功能,增强了程序的可建设性。

学生信息管理系统是用面向对象的方法设计,由于数组的存放是连续的,而单链表是非连续存放的,是动态分配内存空间,因此此系统采用单链表来完成。各个功能模块的实现主要转变到对单链表的遍历,添加和删除结点。 4主要代码描述 4.1显示主菜单

void DisplayMainMenu()//作者:闾泽民

5

{ }

4.2.显示排序方式

void Name(Student stu[],int Max)//按名字排序//作者:不详 {

int i,j; Student p;

for(i=0;i

for(j=0;j0) { p=stu[j]; stu[j]=stu[j+1]; stu[j+1]=p; } Display(stu,Max); }

void Sort(Student stu[],int Max)//按学号排序//作者:不详 {

int i,j; Student p;

for(i=0;i< Max;i++)

for(j=0;j < Max - i-1;j++) if(stu[j].num>stu[j+1].num) { p=stu[j]; stu[j]=stu[j+1];

6

printf(\系统的主菜单:\\n\

printf(\欢迎来到学生成绩管理系统!在该系统你可以。。。。\\n\printf(\:添加学生信息\\n\printf(\:显示学生信息\\n\printf(\:删除学生信息\\n\printf(\:查询学生信息\\n\printf(\:修改学生信息\\n\printf(\:统计学生信息\\n\printf(\:退出系统\\n\printf(\请选择:\

stu[j+1]=p; }

Display(stu,Max); }

4.3输入学生信息

int InforInput(Student stu[],int id)//学生信息输入//作者:不详 {

int number,i,m;

printf(\请输入本次录入的学生人数:\

scanf(\ m=number+id;

if(number>MaxNum) {

printf(\输入人数太多,请重新输入!\\n\ return (0); }

for(i=id;i

printf(\请输入第%d个学生人数的学号:\ scanf(\ printf(\姓名:\ scanf(\ printf(\班级:\ scanf(\ printf(\性别: \

scanf(\

printf(\请依次输入英语,JAVA,语文,C,数学的成绩:\

scanf(\stu[i].mark.C,&stu[i].mark.Math); }

printf(\你输入的信息是:\\n\

SaveStu(stu,i);

for(i=id;i

printf(\姓名:%s\\t班级:%d\\t学号:%d\\t性别:%s\\n\ printf(\学生成绩信息:\\n\

7

printf(\:%.2f\\tjava:%.2f\\tChinese:%.2f\\tC:%.2f\\tMath:%.2f\\n\.English,stu[i].mark.Java,stu[i].mark.Chinese,stu[i].mark.C,stu[i].mark.Math); }

return (i); }

4.4 删除学生信息

int Delete(Student stu[],int Max)//作者:不详 {

int j,i;

int findnum;

printf(\请输入要删除的学号:\ scanf(\

while(findnum!=0) { if((i=FindStuNum(stu,findnum,Max))!=-1) { for(j=i;j

8