c语言课程设计报告图书管理系统精品Word格式文档下载.docx

上传人:b****6 文档编号:21643257 上传时间:2023-01-31 格式:DOCX 页数:27 大小:318.15KB
下载 相关 举报
c语言课程设计报告图书管理系统精品Word格式文档下载.docx_第1页
第1页 / 共27页
c语言课程设计报告图书管理系统精品Word格式文档下载.docx_第2页
第2页 / 共27页
c语言课程设计报告图书管理系统精品Word格式文档下载.docx_第3页
第3页 / 共27页
c语言课程设计报告图书管理系统精品Word格式文档下载.docx_第4页
第4页 / 共27页
c语言课程设计报告图书管理系统精品Word格式文档下载.docx_第5页
第5页 / 共27页
点击查看更多>>
下载资源
资源描述

c语言课程设计报告图书管理系统精品Word格式文档下载.docx

《c语言课程设计报告图书管理系统精品Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《c语言课程设计报告图书管理系统精品Word格式文档下载.docx(27页珍藏版)》请在冰豆网上搜索。

c语言课程设计报告图书管理系统精品Word格式文档下载.docx

3.查看与作者有关的书的信息:

根据作者查找书。

4.增加书的信息:

输入书的名字、ISBN、作者、价格、出版社等。

5按照书名排序:

字母的形式排序

6删除记录:

删除一条书的信息

8.文件打开

(二)原始数据

图书信息:

图书信息包括:

书名.isbn.分类号.作者.出版日期.出版社.价格

文件结构:

书名

Isbn

分类号

作者

出版时间

出版单位

价格

C语言

123

Xx1

谭浩强

09-01-21

高等教育出版社

15

数学

234

Xx2

彭辉

16

思修

345

Xx3

邹邹

17

英教

456

Xx4

王浩

18

应用文

567

Xx5

瑞瑞

19

概率

678

Xx6

雪雪

20

管理学

789

Xx7

小邹

21

线代

890

Xx8

周敏

22

军事

901

Xx9

张向东刘毅

23

运筹

012

Xx0

崔崔

24

三程序总体设计

(一)数据结构:

structrecord

{

charname[20];

charisbn[20];

charauthor[40];

charprice[10];

charcompany[30];

}

(二)模块划分:

四功能模块函数设计和调试

(一)函数原型,功能和形参说明

函数原型:

Voidadduser()Voidlist()Voidsearch_name()Voidsearch_isbn()Voidadd()

Voidlistbyname()Voiddele()Voidsave()Voidread()

函数功能:

adduser()增加书籍信息

list()显示书籍信息

search_name()按书名查找

search_isbn()按ISBN号码查找

add()增加书籍信息

listbyname()按书名排序

dele()删除书籍信息

save()保存

read()文件打开

参数说明:

read()/*从文件中读入数据*/FILE*fp;

/*定义文件指针*/

(二)函数流程图

书名查找与ISBN查找方法相同

 

按书名删除与按ISBN删除方法相同

(三)运行结果

五程序清单

#include<

iostream.h>

/*引用库函数*/

#include<

stdio.h>

#include<

string.h>

conio.h>

stdlib.h>

#definenull0;

chartype[10];

chardate[10];

}student[30];

structLinkList

structrecordUS;

structLinkList*next;

}a;

structLinkList*head=null;

intnum=0;

FILE*fp;

intmenu_select();

/*菜单函数*/

intadduser();

intlist();

intsearch_name();

intsearch_isbn();

intadd();

intlistbyname();

intdele();

intsave();

intread();

intexit();

voidmain()

system("

cls"

);

/*运行前清屏*/

