- 1、本文档共20页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据结构课程设计
一、需求分析
在进行一个项目的设计之前,先要进行必要的需求分析。
现某图书馆需要管理其各种人员和图书信息,希望实现办公的信息化,通过建立一个图书管理系统来管理图书。其完成的功能如下:
(1) 可以实现图书的登记、借阅的管理。
(2) 可以实现对图书的各种信息的查询,包括逐个浏览,以及对图书信息的增加、删除和编辑操作。另外,可以根据输入的信息来检索某个图书的信息。
(3) 可以实现对的管理 (4) 可以实现对的管理。
系统的功能模块图如图1所示。
本实例根据上面的设计规划出的实体有图书登记实体、图书借阅实体、查询输出实体、管理实体、管理实体。各个实体具体的描述E-R图 二、结构设计
根据上面的需求分析,设计好数据库系统,然后开发应用程序可以考虑的窗体的系统,每一个窗体实现不同的功能,可以设计下面的几个模块。
● 图书管理模块:用来实现图书的登记、借阅。
● 图书资料模块:用来实现图书的查询输出。
● 模块:用来实现人员的。
● 管理模块:用来实现对管理。
三 设计源程序
#includestdio.h
#includestring.h
#includeconio.h
#includestdlib.h
#includectype.h
#define STACK_INIT_SIZE 10
#define OK 1
#define TRUE 1
#define FALSE 0
#define ERROR 0
struct student /*定义学生类型,用于存放借出的书籍*/
{
int carnum;
char lendbook[10];
}student[1000];
struct book /*定义书的类型*/
{
int booknum;
char bookname[10];
char bookcreat[10];
int turefalse; /*用于借书和还书模块判断一本书是否借出的条件*/
}book[1000];
struct car /*借书卡的数据类型*/
{
int carnum;
char studentname[10];
int studentclass;
}car[100];
huanbook() /*还书函数*/
{
FILE *fp,*fp2; /*定义两个文件指针,fp2用于修改数据时设立临时文件用,防止数据遭破坏*/
int i,n;
int carnum;
char lendbook[10];
printf(请你输入你的卡号\n);
scanf(%d,carnum);
fp=fopen(car.txt,r); /*读取卡号记录*/
for(i=0;fread(car[i],sizeof(struct car),1,fp)!=0;i++) /*for循环判断卡号是否存在*/
{
if(car[i].carnum==carnum) /*卡号存在,进入下一循环*/
{
n=i;
fclose(fp);
printf(请输入你要还的书的名字\n);
scanf(%s,lendbook);
fp=fopen(record.txt,r);
for(i=0;fread(student[i],sizeof(struct student),1,fp)!=0;i++) /*判断是否借阅了输入的书*/
{
if(strcmp(student[i].lendbook,lendbook)==0) /*借阅了该书,进入下一循环,否则出错显示*/
{
fclose(fp);
fp=fopen(record.txt,r);
fp2=fopen(bookl.txt,w);
for(i=0;fread(student[i],sizeof(struct student),1,fp)!=0;i++)
{
if(strcmp(student[i].lendbook,lendbook)==0)
{
continue; /*删除还掉的书的借书记录*/
}
fwrite(student[i],sizeof(struct student),1,fp2); /*写入原来没还的书的记录*/
}
fclose(fp);
fclose(fp2);
fp=fopen(record.txt,w);
fp2=fopen(bookl.txt,r);
for(i=0;fread(student[i],sizeof(struct student),1,fp2)!=0;i++)
{
fwrite(student[i],sizeof(struct st
您可能关注的文档
- )输液常见不良反应及护理.pdf
- “时绿吧”餐饮创业计划书.ppt
- 《计算机控制技术》课程设计--数字PID控制器.doc
- 《毛泽东思想中国特色社会主义理论体系概论》考试重点.doc
- 【80后】主题party活动方案.ppt
- ±5V简易直流稳压电源的课程设计.doc
- 4psk调制解调系统学科基础课程设计.doc
- 4X200MW火力发电厂电气部分设计课程设计.doc
- 6层住宅楼砌体结构课程设计.doc
- 9月银川星语公司销售部工作总结暨10月工作计划.ppt
- 初中思想政治课堂中的案例教学研究教学研究课题报告.docx
- 初中科学实验室建设的重要性研究教学研究课题报告.docx
- 教师课堂管理能力的评价与提升路径教学研究开题报告教学研究课题报告.docx
- 科学小说在小学语文教学中的融入探讨教学研究课题报告.docx
- 智能科技在教育中的影响及应用研究教学研究课题报告.docx
- 学习习惯对小学升初中阶段的影響教学研究开题报告教学研究课题报告.docx
- 数学模型构建能力培养的教学研究教学研究课题报告.docx
- 高中历史教学中的案例教学法应用教学研究中期报告教学研究课题报告.docx
- 媒体素养教育在新时期的重要性研究教学研究论文教学研究课题报告.docx
- 2024年山东省济宁市企业人力资源管理师之一级人力资源管理师考试真题可打印.docx
文档评论(0)