大一C语言课程设计图书信息管理系统.docx

上传人:牧羊曲112 文档编号:3391910 上传时间:2023-03-12 格式:DOCX 页数:11 大小:39.70KB
返回 下载 相关 举报
大一C语言课程设计图书信息管理系统.docx_第1页
第1页 / 共11页
大一C语言课程设计图书信息管理系统.docx_第2页
第2页 / 共11页
大一C语言课程设计图书信息管理系统.docx_第3页
第3页 / 共11页
大一C语言课程设计图书信息管理系统.docx_第4页
第4页 / 共11页
大一C语言课程设计图书信息管理系统.docx_第5页
第5页 / 共11页
亲,该文档总共11页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《大一C语言课程设计图书信息管理系统.docx》由会员分享,可在线阅读,更多相关《大一C语言课程设计图书信息管理系统.docx(11页珍藏版)》请在三一办公上搜索。

1、大一C语言课程设计图书信息管理系统 高级语言程序设计 课程设计 评语: 学 院 班 级 姓 名 学 号 成 绩 指导老师 年 月 日 一、目的 1 进一步掌握和利用C语言进行程设计的能力; 2、 进一步理解和运用结构化程设计的思想和方法; 3、 初步掌握开发一个小型实用系统的基本方法; 4、 学会调试一个较长程序的基本方法; 5、 学会利用流程图或N-S图表示算法; 6、 掌握书写程设计开发文档的能力; 二、内容与设计思想。 题目:图书信息包括:登录号、书名、作者名、分类号、出版单位、出版时间、价格等。试设计一图书信息管理系统,使之能提供以下功能: 系统以菜单方式工作v 图书信息录入功能(图书

2、信息用文件保存)输入v 图书信息浏览功能输出v 查询和排序功能:(至少一种查询方式)算法v v 按书名查询 v 按作者名查询 图书信息的删除与修改(可选项)v 系统功能与分析 截图略 流程图: 显示图书记录 返回主菜单 退出 浏览模块流程图 按书名查找模块 用户作出选择,输入一整型数值 1,2,还是3 1,2,还是3 返回上一层 返回主菜单 按书名查找模块流程图 退出 按作者名称查找模块 用户作出选择,输入一整型数值 1,2,还是3 返回上一层 返回主菜单 按作者查找模块流程图 退出 删除或修改模块 用户作出选择,输入一整型数值 调用删除或修改函数,调用读取函数 用户输入修改或删除信息 用户作

3、出选择,输入1或2或3 1,2或3 1.确认 2. 返回 3.返回上一层 插入模块流程图 数据结构typedef struct book int sort; char book_name15; char author_name15; int vert_number; char publish_unit15; char publish_time10; int price; B.模块设计 根据功能需要: 源文件 函数名 save input get output book_name author_name modify delet 功能 保存 输入 获取 输出 通过书名查找 通过作者查找 修改 删

4、除 总体设计思想: 数据输入 图书信息管理系数据浏览 数据查找 删除和修改 退出 调试过程: 测试数据及结果,出现了哪些问题 截图略 程序有待改进的地方及本次实习的收获和建议 源程序清单 #include #include #include #define LEN sizeof(struct book) typedef struct book int sort; char book_name15; char author_name15; int vert_number; char publish_unit15; char publish_time10; int price; B; B *P,*

5、p1,boo; int num=0,f=0; int save; void input; int get; void output; void book_name; void author_name; void modify; void delet; int main int re=1,t,j=0; int n,choice; while(re=1) t=1; system(cls); printf( *n); printf( 主菜单 nn); printf( 1.录入信息n); printf( 2.查看信息n); printf( 3.查询信息n); printf( 4.删除与修改信息n);

6、printf( 5.退出n); printf( *); printf(n); if(j=1) printf(nt选择错误!); printf(nt请选择1-5: _bb); scanf(%d,&choice); switch(choice) case 1: printf(nt1: 录入信息n); input; printf(n t1.返回主菜单;nt 2.退出 ntt请选择: _bb); scanf(%d,&re); break; case 2: printf(nt2.查看信息n); output; printf(nt 1.返回主菜单;nt 2.退出ntt请选择: _bb); scanf(%d

7、,&re); break; case 3: while(t=1) printf(nt3.查询信息n); printf(nt 请选择查询方式:nt 1.按书名nt 2.按作者名nt 3.其余任意数字键返回主菜单 _bb); scanf(%d,&n); if(n=1) book_name; else if(n=2) author_name; else re=1; goto lebel; printf(nt 1.返回上一层;nt 2.返回主菜单;nt 3.退出 nt 请选择: _bb); scanf(%d,&t); if(t=1) system(cls); if(t=2) re=1; if(t=3)

