数据结构课程设计学生成绩管理系统报告书Word下载.doc
- 文档编号:1499229
- 上传时间:2023-04-30
- 格式:DOC
- 页数:21
- 大小:1.26MB
数据结构课程设计学生成绩管理系统报告书Word下载.doc
《数据结构课程设计学生成绩管理系统报告书Word下载.doc》由会员分享,可在线阅读,更多相关《数据结构课程设计学生成绩管理系统报告书Word下载.doc(21页珍藏版)》请在冰点文库上搜索。
本系统主要实现对学生成绩信息进行管理,需要实现以下几个方面的管理功能:
(0)创建学生成绩信息:
输入学生的信息。
(1)查找学生成绩信息:
按学号、姓名查找。
(2)修改学生成绩信息:
找到要修改的学号,修改相应信息。
(3)追加学生成绩信息:
找到要追加的学生成绩的学号,对相应科目的成绩进行追加。
(4)显示学生成绩信息:
显示全部学生的成绩信息
(5)插入学生成绩信息:
插入一个新的学生。
(6)删除学生成绩信息;
按学号、姓名删除。
目或者总分排序。
2.系统模块结构图
学生成绩管理系统
输入学生成绩
按学号查询成绩
按姓名查询成绩
修改学生成绩信息
追加学生成绩
显示全部学习信息
插入学生成绩信息
删除学生信息
3.模块分析:
3.1系统首页:
功能介绍:
输入相应功能序号即可进行相应的功能操作。
图1.系统首页
相应的代码:
#include<
stdio.h>
stdlib.h>
iostream>
usingnamespacestd;
#defineMAX100
typedefstructstudent{
intnum;
charname[20];
intenglish;
intchinese;
intmath;
inttotal;
intlength;
structstudent*next;
}s,*LinkList;
intmain()
{cout<
<
"
\t\t\t欢迎登录学生成绩管理系统!
endl;
cout<
\t\t\t+------------------------------------------+"
\t\t\t|序号|请选择相应的操作功能的序号:
|"
cout<
\t\t\t+-----+------------------------------------+"
\t\t\t|0|请输入学生的相关信息与成绩:
\t\t\t|1|按学生学号查询学生成绩:
|"
\t\t\t|2|按学生姓名查询学生成绩:
\t\t\t|3|追加学生的成绩信息:
|"
\t\t\t|4|显示全部学生的信息:
\t\t\t|5|插入学生信息:
|"
\t\t\t|6|修改学生信息:
\t\t\t|7|删除学生信息:
intflag=1,flag1=1;
LinkListl;
l=(LinkList)malloc(sizeof(student));
l->
next=NULL;
charch,ch2;
while(flag){
请输入你要进行的操作数:
cin>
>
ch;
while(ch>
'
7'
||ch<
0'
)
{
cout<
输入有误,请重新输入"
cin>
}
switch(ch)
{
case'
:
{input(l);
cout<
学生的基本信息存储成功"
}break;
1'
{check(l);
2'
check_name(l);
break;
3'
add(l);
4'
output(l);
5'
insert_stu(l);
case'
6'
xiugai(l);
case'
Delete_stu(l);
}
cout<
你要继续操作还是退出(y/n)"
ch2;
while(flag1)
{
if((ch2=='
Y'
)||(ch2=='
y'
))
flag=1;
flag1=0;
elseif((ch2=='
N'
n'
//flag=0;
//flag1=0;
else{
flag1=1;
输入有误,请重新输入(y/n)(y:
继续)(n:
退出)!
}
return0;
}
3.2输入学生信息
输入0,选择进入输入学生信息功能中,输入想输入的学生信息个数,并输入相应的学生信息。
图2.输入信息
相关代码:
intInitLink(LinkList&
L)//输入学生信息
{
L=(LinkList)malloc(sizeof(structstudent));
L->
return0;
intinput(LinkList&
L)
inti,n;
LinkListp;
LinkListq;
请输入学生人数:
cin>
n;
length=n;
请输入学生的基本信息:
for(i=0;
i<
L->
length;
i++)
{
p=(LinkList)malloc(sizeof(student));
学号:
;
p->
num;
姓名:
name;
英语:
english;
语文:
chinese;
数学:
math;
p->
total=p->
english+p->
chinese+p->
+----------------------------------------------+"
姓名:
英语:
语文:
数学:
总成绩:
num<
"
name<
english<
chinese<
"
math<
total<
if(L->
next==NULL)
L->
next=p;
p->
next=NULL;
q=p;
else
q->
//L=L->
next;
3.3显示学生全部信息
功能简介:
显示连表中的全部学生信息。
图3.显示全部信息
相关代码:
intoutput(LinkList&
L)//显示全部信息
LinkListp=L->
if(L->
next==NULL)
链表中没有学生信息,请先输入学生信息!
else{
while(p)
"
"
p=p->
intcheck(LinkList&
intn;
LinkListp=L->
if(p==NULL)
else{
请输入你要查找的同学的学号:
while(p&
&
num!
=n)
p=p->
if(!
p)
链表中没有学号为:
n<
的同学信息!
学号为:
的同学信息如下:
cout<
intcheck_name(LinkList&
请输入你要查找的同学的姓名:
strcmp(p->
name,name))//strcmp(p->
name,name)如果p->
name=name,则比较的函数值为0
链表中没有姓名为:
name"
姓名为:
name="
3.4学生成绩追加
追加相应学生的相应成绩。
intadd(LinkList&
L)//追加学生信息
intn,i,j,k;
请输入你要追加的同学成绩的学号:
请输入要追加的成绩:
(相应的追加分数分别为英语i,语文j,数学k,若是不追加,请输入0.)"
i="
cin>
i;
j="
j;
k="
k;
p->
english+=i;
chinese+=j;
math+=k;
3.5修改学生信息
修改相应学号学生信息。
intxiugai(LinkList&
L)//修改学生信息
intn;
charx;
请输入你要修改的同学成绩的学号:
是否要修改学号为"
的同学的信息?
(y/n)"
x;
if((x=='
)||(x=='
姓名修改为:
英语成绩修改为:
语文成绩修改为:
数学成绩修改为:
学号为"
的同学修改后的信息为:
3.6插入学生信息
在链表的第i个节点插入学生信息。
intinsert_stu(LinkList&
L)//插入学生信息
LinkListp,s=L;
intj,i,flag=1;
if(s->
else{
请输入你要在链表第i个位置中插入学生信息的i值:
while(flag){
j=0;
p=L;
while(p&
j<
i-1)
++j;
if(!
p||j>
输入i值小于1或者大于表长+1,请重新输入!
flag=1;
elseflag=0;
s=(LinkList)malloc(sizeof(student));
学号:
姓名:
英语:
语文:
数学:
插入的学生信息为:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构 课程设计 学生 成绩管理系统 报告书