欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    数据结构课程设计学生信息管理系统范本模板.docx

    • 资源ID:8008882       资源大小:213.69KB        全文页数:23页
    • 资源格式: DOCX        下载积分:3金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    数据结构课程设计学生信息管理系统范本模板.docx

    1、数据结构课程设计学生信息管理系统范本模板题目2。 学生信息管理系统一、课程设计目的1 数据结构课程设计是综合运用数据结构课程中学到的几种典型数据结构,以及程序设计语言(C语言),自行实现一个较为完整的应用系统的设计与开发2 通过课程设计,自己通过系统分析、系统设计、编程调试,写实验报告等环节,进一步掌握应用系统设计的方法和步骤,灵活运用并深刻理解典型数据结构在软件开发中的应用 。3 学会将知识应用于实际的方法,提高分析和解决问题的能力,增加综合能力。 学生信息管理系统:(1)熟练掌握链表存储结构及其建立过程和常用操作;(3)学会自己调试程序的方法并掌握一定的技巧二、课程设计内容 建立学生信息管

    2、理系统,通过链表实现对学生信息的输入,查找,删除,插入和排序等操作。三、需求分析 1每位学生的信息有:学号,姓名,性别,出生日期,E-mile,电话,c成绩,数学成绩等,用链表对学生的信息进行存储. 2全部数据可以只放在内存中; 3系统能实现的操作和功能如下: a) 输入学生信息: 对不同学生分别输出下列信息:学号,姓名,性别,出生日期,Emile,电话,c成绩,数学成绩等. b) 查找学生信息: 根据学生的学号或姓名对学生的信息进行查找。 c) 删除学生信息:删除某个学生的所有信息。 d) 插入学生信息:将某个学生的信息插入到已经输入的信息中。e) 显示学生信息: 将所有学生的信息显示出来。

    3、 f) 排序: 将所有学生按某个学科的成绩依次排序。四、概要设计1系统结构图(功能模块图)2功能模块说明输入学生信息,creat()函数: 建立单向链表,组织循环,将学生的信息依次录入。:查找学生信息:a。按学号查找,find1()函数;b。按姓名查找,find2()函数; 删除学生信息,del()函数: 建立指针,在链表中寻找要删除信息的学生的学号,找到后pnext=p-nextnext,将其删除。 插入学生信息,insert()函数;输入要插入的信息,建立指针,寻找要插入的节点。显示学生信息,print()函数;将以存在的学生信息输出按某科成绩对学生进行排序,sort()函数;五、详细设计

    4、及运行结果 1. 菜单:2. creat()函数。 3. find()函数。 find1():find2():3。 del()函数。4. insert()函数.5。 print()函数。6. sort()函数。六、调试情况,设计技巧及体会通过这次课程设计,我对这门课又有了一个新的理解,最大的喜悦不是写出程序,而是从中学会了怎么去写,该如何去写,在老师的严格监督下,自己也养成了独立思考的习惯,真的从中得到了很多好处,从思想到着手,所有都是程序化的,必须踏踏实实的来。 通过学生信息管理系统的设计,使我对链表有了更深的了解,也懂得了如何用链表进行输入,插入,排序等操作,两个礼拜的实习很快就过去了,这

    5、一次真的学到了很多东西,我也将会将自己所学到的东西用到自己以后的学习中去。七、参考文献C语言程序设计-科学出版社数据结构(C语言描述)-清华大学出版社数据结构(使用C语言)-电子科技大学出版社八、附录:源代码#includestdio。hincludestring.hinclude#define N sizeof(struct stu)void clearscreen() /*清屏函数/ getchar(); system(”cls”);struct date /*定义出生年月日的结构体*/ int year; int mouth; int day; ;struct stu /*定义学生信息的

    6、结构体*/ int number; char name30; char sex5; struct date birthday; char mail30; char phone30; int cscore,mscore; struct stu next; ; /*输出函数*/int print(struct stu p) while(p!=NULL) /如果P所指的结点不为空 执行循环*/ printf(”学号 姓名 性别 出生日期 Email 电话 C成绩 数学成绩n”); printf(” %2d6s6s%8d-2d2d%11s%11s6d8dn,pnumber,pname,p-sex,pb

    7、irthday.year,pbirthday.mouth,pbirthday。day,pmail,p-phone,p-cscore,pmscore ); p=p-next; printf(nn按回车键返回nn); getchar(); return 0;/*创建链表*/struct stu creat() struct stu p,head; int i,k; printf(”请输入学生的数:n”); scanf(”%d,k); p=head=(struct stu )malloc(N); printf(请输入学号n); scanf(d,&p-number); printf(”姓名n); sc

    8、anf(”s”,&pname); printf(性别n”); scanf(s”,&p-sex); printf(出生日期n); scanf(”%d-%dd”,pbirthday。year,p-birthday.mouth,&pbirthday。day); printf(”E-mailn”); scanf(%s,pmail); printf(”电话n”); scanf(”%s,pphone); printf(”c成绩n”); scanf(%d”,p-cscore); printf(数学成绩n”); scanf(”%d,&p-mscore); if(k1) for(i=1;inext=(struc

    9、t stu *)malloc(N); p=pnext; printf(”请输入学号 n); scanf(”d,&pnumber); printf(姓名n”); scanf(”%s”,&pname); printf(”性别n”); scanf(%s,p-sex); printf(出生日期n”); scanf(”d-%d-d”,&p-birthday.year,&pbirthday。mouth,&pbirthday.day); printf(”E-mailn); scanf(%s,pmail); printf(”电话n”); scanf(%s,&p-phone); printf(c成绩n); sc

    10、anf(”%d,&pcscore); printf(”数学成绩n”); scanf(d,p-mscore); pnext=NULL; return head;/查找链表/struct stu *find1(struct stu p) int number; if(p=NULL) printf(”n提示:没有资料可以查询!n”); return 0; printf(请输入要查找的学生学号:); scanf(%d,number); while(p!=NULL) if(pnumber=number) return(p); break; else p=p-next; return NULL; stru

    11、ct stu find2(struct stu p) char name30; if(p=NULL) printf(n提示:没有资料可以查询!n); return 0; printf(”请输入要查找的学生姓名:”); scanf(”%s”,name); while(p!=NULL) if(strcmp(p-name,name)=0) return(p); else p=pnext; return NULL; /*删除链表/int del(struct stu *h) int number; struct stu *p,p0; if(h=NULL) return 0; printf(请输入要删除

    12、的学号n”); scanf(d”,&number); p0=h; if(p0-number=number) h=p0-next; free(p0); return 1; p=p0-next; while(p!=NULL) if(pnumber=number) p0next=pnext; free(p); return 1; p0=p; p=p-next; printf(n按回车键返回n); getchar(); return 0; /插入链表/ int insert (struct stu *h) struct stu *p,p0; p=(struct stu )malloc(N); prin

    13、tf(”请输入要插入的学号n”); scanf(”ld,pnumber); p0=*h; if(p0-number=p-number) return 0; printf(”姓名n”); scanf(”s”,&p-name); printf(”性别n”); scanf(%s”,&p-sex); printf(”出生日期n); scanf(”d%dd”,&p-birthday.year,pbirthday。mouth,&pbirthday.day); printf(E-mailn”); scanf(s,&pmail); printf(电话n”); scanf(”s”,&pphone); print

    14、f(c成绩n); scanf(”%d”,&pcscore); printf(数学成绩n”); scanf(d”,&pmscore); pnext=NULL; if(h=NULL) *h=p; return 1; p0=*h; if(p0numberp-number) pnext=*h; h=p; return 1; while(p0-next!=NULL&p0-nextnumbernumber) p0=p0-next; if(p0next=NULL) p0next=p; return 1; pnext=p0-next; p0next=p; printf(nn按回车键返回nn); getchar

    15、(); return 1; /排序/struct stu* sort(struct stu p0) struct stu *t,*p,*q,*z; if(p0=NULL) printf(”没有学生信息可排序!n); return 0; if(p0=NULL)|(p0-next=NULL)/*当节点不存在或者只有一个节点时/ return p0; t=p0; p=tnext; t-next=NULL; /将头节点孤立出来/ while(p) /*t始终指向头节点*/ q=pnext; if(p-cscoret-cscore) /用头节点的后一个节点与头节点进行比较*/ pnext=t; /将分数

    16、大的放在前面*/ t=p; /t始终指向当前第一个节点*/ else z=t; while(z-next&z-nextcscore=p-cscore) z=znext; pnext=z-next; z-next=p; p=q; p0=t; return p0; void main() struct stu *head,*p; int a; int b; printf(”*西安邮电学院学生管理系统*n”); printf(要进入系统请按任意键n”); getchar(); printf(*欢迎您!您已进入管理系统*n”); printf(”*学生成绩管理系统*n); do clearscreen

    17、(); printf(学生纪录操作:n”); printf(1:输入学生信息n”); printf(”2:查找学生信息n”); printf(3:删除学生信息n”); printf(”4:插入学生信息n”); printf(”5:显示学生信息n); printf(6:按C语言成绩排序n”); printf(0:退出系统n”); printf(请选择(06):); scanf(”%d”,b); switch(b) case 1:head=creat(); print(head); break; case 2:printf(”请输入要查找的种类:如为学号请输1,如为姓名请输2:n”); scanf

    18、(”%d”,&a); switch(a) case 1:p=find1(head);break; case 2:p=find2(head);break; if(p) printf(”找到情况如下:n); getchar(); printf(学号:%d 姓名:s 性别:%s 出生日期:%dd-%d Email:%s 电话:s C成绩:d 数学成绩:%dn”,p-number,pname,p-sex,pbirthday.year,p-birthday.mouth,p-birthday。day,p-mail,p-phone,p-cscore,pmscore); else printf(没有找到!n)

    19、; getchar(); break; case 3:if(del(head) printf(已正确删除!n”); else printf(要删除的结点不存在!n”); getchar(); break; case 4:if(insert(&head) printf(已成功插入!n”); else printf(此学生已存在,插入失败!n); getchar(); break; case 5:print(head); break; case 6:p=sort(head); print(p); break; case 0:break; default : printf(” 输入错误!请重新输入!n”); while(b!=0);


    注意事项

    本文(数据结构课程设计学生信息管理系统范本模板.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开