for(;

;

{

switch(menu_select())

case0:

adduser();

break;

case1:

list();

case2:

search_name();

case3:

search_isbn();

case4:

add();

case5:

listbyname();

case6:

dele();

case7:

save();

case8:

read();

case9:

exit(0);

}

menu_select()

ints;

inta;

cout<

<

"

*_*按任意键进入菜单!

*_*"

endl;

getch();

\t\t********************MENU*********************\n"

\t\t0.图书信息录入"

\t\t1.图书信息浏览"

\t\t2.按书名查询图书信息"

\t\t3.按ISBN查询图书信息"

\t\t4.增加图书信息"

\t\t5.按书名排序"

\t\t6.删除记录"

\t\t7.数据保存"

\t\t8.文件打开"

\t\t9.退出"

\t\t***********************************************"

do{

\n输入你的选择(0~9):

cin>

>

s;

a=s;

while(a<

0||a>

9);

returna;

adduser()//输入函数

\n\t\t****************请输入图书信息****************"

\n\t\t输入书名:

/*交互输入*/

student[num].name;

\n\t\t输入ISBN:

student[num].isbn;

\n\t\t输入作者:

student[num].author;

\n\t\t输入分类号:

student[num].type;

\n\t\t输入出版日期:

student[num].date;

\n\t\t输入价格:

student[num].price;

\n\t\t输入出版单位:

student[num].company;

num++;

\n\t\t是否继续添加?

(Y/N):

charz;

z;

if((z=='

y'

)||(z=='

Y'

))

return(0);

intlist()//显示函数

inti;

if(num!

=0)

\n\t\t***************以下为该书所有信息************"

for(i=0;

i<

num;

i++)/*循环输入*/

\n\t\t书名:

student[i].name;

\n\t\tISBN:

"

student[i].isbn;

\n\t\t作者:

student[i].author;

\n\t\t分类号:

student[i].type;

\n\t\t出版日期:

student[i].date;

\n\t\t价格:

student[i].price;

\n\t\t出版单位:

student[i].company;

\t\t"

if(i+1<

num)

\n\t\t__________________________"

pause"

\n\t\t************************************************"

else

\n\t\t书库中无任何纪录"

\n\t\t按任意键返回主菜单:

search_name()//按书名查找

intmark=0;

inta=0;

\n\t\t*****************按书名查找*******************"

\n\t\t请输入书名:

name;

for(i=a;

i++)

if(strcmp(student[i].name,name)==0)

\n\t\t*************以下是您查找的信息***************"

mark++;

if((i+1)<

\n\t\t是否继续查找相同名字的信息:

(y/n)"

chary;

cin>

y;

if((y=='

)||(y=='

a=i;

continue;

\n\t\t按任意键返回主菜单"

if(mark==0)

\n\t\t没有相同书名纪录"

search_isbn()//按ISBN查找

\n\t\t******************按ISBN查找******************"

charisbn[10];

\n\t\t请输入ISBN:

isbn;

if(strcmp(student[i].isbn,isbn)==0)

\n\t\t**************以下是您查找的书籍信息**********"

\n\t\t没有更改信息"

add()//增加书籍信息

if((fp=fopen("

student.bin"

"

wb"

))==NULL)

\n\t\t文件打开失败"

for(i=0;

if(fwrite(&

student[i],sizeof(structrecord),1,fp)!

=1)

\n\t\t写入文件错误!

\n"

\n\t\t****************请输入书籍信息****************"

\n\t\t输入ISBN号码:

if(getch()=='

fclose(fp);

\n\t\t图书文件已保存"

\n\t\t按任意键退出程序\n\t\t"

voiddeletebyisbn()

inti,j;

intdeletemark=0;

\n\t\t请输入要删除ISBN号码:

if(num==0)

\n\t\t对不起,文件中无任何纪录"

return;

if(strcmp(student[i].isbn,isbn)==NULL)

\n\t\t以下是您要删除的书籍纪录:

\n\t\t是否删除?

charu;

u;

if((u=='

)||(u=='

for(j=i;

j<

num-1;

j++)

student[j]=student[j+1];

num--;

deletemark++;

\n\t\t删除成功"

\n\t\t是否继续删除?

charv;

v;

if((v=='

)||(v=='

deletebyisbn();

if(deletemark==0)

\n\t\t没有该书籍的纪录"

charm;

m;

if((m=='

)||(m=='

voiddeletebyname()

intfindmark=0;

intj;

\n\t\t请输入要删除书籍名称:

if(strcmp(student[i].name,name)==NULL)

findmark++;

\n\t\t________________________________"

charn;

n;

if((n=='

)||(n=='

\n\t\t是否继续删除相同书籍信息?

charl;

l;

if((l=='

)||(l=='

charo;

o;

if((o=='

)||(o=='

deletebyname();

\n\t\t是否继续删除相同书名信息?

charp;

p;

if((p=='

)||(p=='

if((deletemark==0)&

&

(findmark==0))

charq;

q;

if((q=='

)||(q=='

elseif(findmark!

\n\t\t没

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

当前位置:首页 > 高等教育 > 医学

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

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