教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 文库大全 > 教学研究 >

图书管理系统实验报告

来源:网络收集 时间:2026-09-08
导读: C语言图书管理系统,,链表,,删除,,添加,,浏览,,排序,,等功能 课程名称:程序设计实践 专业班级:信息类1102 学生姓名:张文浩 学号: 201116040203 任课教师:徐振强 学期:2011-2012 2 一.需求分析: 开一个图书管理系统,包括图书的创建,查询,插入,修改

C语言图书管理系统,,链表,,删除,,添加,,浏览,,排序,,等功能

课程名称:程序设计实践

专业班级:信息类1102

学生姓名:张文浩

学号: 201116040203

任课教师:徐振强

学期:2011-2012 2

一.需求分析:

开一个图书管理系统,包括图书的创建,查询,插入,修改,排序,删除,添加等功能。

1.实现对书库书籍的信息管理。每本书包括书号,书名,作者,单价,库存书量,出版时间,单价,出版单位等。

2.实现创建书库操作。把图书信息存入文件中。

3.实现添加图书操作。将添加的图书一并存入文件中,存入已有书库,可重复添加。

4.实现修改图书操作。对已有的图书信息进行修改,将修改的信息存入文件中,可重复修改。

5.实现图书的多种方法查找。把图书的全部信息显示给用户。

6.实现图书的书号排序与遍历。

C语言图书管理系统,,链表,,删除,,添加,,浏览,,排序,,等功能

7.实现图书的删除操作。从文件中移除该书的记录。二.概要设计:

主要分为主函数,分函数,用户自定义类型的图书信息函数通过主函数调用各个分函数进行一系列操作

模块划分:

1,图书用户之定义类型

2,各个操作的分函数

3,主函数

Main(void){

creat();

modify();

paixu();

insert();

delname();

delbianhao();

searchname();

searchauthor();

searchpress();

searchbianhao();

account();

}

三.函数及其流程图

退出功能通过exit()实现。

选择功能通过switch()实现。

scanf("%c",&w);

getchar();

switch(w)

C语言图书管理系统,,链表,,删除,,添加,,浏览,,排序,,等功能

{

case'c':

creat();

break; case'm':

modify();

break;

case'x':

paixu();

break;

case'k':

bianli();

break;

创建图书流程图void creat( ) 欢迎面

显示和选择主菜单

创建添加修改查找删除排序遍历统计退出

保存

文件

结束

C语言图书管理系统,,链表,,删除,,添加,,浏览,,排序,,等功能

while(p1->booknum!=0){

if(head==NULL)

head=p1;

else

tail->next=p1;

tail=p1;

p1=(struct bookinf*)malloc(sizeof(struct bookinf));

printf("你好!请输入要添加的图书信息\n");

printf("书号:");

scanf("%d",&p1->booknum);

if(p1->booknum==0)

break;

printf("书名:");

scanf("%s",p1->bookname);

printf("作者:");

scanf("%s",p1->author);

printf("出版社:");

scanf("%s",p1->press);

printf("出版日期:");

scanf("%d",&p1->presstime);

printf("单价:");

C语言图书管理系统,,链表,,删除,,添加,,浏览,,排序,,等功能

scanf("%d",&p1->price);

printf("页数:");

scanf("%d",&p1->pagenumber);

printf("库存地点:");

scanf("%s",p1->place);

printf("现存册数:");

scanf("%d",&p1->nownumber);

getchar();

}

tail->next=NULL;

for(p1=head;p1;p1=p1->next)

printf("%d,%s,%s,%s,%d,%d,%d,%s,%d\n",p1->booknum,p1->bookname,p1->author,p1->p ress,p1->presstime,p1->price,

p1->pagenumber,p1->place,p1->nownumber);

save(head);

添加图书流程图void insert( )

C语言图书管理系统,,链表,,删除,,添加,,浏览,,排序,,等功能

排序流程图void paixu( )

for(p1 = head; p1;p1 = p1->next)

for(p2 = p1->next; p2 != NULL; p2 = p2->next)

{

if(p1->booknum > p2->booknum)

{

booknum = p1->booknum ;

p1->booknum = p2->booknum ;

p2->booknum = booknum ;

price=p1->price;

p1->price=p2->price;

C语言图书管理系统,,链表,,删除,,添加,,浏览,,排序,,等功能

p2->price=price;

按书号查找图书 (其他查找类似)

开始

链表为空 输出没有没有图书信息 排序函数 按书号输出图书信息 结束

C语言图书管理系统,,链表,,删除,,添加,,浏览,,排序,,等功能

if(head==NULL){

printf("没有图书记录,按任意键返回!\n");

exit(0);

}

printf("请输入要查询的编号\n");

scanf("%d",&a);

getchar();

p1=head;

while(p1!=NULL&&a!=p1->booknum){

p1=p1->next;

}

if(p1!=NULL){

printf("该书已找到,信息如下:\n");

printf("%d,%s,%s,%s,%d,%d,%d,%s,%d\n",p1->booknum,p1->bookname,p1->author,p1->p ress,p1->presstime,p1->price,

p1->pagenumber,p1->place,p1->nownumber);

}

else

printf("没有找到图书\n");

printf("是否继续查找?(y/n)\n");

C语言图书管理系统,,链表,,删除,,添加,,浏览,,排序,,等功能

x=getchar();

getchar();

}while(x=='y');

save(head);

按书号删除操作(按书名类似)

if(head==NULL){

printf("没有图书记录\n");

exit(0);

}

printf("请输入要删除书号\n");

scanf("%d",&num);

getchar();

C语言图书管理系统,,链表,,删除,,添加,,浏览,,排序,,等功能

p1=head;

p2=head;

while(p1!=NULL&&num!=p1->booknum){

p2=p1;

p1=p1->next;

}

if(p1!=NULL){

if(p1==head){

head=p1->next;

if(head!=NULL)

p1=head->next;

}else

p2->next=p1->next;

printf("该书已删除\n");

}else

printf("没有该书记录!\n");

printf("是否继续删除操作?(y/n)\n");

x=getchar();

getchar();

}while(x=='y');

save(head);

修改图书信息

do{

printf("请输入要修改的书号\n");

scanf("%d",&num);

p1=head;

while(p1!=NULL&&p1->booknum!=num){

p1=p1->next;

}

if(p1!=NULL){

printf(&quo …… 此处隐藏:3776字,全部文档内容请下载后查看。喜欢就下载吧 ……

图书管理系统实验报告.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wenku/1570473.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)