- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
题目:
学生信息管理系统
一、需求分析
任务要求 :
自学 C 语言中有关链表及外部文件的内容 ,设计学生信息管理系 统。具体要求如下 :
?建立学生信息,信息至少包括名字、性别、年龄、学号、系别、家庭信息等 内容;
能够提供添加 、删除和修改学生信息等功能 ;
能将通讯录保存在文件中 ;
? 能够按指定方式输出学生信息 。
系统功能需求分析 :
1、 为存储学生信息 , 需定义一个结构体类型 , 成员名字 、 性 别、年龄 、学号 、系别 、家庭信息等 ,并建立链表 ,定义该结构体 类型的指针 ,用于指向各结点 ;
2、分别建立具有添加 、删除 、修改 、查询等功能的子函数 ,完 成相应功能 , 对程序实现模块化 。这其中要用到对链表的删除 、插 入等知识 。删除时用一结构体指针指向链表的第一个结点 , 检查该 节点的值是否等于输入的要删除的学号 , 若相等就删除 ,不相等则 后移指针 ,直至表尾 。插入时也要先找到相应结点 ,再添加 。
★3、为实现存储功能 ,需用到文件的相关函数 ,打开文件 , 将添 加、修改或删除的信息存入磁盘中 ★ 4、为以表格的形式输出文件,宏定义格式化输出语句,指定输出 学生信息。
二、概要设计
系统总体设计框架:
对程序进行模块化,建立添加、修改、删除、查找和显示功能 的子函数,各子函数中运用链表存储数据。从主函数开始执行,调 用各个子函数,并运用文件相关知识将信息存入磁盘中。
系统功能模块图:
三、详细设计
主要功能模块的算法设计思路如下
1、 查询通讯录信息 (void chakan())
(1) 为开辟一个新单元
(2) 输入查询关键字:
(3) 读取保存的文件数据输入 ASCLL字符:
(4) 在链表中寻找相应结点;
(5) 调用输出函数,输出结点信息。
2、 添加信息函数(void add())
(1) 定义指向结构体变量的指针;
(2) 移动指针,找到插入结点;
(3) 在要插入的结点输入信息;
(4) 调用保存函数,打开文件,保存输入信息。
3、 删除信息函数(void del())
(1) 定义指向结构体变量的指针;
返回主函数;返回主函数;(2) 用指针检验链表中是否有记录,若没记录,
返回主函数;
返回主函数;
(3) 根据要修改的编号查找要删除的结点;
(4) 修改链表,删除对应结点。
4、 修改信息函数(void xiugai())
(1) 定义指向结构体变量的指针;
(2) 读取保存的文件数据输入 ASCLL字符:
(3) 用指针检验链表中是否有记录,若没记录,
(4) 根据要修改的编号查找对应结点;
修改信息;
打开文件,保存修改记录。
5、保存信息函数(baocun())
定义指向结构体变量的指针;
用文件指针指向要读写的磁盘文件名,若没有则新建此文件名:
用指针检验链表中是否有记录,若没记录,返回主函数:
打开文件,保存记录:
屏幕操作函数 (void stubent187())
(1)以一定格式输出所想要的图形:
四、主要源程序代码
定义变量:(对整个程序定义全局变量)
#in elude stdio.h
#i nclude co ni o.h
#define STUDENT ID /*所有 STUDENT都用 ID 来代替 */
typedef struct node
{ char min g[50];
char xin g[50];
char nian[ 50];
int xuehao;
char xibie[50];
char sushe[50];
char jia[50];
/*定义结构体
/*定义结构体*/
/*名字*/
/*性别*/
/*年龄*/
/*学号*/
/*专业*/
/*宿舍号*/
/*家庭地址*/
}ID; /*学生信息(变量名)*/
ID *head=NULL; /*定义一个头指针*/
FILE *zhi; /*定义一个文件指针*/
主菜单界面:(进入屏幕界面的形式)
void stubent187() /*屏幕格式函数 */
prin tf(****************************************\n);
prin tf(* 学生信息管理系统 *\n);
*\n);prin tf(*
*\n);
printf(* 请选择:1:查看;2:添加;3:删除; *\n);
prin tf(*
4:修改;0:退出系统
*\n);
prin tf(*
*\n);
printf(
******************************************
**\n);
prin tf(输入 0~4 数字 vvvvvvvvvvvvvn);
prin tf(
return ;
}
查看学生信息记录:(对以保存在
您可能关注的文档
最近下载
- 2025入团考试精选120题题库(含答案).pdf VIP
- 00015英语二课文精讲讲义(8).docx VIP
- 新型多功能电渣重熔用气体保护罩.pdf VIP
- GB_T50109-2014:工业用水软化除盐设计规范.pdf VIP
- 《运动损伤与康复》王国祥 7第七章 手腕部运动损伤与康复.ppt VIP
- 卡通小学生心理健康绿色PPT模板.pptx VIP
- 2025人民出版社供小学用中华民族大家庭全册教案教学设计.docx
- 2025年选拔副校长笔试题及答案.docx VIP
- 电堆科技(合肥)有限公司:构建生物CH₄到SAF的新产业生态.docx
- 四川省内江市第六中学2024-2025学年九年级上学期期中测试化学试卷(含答案).docx VIP
原创力文档


文档评论(0)