1、图书管理系统设计C语言图书管理系统设计图书管理信息包括:图书名称、图书编号、单价、作者、存在状态、借书人姓名、性别、学号等功能描述:1 新进熟土基本信息地输入2 图书基本信息地查询3 对撤消图书信息地删除4 为借书人办理注册5 办理借书手续6 办理换书手续要求:以文件方式存储数据,系统以菜单方式工作.这是本人大一第二学期初C语言课程设计地作品,嘿嘿,本来以为已经找不到原稿了,今天无意中竟然在QQ网络硬盘中找到了当初地teta版,发布于此,以作纪念.C源代码如下:#include #include #include struct book char book_name30。 int bianha
2、o。 double price。 char author20。 char state20。 char name20。 char sex10。 int xuehao。 struct book *book_next。 。 struct club char name20。 char sex10。 int xuehao。 char borrow30。 struct club *club_next。 。 void Print_Book(struct book *head_book。/*浏览所有图书信息*/ void Print_Club(struct club *head_club。/*浏览所有会员信息
3、*/ struct book *Create_New_Book(。/*创建新地图书库,图书编号输入为0时结束*/ struct book *Search_Book_bianhao(int bianhao,struct book *head_book。 struct book *Search_Book_name(char *b_name,struct book *head_book。 struct book *Search_Book_price(double price_h,double price_l,struct book *head_book。 struct book *Insert_Bo
4、ok(struct book *head_book,struct book *stud_book。/*增加图书,逐个添加*/ struct book *Delete_Book(struct book *head_book,int bianhao。/*删除图书*/ struct club *Create_New_Club(。 struct club *Search_Club_xuehao(int xuehao,struct club *head_club。 struct club *Search_Club_name(char *c_name,struct club *head_club。 str
5、uct club *Insert_Club(struct club *head_club,struct club *stud_club。 struct club *Delete_Club(struct club *head_club,int xuehao。 struct book *Lent_Book(int bianhao,int xuehao,struct book *head_book,struct club *head_club。 struct book *back(int bianhao,int xuehao,struct book *head_book,struct club *h
6、ead_club。 int main( struct book *head_book,*p_book。 char book_name30,name20,author20,sex10。 int bianhao。 double price,price_h,price_l。 int size_book=sizeof(struct book。 int m=1,n=1,f。 char *b_name,*c_name。 struct club *head_club,*p_club。 int xuehao。 int size_club=sizeof(struct club。 int choice。 prin
7、tf(n欢迎您第一次进入图书管理系统!nn。 printf(-向导-新建图书库nn。 printf(注意:当输入图书编号为0时,进入下一步.nn。 head_book=Create_New_Book(。 system(cls。 printf(n欢迎您第一次进入图书管理系统!nn。 printf(-向导-新建会员库nn。 printf(注意:当输入会员学号为0时,进入主菜单.nn。 head_club=Create_New_Club(。 system(cls。 do printf(nttt图书管理系统nn。 printf(n。 printf(ttt1:借书办理t。printf( 6:还书办理n。
8、 printf(n。 printf(ttt2:查询图书t。printf( 7:查询会员n。 printf(ttt3:添加图书t。printf( 8:添加会员n。 printf(ttt4:删除图书t。printf( 9:删除会员n。 printf(ttt5:遍历图书t。printf(10:遍历会员nn。 printf(tttnn。 printf(ttt0:退出nn。 printf(请选择:。 scanf(%d,&choice。 switch(choice case 1: printf(nttt图书管理系统nn。 printf(输入所借图书编号:n。 scanf(%d,&bianhao。 prin
9、tf(输入借书人地学号:n。 scanf(%d,&xuehao。 head_book=Lent_Book(bianhao,xuehao,head_book,head_club。 system(cls。 printf(n借阅成功!nn。 printf(相关信息如下:nn。 head_book=Search_Book_bianhao(bianhao,head_book。 break。 case 2: system(cls。 printf(nttt图书管理系统nn。 printf(1.按编号查询nn。 printf(2.按名称查询nn。 printf(3.按价格区间查询nn。 printf(0.返回
10、主菜单nn。 printf(请选择:。 scanf(%d,&f。 if(f=1 printf(请输入查询图书编号:。 scanf(%d,&bianhao。 printf(相关信息如下:nn。 head_book=Search_Book_bianhao(bianhao,head_book。 break。 else if(f=2 b_name=book_name。 getchar(。 printf(请输入查询图书名称:。 gets(b_name。 printf(相关信息如下:nn。 head_book=Search_Book_name(b_name,head_book。 break。 else i
11、f(f=3 printf(请输入最高价格:。 scanf(%lf,&price_h。 printf(请输入最低价格:。 scanf(%lf,&price_l。 printf(相关信息如下:nn。 head_book=Search_Book_price(price_h,price_l,head_book。 break。 else if(f=0 break。 break。 case 6: printf(nttt图书管理系统nn。 printf(输入所还图书编号:n。 scanf(%d,&bianhao。 printf(输入还书人地学号:n。 scanf(%d,&xuehao。 head_book=
12、back(bianhao,xuehao,head_book,head_club。 system(cls。 printf(n归还成功!nn。 printf(相关信息如下:nn。 head_book=Search_Book_bianhao(bianhao,head_book。 break。 case 3: system(cls。 printf(nttt图书管理系统nn。 printf(请输入图书名称:。 scanf(%s,book_name。 printf(请输入图书编号:。 scanf(%d,&bianhao。 printf(请输入单价:。 scanf(%lf,&price。 printf(请输
13、入作者名字:。 scanf(%s,author。 printf(n。 struct book *ptr_b。 for(ptr_b=head_book。ptr_b。ptr_b=ptr_b-book_next if(ptr_b-bianhao=bianhao printf(此编号图书已存在n。 m=0。 break。 if(m p_book=(struct book *malloc(size_book。 strcpy(p_book-book_name,book_name。 p_book-bianhao=bianhao。 p_book-price=price。 p_book-xuehao=0。 st
14、rcpy(p_book-author,author。 strcpy(p_book-state,存在。 strcpy(p_book-sex,待定。 strcpy(p_book-name,待定。 head_book=Insert_Book(head_book,p_book。 printf(n添加图书成功!nn。 break。 case 4: system(cls。 printf(nttt图书管理系统nn。 printf(输入删除图书编号:n。 scanf(%d,&bianhao。 head_book=Delete_Book(head_book,bianhao。 printf(n删除图书成功!nn。
15、 break。 case 5: system(cls。 printf(nttt图书管理系统nn。 Print_Book(head_book。 break。 case 7: system(cls。 printf(nttt图书管理系统nn。 printf(1.按学号查询nn。 printf(2.按姓名查询nn。 printf(0.返回主菜单nn。 printf(请选择:。 scanf(%d,&f。 if(f=1 printf(请输入查询会员学号:。 scanf(%d,&xuehao。 printf(相关信息如下:nn。 head_club=Search_Club_xuehao(xuehao,hea
16、d_club。 break。 else if(f=2 c_name=name。 getchar(。 printf(请输入查询会员姓名:。 gets(c_name。 printf(相关信息如下:nn。 head_club=Search_Club_name(c_name,head_club。 break。 else if(f=0 break。 break。 printf(请输入查询会员学号:n。 scanf(%d,&xuehao。 printf(相关信息如下:nn。 break。 case 8: system(cls。 printf(nttt图书管理系统nn。 printf(请输入会员名字:。 s
17、canf(%s,name。 printf(请输入会员性别:。 scanf(%s,sex。 printf(请输入会员学号:。 scanf(%d,&xuehao。 printf(n。 struct club *ptr_c。 for(ptr_c=head_club。ptr_c。ptr_c=ptr_c-club_next if(ptr_c-xuehao=xuehao printf(此学号会员已存在n。n=0。 break。 if(n p_club=(struct club *malloc(sizeof(struct club。 strcpy(p_club-name,name。 strcpy(p_clu
18、b-sex,sex。 p_club-xuehao=xuehao。 strcpy(p_club-borrow,暂无。 head_club=Insert_Club(head_club,p_club。 printf(n添加会员成功!nn。 break。 case 9: system(cls。 printf(nttt图书管理系统nn。 printf(输入要删除会员学号:n。 scanf(%d,&xuehao。 head_club=Delete_Club(head_club,xuehao。 printf(n删除会员成功!nn。 break。 case 10: system(cls。 printf(ntt
19、t图书管理系统nn。 Print_Club(head_club。 break。 case 0: system(cls。 printf(nttt图书管理系统nn。 printf(n谢谢您地使用!nn。 break。 while(choice!=0。 return 0。 struct book *Create_New_Book( struct book *head_book,*p_book。 int bianhao。 double price。 char book_name30,author20。 int size_book=sizeof(struct book。 head_book=NULL。
20、printf(请输入图书名称:。 scanf(%s,book_name。 printf(请输入图书编号:。 scanf(%d,&bianhao。 printf(请输入单价:。 scanf(%lf,&price。 printf(请输入作者名字:。 scanf(%s,author。 printf(n。 while(bianhao!=0 p_book=(struct book *malloc(size_book。 strcpy(p_book-book_name,book_name。 p_book-bianhao=bianhao。 p_book-price=price。 p_book-xuehao=0
21、。 strcpy(p_book-author,author。 strcpy(p_book-state,存在。 strcpy(p_book-sex,待定。 strcpy(p_book-name,待定。 head_book=Insert_Book(head_book,p_book。 printf(请输入图书名称:。 scanf(%s,book_name。 printf(请输入图书编号:。 scanf(%d,&bianhao。 printf(请输入单价:。 scanf(%lf,&price。 printf(请输入作者名字:。 scanf(%s,author。 printf(n。 return hea
22、d_book。 struct book *Search_Book_bianhao(int bianhao,struct book *head_book struct book *ptr_book。 int flag=0。 for(ptr_book=head_book。ptr_book。ptr_book=ptr_book-book_next if(ptr_book-bianhao=bianhao printf(图书编号:%dn,ptr_book-bianhao。 printf(图书名称:%sn,ptr_book-book_name。 printf(图书单价:%.2lfn,ptr_book-pri
23、ce。 printf(图书作者:%sn,ptr_book-author。 printf(存在状态:%sn,ptr_book-state。 printf(借书人姓名:%sn,ptr_book-name。 printf(借书人性别:%sn,ptr_book-sex。 printf(学号:%dn,ptr_book-xuehao。 printf(n。 flag+。 if(flag=0printf(暂无此图书信息!nn。 return head_book。 struct book *Search_Book_name(char *b_name,struct book *head_book struct b
24、ook *ptr_book。 int flag=0。 for(ptr_book=head_book。ptr_book。ptr_book=ptr_book-book_next if(strcmp(ptr_book-book_name,b_name=0 printf(图书编号:%dn,ptr_book-bianhao。 printf(图书名称:%sn,ptr_book-book_name。 printf(图书单价:%.2lfn,ptr_book-price。 printf(图书作者:%sn,ptr_book-author。 printf(存在状态:%sn,ptr_book-state。 print
25、f(借书人姓名:%sn,ptr_book-name。 printf(借书人性别:%sn,ptr_book-sex。 printf(学号:%dn,ptr_book-xuehao。 printf(n。 flag+。 if(flag=0printf(暂无此图书信息!nn。 return head_book。 struct book *Search_Book_price(double price_h,double price_l,struct book *head_book struct book *ptr_book。 int flag=0。 for(ptr_book=head_book。ptr_bo
26、ok。ptr_book=ptr_book-book_next if(ptr_book-price=price_l&(ptr_book-price printf(图书编号:%dn,ptr_book-bianhao。 printf(图书名称:%sn,ptr_book-book_name。 printf(图书单价:%.2lfn,ptr_book-price。 printf(图书作者:%sn,ptr_book-author。 printf(存在状态:%sn,ptr_book-state。 printf(借书人姓名:%sn,ptr_book-name。 printf(借书人性别:%sn,ptr_book-sex。 printf(学号:%dn,ptr_book-xuehao。 printf(n。 flag+。 if(flag=0printf(暂无此图书信息!nn。 return head_book。 struct book *Delete_Book(struct book *head_book,int bianhao struct book
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1