8、 re=0; lebel: break; case 4: while(t=1|f=1) printf(nt4.删除与修改信息n); printf(nt 请选择:nt 1.删除信息;nt 2.修改信息n t 3.其余任意数字键返回主菜单 _bb); scanf(%d,&n); if(n=1) delet; else if(n=2) modify; else re=1; goto lebe; printf(nt 1.返回上一层;nt 2.返回主菜单;nt 3.退出 ntt 请选择: _bb); scanf(%d,&t); if(t=1) system(cls); if(t=2) re=1; if(

9、t=3) re=0; lebe: break; case 5: re=0; break; default: re=1; j=1; return 0; int save FILE *fp; int i,n=0,n1=0; if(fp=fopen(book.txt,a+)=NULL) return 0; fprintf(fp,%dn,num); for(i=0;i0) P=(B *)malloc(LEN * num); for(i=0;i0) P=(B *)malloc(LEN * num); for(i=0;inum;i+) Pi.sort=i+1; printf(ntNO. %d,Pi.sor

10、t); printf(n); printf(t请按序输入:书名 作者名 分类号 出版单位 出版时间 价格ntt ); scanf(%s%s%d%s%s%d,Pi.book_name,Pi.author_name,&Pi.vert_number,Pi.publish_unit, Pi.publish_time,&Pi.price); printf(n); result=save; if(result=0) printf( t录入信息失败!n); num = 0; if(result=1) printf( t成功录入信息!n); else num=0; printf( t输入错误!); void

11、output int i; get; if(get=1) printf(ntt成功获取信息!n); for(i=0;inum;i+) printf(nttNO.t%dn,Pi.sort); printf(tt 书名 作者名 序列号 出版单位 出版时间 价格n); printf(tt %s %s %d %s %s %d,Pi.book_name,Pi.author_name,Pi.vert_number,Pi.publish_unit, Pi.publish_time,Pi.price); printf(n); else printf( t文件打开错误!); void book_name int

12、 i; int tag=0; char ch15; printf(t 请输入书名: _bb); scanf(%s,ch); if(get=0) printf( t无法查询!); return; if(get=1) for(i=0;inum;i+) if(strcmp(Pi.book_name,ch)=0) printf(ntt 排列号 书名 作者名 序列号 出版单位 出版时间 价格n); printf(tt %d %s %s %d %s %s %dn,Pi.sort,Pi.book_name, Pi.author_name,Pi.vert_number,Pi.publish_unit,Pi.p

13、ublish_time,Pi.price); tag =1; if (tag = 0) printf(n t没有相关信息!n); void author_name int i; int tag=0; char ch15; printf(t 请输入作者名: _bb); scanf(%s,ch); if(get=0) printf( t无法查询!); return; if(get=1) for(i=0;i=1&n=num) for(i=0;i=1&n=num) for(i=0;inum;i+) if(Pi.sort=n) printf(nt 您即将删除以下信息:n); printf(tt 排列号

14、书名 作者名 序列号 出版单位 出版时间 价格n); printf(tt %d %s %s %d %s %s %d,Pi.sort,Pi.book_name, Pi.author_name,Pi.vert_number,Pi.publish_unit, Pi.publish_time,Pi.price); _bb); else printf( printf(nnt 确认请按1;返回请按2;返回上一层请按3 scanf(%d,&x); if(x=1) for(j=i;jnum-1;j+) strcpy(Pj.book_name,Pj+1.book_name); strcpy(Pj.author_

15、name,Pj+1.author_name); Pj.vert_number=Pj+1.vert_number; strcpy(Pj.publish_unit,Pj+1.publish_unit); strcpy(Pj.publish_time,Pj+1.publish_time); Pj.price=Pj+1.price; num=num-1; y=0; z=1; else if(x=2) y=1; else y=0; f=1; t输入错误,请重新输入:); y=1; while(z=1) result=save; if(result=0) printf( nt删除信息失败!n); z=0; if(result=1) printf( z=0; return; nt成功删除信息!n);

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号