学生成绩管理系统的设计与实现_第1页
学生成绩管理系统的设计与实现_第2页
学生成绩管理系统的设计与实现_第3页
学生成绩管理系统的设计与实现_第4页
学生成绩管理系统的设计与实现_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、一.概述1.1设计目的和要求实验目的:通过该系统的设计,深化数据结构链表的建立、添加、查询等方面的掌握、排序算法的掌握等。实验要求:基于顺序存储结构的插入、删除、查找等算法思想和实现。掌握线性表的链存储结构构建。在连接的列表中插入、删除和查找算法的想法和算法实现。1.2实验环境Windows XP系统VC 6.0二.设计理念和内容2.1设计理念编程由算法和数据结构两部分组成,合理选择和实现一个数据结构与处理这些数据结构具有相同的重要性。2.2设计内容1、记录包括一个学生的学号、名字、性别、各科目分数、综合成绩等。2,输入功能:您可以一次完成多个记录的输入。3、显示功能:完成所有学生记录的显示。

2、4、查找功能:按名称或学号完成学生记录查找并显示。5、排序功能:按学生成绩或学号排序。6、插入功能:插入新的学生记录。请把学生记录保存在文件学生那里。8、必须提供调用每个功能的界面,界面和每个功能的操作界面必须尽可能清晰漂亮!三.编程3.1程序模块系统可分为以下模块:查询模块、排序模块、添加模块、删除模块。Main函数Menu函数查询模块删除模块添加模块排序模块3.2计划流程图图3-1主函数流程图图3-2查询模块流程图排序选择对齐方法按学号排序按成绩排序输出图3-3排序模块流程图添加输入学生信息保存图3-4添加模块的流程图删除删除成功删除输入学生名称图3-5删除模块的流程图3.3结构Typed

3、ef struct student/学生定义char name10;Int numberchar sex2;Int mathInt EglishInt clangugeInt average studentTypedef struct unit/接点定义Student dateStruct unit * next单位;3.4主要函数功能简介主函数通常设计为仅提供输入、处理和输出部分的函数调用,每个功能模块都可以通过选择switch-case以菜单方式选择。3.5源代码#include#include#includeTypedef struct student/学生定义char name10;I

4、nt numberchar sex2;Int mathInt EglishInt clangugeInt average studentTypedef struct unit/接点定义Student dateStruct unit * next单位;Unit* build()/创建关联列表并返回指针unit * p;if(p=(unit *)malloc(size of(unit)=null)printf(=初始化失败!);return 0;Else p-next=NULL;p-date . number=0;/头节点存储学生数Printf(初始化成功! n );return p;添加Void

5、 add(unit *head)/学生Unit *p,* q;Int m,n=0;q=head-next;p=(unit *)malloc(size of(unit);Printf(=输入新名称! n );gets(p-date . name);fflush(stdin);请输入Printf(=学号! n );While(n=0)scanf(“% d”,m);fflush(stdin);if(q=NULL)n=1;While(q)If(q-date.number=m)Printf(=输入与现有同学的学号相同的学号。请重新输入! n );q=head-next;BreakElseq=q-next

6、;if(q=NULL)n=1;p-date . number=m;Printf(=请输入性别! n );gets(p-date . sex);fflush(stdin);Printf(=请输入数学分数。 n );scanf(“% d”,m);fflush(stdin);p-date . math=m;Printf(=输入英语分数 n );scanf(“% d”,m);fflush(stdin);p-date . eglis=m;Printf(=输入c语言分数 n );scanf(“% d”,m);fflush(stdin);p-date . clanguge=m;p-date . averag

7、e=(p-date . math p-date . Eglish p-date . clan guge);q=head-next;head-next=p;p-next=q;head-date . number;删除Void deletion(unit *head)/一名学生Unit *p=head-next,* q=headchar N10;Printf(=请输入要删除的学生名称! n );gets(N);fflush(stdin);If(p=NULL)Printf(=系统中没有要删除的学生! n );While(p)If(strcmp(,N)=0)q-next=p-ne

8、xt;head-date . number-;Printf(=%s卸载成功!n ,p-date . name);自由(p);BreakElsep=p-next;q=q-next;If(p=NULL)Printf(=要删除的学生不存在。删除失败! n );Int display(unit *head)/显示学生信息unit * p=head-next;Int m,n=0;char N10;If(p=NULL)Printf(=系统中没有学生! n );return 0;While(n=0)printf( * * * * * * * * * * * * * * * * * * * * * * * *

9、 * * * * * * * * * * * * * * * * * * *Printf(=请选择操作! n );Printf(=ttt1 .全部显示t2。按名称查找nttt3。按学号查找t4。返回主菜单 n );scanf(“% d”,m);fflush(stdin);交换机(m)case 13360 printf( n=此系统中有%d名学生!nn ,head-date . number);p=head-next;Printf(t名称t学号tt性别t数学t英语tc语言t合成 n n );While(p)printf(“ t % s t % d t % s t % d t % d t % d

10、t % d t % d t % d n”P-date.eglis、p-date.clan guge、p-date . average);p=p-next;BreakCase 23360 printf (=输入查找器名称! n );gets(N);fflush(stdin);p=head-next;While(p)If(strcmp(,N)=0)Printf(t名字t学号t性别t数学t英语tc语言t合成 n );printf(“ t % s t % d t % s t % d t % d t % d t % d t % d t % d n”P-date.eglis、p-da

11、te.clan guge、p-date . average);BreakElsep=p-next;If(p=NULL)Printf(=没有要检查的学生!);Break请输入case : printf(=查询学号! n );scanf(“% d”,m);fflush(stdin);p=head-next;While(p)If(p-date.number=m)Printf(t名字t学号t性别t数学t英语tc语言t合成 n );printf(“ t % s t % d t % s t % d t % d t % d t % d t % d t % d n”P-date.eglis、p-date.cl

12、an guge、p-date . average);BreakElsep=p-next;If(p=NULL)Printf(=没有要检查的学生! n );Breakcase 4333690n=1;Breakreturn 1;Int range(unit *head)/对齐Unit *p=head,* q=head-next;Int n、I、m=head-date . number;printf( * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *Printf(ttt1 .按学号分类。按分数 n n );Printf(=请选择操作! n );scanf(“% d”,n);fflush(stdi

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论