ImageVerifierCode 换一换
格式:DOCX , 页数:24 ,大小:91.66KB ,
资源ID:4103502      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/4103502.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(课程设计.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

课程设计.docx

1、课程设计存档资料 成绩: 华东交通大学理工学院课 程 设 计 报 告 书所属课程名称 C语言程序设计课程设计 题 目 图书馆信息管理系统 分 院 电 信 分 院 专业班级 电气3班 学号 20130210470335 学生姓名 郑毓豪 指导教师 葛 20 年 月 日 序号项 目等级优秀良好中等及格不及格1课程设计态度评价2出勤情况评价3任务难度评价4工作量饱满评价5任务难度评价6设计中创新性评价7论文书写规范化评价8综合应用能力评价综合评定等级课程设计(论文)评阅意见评阅人 职称 20 年 月 日 目录第1章 课程设计内容及要求. .3第2章 设计的过程及步骤.6第3章 设计成果展示.10第4

2、章 程序代码.13第5章 课程设计心得体会.47第6章 参考文献.48第一章 课程设计内容及要求(对问题背景及主要实现的功能进行简要说明。)随着图书馆图书的不断增加,图书管理的难度也随之加大,一个好的图书馆图书信息管理系统,能够使图书管理工作简便,有条不紊。通过C语言学习,我们已经能够完成基本的C语言编程,此次实训,是将学习和实践结合,充分感受C语言解决实践问题的魅力。此次编写的图书馆信息管理系统,能够实现基本的图书管理功能。它包括图书库的创建,打印图书信息表,录入新图书,修改图书信息,删除图书信息,借书,还书。图书库包含图书的各方面信息,编号,类型,作者,出版社,总数,剩余量等等,并且打印图

3、书信息表。录入,修改,删除这些功能都是对图书库的操作。借书,还书这两项最重要的功能也都能很好的实现。把此系统应用于图书馆的图书管理,能使图书馆的各项工作便捷,可靠的完成。系统要求 (主要是对系统技术目标和要求)欢迎界面、主菜单、系统管理功能、图书信息管理、借阅功能模块、其中系统管理功能包括系统管理员添加、删除、修改信息以及用管理员身份登录系统等功能。图书信息管理包括新增图书、修改图书、删除图书、等功能。借阅功能模块包括借书功能、还书功能、查询已借图书、查询过期未还图书,其中借书还书功能可以按图书编号信息进行操作。第二章 设计的过程及步骤1、需求分析(描述系统需求,既详细分析系统需求和功能)根据

4、题目要求,应当把图书信息用结构体形式输入,再定义一个全局变量和文件指针进行整个程序的运行,然后把图书信息送到文件中,所以应该提供一个结构体和文件的输入输出等操作;在程序中需实现图书信息录入,浏览,查询,删除和修改等功能的操作,所以需要建立相应的模块来实现;另外还需提供键盘式选择菜单实现功能,在运行时达到所要目的。2、设计文件结构(设计文件结构,并扼要说明设计缘由)此系统根据所要实现的功能,使用的函数等综合考虑,设计了两个,图书信息文件(tushu.red),借还书文件(borrow.red),录入新图书,修改,删除图书等一些操作时在图书信息文件上运行,借还书功能则在借还书文件上运行,同时也要在

5、图书信息文件上运行。两个文件相互结合,使各个功能很好的实现了,运用C语言的文件功能,也是整个程序的主线。3、设计系统功能图(根据需求分析结果和文件结构,应用结构化分析与设计技术设计功能结构图,如下图所示) 4、函数设计( 详细分析每一个子模块的子功能,定义主要的子函数原型,并对每一个函数的功能加以说明)此系统主要有7个功能,也就有主要的7个函数,他们分别是void shan() /删除图书信息void xiu() /修改图书信息void putin() /录入新图书void print() /打印图书信息表void returned() /还书void books() /创建图书文件void

6、borrowed() /借书其中每一个函数都用到了两个结构体,它们分别是:struct tushu char bianhao110; char bianhao210; char leixing20; char shuming50; char chubanshe50; char writer20; long zongshu; long shengyu; shu;struct books char bianhao110; char bianhao210; long nian; long borrowmonth; long borrowday; long returnedmonth; long re

7、turnedday; long limittime; char student10; book;第三章 课程设计成果(对自己的最后的实验成果进行概括)经过长达9天的编写,修改,运行,最后完成时,预想的功能都能比较好的实现。下面是各个功能运行的界面:进入界面 :功能选择界面 :录入新图书界面 :还有各个功能各种界面,这里就不一一列出了。第四章 程序代码#include#include#includestruct tushu char bianhao110; char bianhao210; char leixing20; char shuming50; char chubanshe50; cha

8、r writer20; long zongshu; long shengyu; shu;struct books char bianhao110; char bianhao210; long nian; long borrowmonth; long borrowday; long returnedmonth; long returnedday; long limittime; char student10; book;void shan() /删除图书信息 FILE *fp; int i=0,j,n,m,l; char booknum20; struct tushu tu1000; if(fp

9、=fopen(tushu.txt,r)=NULL) printf(can not open the tushu.txt.n); exit(0); while(fread(&tui,sizeof(shu),1,fp) i+; m=i; printf(要删除几本书:); scanf(%d,&n); getchar(); for(i=0;in;i+) printf(输入图书编号2:); gets(booknum); for(j=0;jm;j+) if(strcmp(booknum,tuj.bianhao2)=0) break; if(jm) for(l=0;lm;l+) if(strcmp(tuj.

10、bianhao1,tul.bianhao1)=0) tul.zongshu-; tul.shengyu-; for(j;jm;j+) tuj=tuj+1; else printf(输入有误 重新输入n); i-; if(fp=fopen(tushu.txt,w)=NULL) printf(can not open the tushu.txt.n); exit(0); for(i=0;im-n;i+) fwrite(&tui,sizeof(shu),1,fp); printf(删除成功!);void xiu() /修改图书信息 FILE *fp; int i=0,m,n; char booknu

11、m20,numchar20; struct tushu tu1000; if(fp=fopen(tushu.txt,r)=NULL) printf(can not open the borrow.txt.n); exit(0); while(fread(&tui,sizeof(shu),1,fp) i+; m=i; if(fp=fopen(tushu.txt,w)=NULL) printf(can not open the borrow.txt.n); exit(0); printf(要修改几本书:); scanf(%d,&n); getchar(); for(i=0;in;i+) print

12、f(输入要修改的图书编号2:); gets(booknum); for(i=0;im;i+) if(strcmp(booknum,tui.bianhao2)=0) break; if(im) printf(输入修改后的nn); printf(输入编号1:); gets(tui.bianhao1); printf(n); printf(编号2:); gets(tui.bianhao2); printf(n); printf(类型:); gets(tui.leixing); printf(n); printf(书名:); gets(tui.shuming); printf(n); printf(出

13、版社:); gets(tui.chubanshe); printf(n); printf(作者:); gets(tui.writer); printf(n); printf(总数:); gets(numchar); printf(n); tui.zongshu=atol(numchar); printf(剩余:); gets(numchar); printf(n); tui.shengyu=atol(numchar); else printf(输入有误n); for(i=0;im;i+) fwrite(&tui,sizeof(shu),1,fp); fclose(fp);void putin(

14、) /录入新图书 char numchar20; FILE *fp; int i=0,m,n; struct tushu tu1000; if(fp=fopen(tushu.txt,r)=NULL) printf(can not open the borrow.txt.n); exit(0); while(fread(&tui,sizeof(shu),1,fp) i+; m=i; if(fp=fopen(tushu.txt,w)=NULL) printf(can not open the borrow.txt.n); exit(0); for(i=0;im;i+) fwrite(&tui,si

15、zeof(shu),1,fp); printf(要录入几本书:); scanf(%d,&n); getchar(); for(i=0;in;i+) printf(n); printf(输入编号1:); gets(shu.bianhao1); printf(n); printf(编号2:); gets(shu.bianhao2); printf(n); printf(类型:); gets(shu.leixing); printf(n); printf(书名:); gets(shu.shuming); printf(n); printf(出版社:); gets(shu.chubanshe); pr

16、intf(n); printf(作者:); gets(shu.writer); printf(n); printf(总数:); gets(numchar); printf(n); shu.zongshu=atol(numchar); printf(剩余:); gets(numchar); printf(n); shu.shengyu=atol(numchar); fwrite(&shu,sizeof(shu),1,fp); fclose(fp);void print() /打印图书信息表 FILE *fp; if(fp=fopen(tushu.txt,r)=NULL) printf(can n

17、ot open the tushu.txt.n); exit(0); puts(_); puts(-); puts(| 编号1 | 编号2 | 类型 | 书名 | 作者 | 出版社 | 总数 | 剩余 |); fseek(fp,0L,SEEK_SET); while(fread(&shu,sizeof(shu),1,fp)=1) printf( %-9s%-10s%-10s%-10s%-10s%-10s%-10ld%-10ldn,shu.bianhao1,shu.bianhao2,shu.leixing,shu.shuming,shu.writer,shu.chubanshe,shu.zong

18、shu,shu.shengyu);void returned() /还书 FILE *fp; int i=0,m,flag=0,j; char booknum20; struct books book11000; if(fp=fopen(borrow.txt,r)=NULL) printf(can not open the borrow.txt.n); exit(0); while(fread(&book1i,sizeof(book),1,fp) i+; m=i; if(fp=fopen(borrow.txt,w)=NULL) printf(can not open the borrow.tx

19、t.n); exit(0); printf(输入要还的图书编号2:); gets(booknum); for(j=0;jm;j+) if(strcmp(booknum,book1j.bianhao2)=0) flag=1; break; if(flag) flag=0; printf(输入还书月份:); scanf(%ld,&book1i.returnedmonth); printf(输入还书日期:); scanf(%ld,&book1i.returnedday); getchar(); for(j=0;jm;j+) fwrite(&book1i,sizeof(book),1,fp); els

20、e printf(输入有误n); fclose(fp);void books() /创建图书文件 FILE *fp; char numchar50,ch=y; if(fp=fopen(tushu.txt,wt)=NULL) printf(can not open the tushu.txt.n); exit(0); while(ch=y|ch=Y) printf(n); printf(输入编号1:); gets(shu.bianhao1); printf(n); printf(编号2:); gets(shu.bianhao2); printf(n); printf(类型:); gets(shu

21、.leixing); printf(n); printf(书名:); gets(shu.shuming); printf(n); printf(出版社:); gets(shu.chubanshe); printf(n); printf(作者:); gets(shu.writer); printf(n); printf(总数:); gets(numchar); printf(n); shu.zongshu=atol(numchar); printf(剩余:); gets(numchar); printf(n); shu.shengyu=atol(numchar); fwrite(&shu,siz

22、eof(shu),1,fp); do printf(have another book record(y/n)?:); gets(numchar); ch=numchar0; while(!(ch=y|ch=n|ch=Y|ch=N); fclose(fp);void borrowed() /借书 struct tushu tu1000; struct books book11000; FILE *fp,*fq; char numchar50; int i=0,j,m1,m2,n,flag=0,x; printf(借几本书:); scanf(%d,&x); getchar(); if(fq=fo

23、pen(tushu.txt,r)=NULL) printf(can not open the tushu.txt.n); exit(0); while(fread(&tui,sizeof(shu),1,fq) i+; m1=i; if(fp=fopen(borrow.txt,r)=NULL) printf(can not open the borrow.txt.n); exit(0); while(fread(&book1i,sizeof(book),1,fp) i+; m2=i; for(i=0;ix;i+) printf(n); printf(输入编号2:); gets(numchar);

24、 for(j=0;jm1;j+) if(strcmp(numchar,tuj.bianhao2)=0) n=j; flag=1; break; if(flag) printf(n); printf(输入正确nn); flag=0; strcpy(book.bianhao2,numchar); printf(输入编号1); gets(book.bianhao1); printf(n); printf(借书年份:); gets(numchar); printf(n); book.nian=atol(numchar); printf(借书月份:); gets(numchar); printf(n);

25、 book.borrowmonth=atol(numchar); printf(借书日期:); gets(numchar); printf(n); book.borrowday=atol(numchar); printf(还书月份:); gets(numchar); printf(n); book.returnedmonth=atol(numchar); printf(还书日期:); gets(numchar); printf(n); book.returnedday=atol(numchar); printf(期限:); gets(numchar); printf(n); book.limittime=atol(numchar); printf(学生学号:); gets(book.st

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1