图书管理系统(含源代码)c语言_数据结构课程设计报告

时间:2025-07-07

数据结构大作业

图书管理系统

工程管理 121279044 伍杨

目录

一、

二、

三、 题目要求 ................................................................... 2 总体设计 ................................................................... 2 编码实现 ................................................................... 3

1) 定义图书结构体 ....................................................... 3

2) 登记操作 ............................................................... 4

3) 查看操作 ............................................................... 8

4) 删除操作 ............................................................. 11

5) Main函数 ........................................................... 20

四、

五、

六、

调试与测试 .............................................................. 26 五心得体会 .............................................................. 28 用户手册 ................................................................. 28

一、 题目要求

1) 目的要求

本课程设计任务的目的是要求学生按照分析、设计、编码、调试和测试的软件开发过程独立完成管理系统设计,以及C语言算法的掌握,并能最终实现本系统的功能要求,通过这个程序可以学习到以前调试短程序没有的的经验。

2) 题目要求

实现图书管理信息系统的设计。要求实现图书添加、显示全部图书、查询、借阅和归还。主要考查利用文件的操作!

二、 总体设计

三、 编码实现

1) 定义图书结构体

struct book{

char bookname[20]; //书名

int NO; //书编号

char type[20]; //类型

int date; //到书日期

};

struct person{

char name[10]; //姓名

char classes[20]; //班级

int number; //学号

char telephone[12]; //联系电话

int NO; //书编号

char bookname[20]; //书名

int borrowdate; //借书日期

int returndate; //还书日期

2) 登记操作

void new_book()

{

FILE *fp; struct book b; //登记新书

int i,j;

printf("请朱老师输入此次收到的书本总数:"); if((fp=fopen("shuku.txt","a"))==NULL){ printf("File open error!\n"); exit(0); }

scanf("%d",&i);

for(j=0;j<i;j++){ printf("请朱老师输入书名:"); scanf("%s",b.bookname); fprintf(fp,"%s",b.bookname); printf("请朱老师输入书编号:"); scanf("%d",&b.NO); fprintf(fp," %d",b.NO); printf("请朱老师输入类型:"); scanf("%s",b.type);

}

} printf("请朱老师输入到书日期:"); scanf("%d",&b.date); fprintf(fp," %d",b.date); if(fclose(fp)){ } printf("Can not close the file!\n"); exit(0);

void new_person()

{

FILE *fp; struct person p; char choice; //登记借书 if((fp=fopen("jieshujilu.txt","a"))==NULL){ printf("File open error!\n"); exit(0); }

printf("请朱老师输入借书人姓名:"); scanf("%s",http://); fprintf(fp,"%s",http://); printf("请朱老师输入借书人班级:"); scanf("%s",p.classes); fprintf(fp," %s",p.classes); printf("请朱老师输入借书人学号:"); scanf("%d",&p.number); fprintf(fp," %d",p.number); printf("请朱老师输入借书人联系电话:"); scanf("%s",p.telephone); fprintf(fp," %s",p.telephone); printf("请朱老师输入书编号:"); scanf("%d",&p.NO); fprintf(fp," %d",p.NO); printf("请朱老师输入书名:"); scanf("%s",p.bookname); fprintf(fp," %s",p.bookname); printf("请朱老师输入借书日期:"); scanf("%d",&p.borrowdate); fprintf(fp," %d",p.borrowdate);

scanf("%d",&p.returndate); fprintf(fp," %d",p.returndate); printf("\n\t您想继续吗?(y/n)"); scanf(" %c",&choice); if(choice=='Y'||choice=='y'){ } system("cls"); new_person(); if(fclose(fp)){ } printf("Can not close the file!\n"); exit(0);

}实现程序对文件的读取

void Read()

{

int i=0; int j=0; ifstream in("Libra.txt",ios::out); in>>i;

nt;

} if(i>0&&i<=Max) { in>>data[j].id>>data[j].name>>data[j].type>>data[j].status>>data[j].coufor(j=1;j<=i;j++) { } } in.close();

3) 查看操作

v void see_book()

{

FILE *fp; long NO; char bookname[20]; char type[20]; long date; //查看书库记录

}

} printf("File open error!\n"); exit(0); while(!feof(fp)) { fscanf(fp,"%s%ld%s%ld",bookname,&NO,type,&date); printf("%-10s %-10ld %-10s %ld\n",bookname,NO,type,date); }; if(fclose(fp)){ } printf("Can not close the file!\n"); exit(0);

void see_person()

{ //查看所有借书记录

char name[10];

char classes[20];

int number;

char telephone[20];

int NO;

char bookname[20];

int borrowdate;

int returndate;

fscanf(fp,"%s %s %ld %s %ld %s %ld %ld",name,classes,&number,telephonwhile(!feof(fp)) { if((fp=fopen("jieshujilu.txt","r"))==NULL){ } printf("File open error!\n"); exit(0); e,&NO, …… 此处隐藏:4280字,全部文档内容请下载后查看。喜欢就下载吧 ……

图书管理系统(含源代码)c语言_数据结构课程设计报告.doc 将本文的Word文档下载到电脑

    精彩图片

    热门精选

    大家正在看

    × 游客快捷下载通道(下载后可以自由复制和排版)

    限时特价:7 元/份 原价:20元

    支付方式:

    开通VIP包月会员 特价:29元/月

    注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
    微信:fanwen365 QQ:370150219