- 1、本文档共40页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Word
Word专业资料
C语言课程设计报告
题 目 学牛宿舍管理系统
系部名称: 专业名称: 班 级:
学 号:
学生姓名
指导教师:
时 间:
课程设计目的
设计一个ubuntu下的学生宿舍管理系统
掌握用C语言定义单链表结构,并实现其创建、插入、删除等基本操作。
、课程设计内容
用C语言编写“学生宿舍管理系统”,要求如下:
创建链表,录入数据。
数据的读写操作。
数据的更新操作。
数据的删除和插入。
请你要求对数据进行查找。
按要求排序。
设计总体菜单界面。
三、实验要求
1、 录入数据
学生的基本信息,包括学号、姓名、性别、年龄、专业、班级等。
宿舍楼的基本信息,包括宿舍楼号、学生所住的房间号和宿舍床位号等。
2、 数据存储
信息的录入要求用链表,把输入的信息要求存储到指定文件夹中,以便随
时查看,也可供程序调用,方便操作人员不用重复输入数据。
3、数据的更新
更新包括插入、删除、修改。
删除分根据学号删除和根据学生的楼层信息删除。
5、 数据的查询
查询可以根据学号和宿舍信息不同方面进行查询,方便操作者使用
6、 数据的排序
操作者可以使所输入的信息按学号排序。
7、 数据的统计
按整体统计,统计所有学生人数,男生人数和女生人数。
四、概要设计
1 ?系统结构图(功能模块图)
2.功能模块说明:
.数据录入:创建单链表,调用Initnode()函数申请头结点,在调用append(),
在调用Write_to_File()函数将信息写入文件中,
插入模块:先将文件信息读出,再调用
息。
插入模块:先将文件信息读出,再调用
需要的信息删除。
修改模块:先将文件信息读出,再调用
修改。
查询模块:先将文件信息读出,再调用
insert()函数,可以向文件中插入信 del()函数,可以将输入错误或者 modify()函数,将输入错误的信息
insert()函数,可以向文件中插入信 del()函数,可以将输入错误或者 modify()函数,将输入错误的信息 search(),在search()中有调用两个
⑹排序模块:先将文件信息读出,再调用 sort (),按照学生学号排序,拍完续 没有直接写入文件,如果要直接写入调用文件读入函数
Write_to_File().
⑺统计模块:先将文件信息读出,再调用 tongji()函数,统计了女生人数和男
生人数,还统计了总人数.
五?详细过程和运行结果:
删除模块
插入模块
开始
头插入学生信息
输入插入的学生信息
将其入栈,即将插入的学 生信息插到了最前面
查找模块
「开始
修改模块
组织循环,扫描存储学 生信息的链表表
修改学生信息
排序模块
匚 开始
组织循环,扫描存储学生信息的链表
选出学号最小的学生,与第学生交换存储位置
在余下的学生中选出学号最小的学生与第二个学生交换存储位置
以此类推,直至排序完成
统计模块
开始
组织循环,扫描存储学 生信息的链表表
结束
六.参考文献:
《C语言程序设计》: 王曙燕
七.源代码
#i nclude stdio.h
#i nclude stdlib.h
#in elude stri ng.h
〃#in elude coni o.h
typedef struct Stude nt
int
num;
/*学号*/
char
n ame[15];
/*姓名*/
char
se x;
/*性别*/
char
zhua nye[20];
/*专业*/
int
lounum;
/*楼号*/
int
sushenum;
/*宿舍号*/
int
chuangnum;
/*床号*/
struct Stude nt *n ext;
}Stu;
void Write_to_File(Stu *L)
{
FILE *fp;
Stu *p;
/*将信息写入文件*/
fp=fope n(sushe.txt,w);
if(fp==NULL)
{
printf(打开失败!);
getchar();
getchar();
exit(0);
}
p=L-n ext;
while(p)
{
fprin tf(fp,%d %s %c %s %d %d %d\n,p- num,p- name,p-sex, p-zhua nye,p-l ounu m,p-sushe nu m,p-chua ngnu m);
p=p-n ext;
}
fclose(fp);
}
void InitStu(Stu **h) /* 创建头结点 */
{
(*h)=(Stu *)malloc(sizeof(Stu));
if(h==NULL)
{
printf(创建失败!!);
getchar();
getchar();
exit(0);
}
(*h)- next=NULL;
}
/*录入学
您可能关注的文档
- C++课设教师工资管理系统.docx
- C25片石混凝土路肩施工方案.docx
- CAD增强属性编辑器使用.docx
- CAD制作自定义填充图案.docx
- CAN总线的桥梁健康检测系统研究.docx
- CFG桩基础施工方案.docx
- chomsky文法类型的判断.docx
- CKD海外建厂管理办法及流程.docx
- CL建筑体系施工组织设计标准.docx
- CPU逻辑运算原理.docx
- 英语人教PEP版八年级(上册)Unit4+writing+写作.pptx
- 人美版美术四年级(上册)8 笔的世界 课件 (1).pptx
- 人美版美术七年级(上册)龙的制作.pptx
- 英语人教PEP版六年级(上册)Unit 2 第一课时.pptx
- 数学苏教版三年级(上册)3.3 长方形和正方形周长的计算 苏教版(共12张PPT).pptx
- 音乐人教版八年级(上册)青春舞曲 课件2.pptx
- 音乐人教版四年级(上册) 第一单元 音乐知识 附点四分音符|人教版.pptx
- 英语人教PEP版四年级(上册)Unit 6 Part B let's learn 1.pptx
- 道德与法治人教版二年级(上册)课件-3.11大家排好队部编版(共18张PPT).pptx
- 人美版美术七年级(上册)《黄山天下奇》课件1.pptx
文档评论(0)