版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上#include <stdio.h>#include <stdlib.h>#include <time.h>#include <string.h>#include<conio.h>typedef int BOOL;typedef struct bookinfo char number15;/*產(chǎn)品編號*/ char name30;/*產(chǎn)品名稱*/ float price;/*單價*/ char auther20;/*作者*/ BOOL isExit;/*存在狀態(tài)*/ char lendername20;/*借
2、書人姓名*/ char lendersex2;/*借書人性別*/ char lendernum15;/*借書人學號*/BOOKINFO;void menu() printf("nnnnnnn"); printf("ttt圖書管理系統(tǒng)n"); printf("ttt1:新進圖書基本信息的輸入n"); printf("ttt2:顯示全部記錄n"); printf("ttt3:根據(jù)圖書名稱查詢圖書基本信息n"); printf("ttt4:根據(jù)圖書名稱對撤銷的圖書信息進行刪除n")
3、; printf("ttt5:按照圖書名稱從小大到排序n"); printf("ttt6:統(tǒng)計某價格以上的圖書數(shù)量n"); printf("ttt7:列出所有未借出去的圖書信息n"); printf("ttt8:退出n"); void choice_1_input_new()/*輸入新進的圖書信息*/ char choice; FILE *p; BOOKINFO newbook; system("cls"); while(1) printf("輸入圖書編號:"); gets(
4、newbook.number); printf("輸入圖書名稱:"); gets(); printf("輸入圖書單價:"); scanf("%f",&newbook.price); while(getchar()!='n'); printf("輸入圖書的作者:"); gets(newbook.auther); printf("輸入借書人姓名:"); gets(newbook.lendername); printf("輸入借書人性別:&qu
5、ot;); gets(newbook.lendersex); printf("輸入借書人學號:"); gets(newbook.lendernum); printf("是否保存該條書目?(Y/N)n"); choice=getch(); while(choice!='Y'&&choice!='y'&&choice!='N'&&choice!='n') choice=getch(); if(choice='Y'|choice=
6、39;y') newbook.isExit=1;/*將圖書狀態(tài)設(shè)置成1,表示沒有借出*/ p=fopen("c:bookinfo.data","ab"); fwrite(&newbook,sizeof(BOOKINFO),1,p); fclose(p); printf("n該條書目已添加到c:bookinfo.data文件中!n"); else printf("n本條書目未保存!n"); printf("n是否繼續(xù)添加書目?(Y/N)n"); choice=getch(); wh
7、ile(choice!='Y'&&choice!='y'&&choice!='N'&&choice!='n') choice=getch(); if(choice='Y'|choice='y') continue; else break; void choice_2_display_all()/*顯示全部圖書信息*/ FILE *p; int n; BOOKINFO bookinfo100; int booknumber=0; system("
8、;cls"); p=fopen("c:bookinfo.data","rb"); while(!feof(p) fread(&bookinfobooknumber,sizeof(BOOKINFO),1,p); booknumber+; /*booknumber-;使用feof()函數(shù)會多讀一行,因此需要booknumber自減一次,使書目的數(shù)量正確*/ fclose(p); booknumber-; if(booknumber=0) printf("沒有任何圖書信息!nn"); else n=0; printf(&q
9、uot; 圖書信息如下n"); printf(" 圖書信息 | 借書人信息 n"); printf("編號 名稱 單價 作者 圖書狀態(tài) | 姓名 性別 學號n"); while(n<booknumber) printf("%-6s%-12s%-8.1f%-8s%-9d| %-12s%-8s%-8sn", bookinfon.number,,bookinfon.price, bookinfon.auther,bookinfon.isExit,bookinfon.lendername, book
10、infon.lendersex,bookinfon.lendernum); n+; printf("nn按任意鍵回到主菜單!n"); getch(); void choice_3_search_according_name()/*根據(jù)圖書名稱顯示圖書的信息*/ char search20=""/*search用來存放要查詢的書名*/ int n; FILE *p; char choice; BOOKINFO bookinfo100; int booknumber=0; system("cls"); p=fopen("c:bo
11、okinfo.data","rb"); while(!feof(p) fread(&bookinfobooknumber,sizeof(BOOKINFO),1,p); booknumber+; booknumber-;/*使用feof()函數(shù)會多讀一行,因此需要booknumber自減一次,使書目的數(shù)量正確*/ fclose(p); while(1) printf("輸入要查詢的書本名稱:"); gets(search); if(booknumber=0) printf("書庫中沒有任何信息!nn"); printf
12、("按任意鍵回到主菜單!nn"); getch(); break; /*if結(jié)束*/ else for(n=0;n<booknumber;n+) if(strcmp(,search)=0) printf("該書的詳細信息如下:n"); printf(" 圖書信息 | 借書人信息 n"); printf("編號 名稱 單價 作者 圖書狀態(tài) | 姓名 性別 學號n"); printf("%-6s%-12s%-8.1f%-8s%-9d| %-12s%-8s%-8sn"
13、, bookinfon.number,,bookinfon.price, bookinfon.auther,bookinfon.isExit,bookinfon.lendername, bookinfon.lendersex,bookinfon.lendernum); break; if(n>=booknumber) printf("沒有查找該書的任何信息!n"); printf("nn是否繼續(xù)查詢?(Y/N)n"); choice=getch(); while(choice!='Y'&&
14、choice!='y'&&choice!='N'&&choice!='n') choice=getch(); if(choice='Y'|choice='y') continue; else break; /*else結(jié)束*/ /*while(1)結(jié)束*/ void choice_4_delete_according_name()/*根據(jù)圖書名稱對圖書信息進行刪除*/ char search20=""/*search用來存放要刪除的書名*/ int n,i; FI
15、LE *p; char choice; BOOKINFO bookinfo100; int booknumber; system("cls"); while(1) printf("輸入要刪除的書本名稱:"); gets(search); p=fopen("c:bookinfo.data","rb"); booknumber=0; while(!feof(p) fread(&bookinfobooknumber,sizeof(BOOKINFO),1,p); booknumber+; booknumber-;/
16、*使用feof()函數(shù)會多讀一行,因此需要booknumber自減一次,使書目的數(shù)量正確*/ fclose(p); if(booknumber=0) printf("書庫中沒有任何信息!nn"); printf("按任意鍵回到主菜單!nn"); getch(); break; /*if結(jié)束*/ else for(n=0;n<booknumber;n+) if(strcmp(,search)=0) break; if(n>=booknumber) printf("沒有查找該書的任何信息!n");
17、else printf("是否確認需要刪除該條書目?(Y/N)"); choice=getch(); while(choice!='Y'&&choice!='y'&&choice!='N'&&choice!='n') choice=getch(); if(choice='Y'|choice='y') for(i=n;i<booknumber-1;i+) bookinfoi=bookinfoi+1; booknumber-; p
18、=fopen("c:bookinfo.data","wb"); for(n=0;n<booknumber;n+) fwrite(&bookinfon,sizeof(BOOKINFO),1,p); fclose(p); printf("刪除成功!n"); else printf("nn該條書目沒有被刪除!"); printf("nn是否繼續(xù)進行刪除操作?(Y/N)n"); choice=getch(); while(choice!='Y'&&choic
19、e!='y'&&choice!='N'&&choice!='n') choice=getch(); if(choice='Y'|choice='y') continue; else break; /*else結(jié)束*/ /*while(1)結(jié)束*/ void choice_5_sort_according_name()/*根據(jù)圖書名稱排序*/ FILE *p; int m,n; BOOKINFO temp; BOOKINFO bookinfo100; int booknumber; p
20、=fopen("c:bookinfo.data","rb"); booknumber=0; system("cls"); while(!feof(p) fread(&bookinfobooknumber,sizeof(BOOKINFO),1,p); booknumber+; booknumber-;/*使用feof()函數(shù)會多讀一行,因此需要booknumber自減一次,使書目的數(shù)量正確*/ fclose(p); if(booknumber=0) printf("沒有任何圖書信息!nn"); else fo
21、r(m=0;m<booknumber-1;m+) for(n=m+1;n<booknumber;n+) if(strcmp(,)>0) temp=bookinfom; bookinfom=bookinfon; bookinfon=temp; p=fopen("c:bookinfo.data","wb"); for(m=0;m<booknumber;m+) fwrite(&bookinfom,sizeof(BOOKINFO),1,p); fclose(p); print
22、f("nn完成排序!nn"); printf("按任意鍵回到主菜單!n"); getch(); void choice_6_display_high_price()/*根據(jù)價格列出圖書信息*/ float price; FILE *p; int n; int count=0; BOOKINFO bookinfo100; int booknumber; system("cls"); printf("請輸入價格:"); scanf("%f",&price); p=fopen("c:
23、bookinfo.data","rb"); booknumber=0; while(!feof(p) fread(&bookinfobooknumber,sizeof(BOOKINFO),1,p); booknumber+; booknumber-;/*使用feof()函數(shù)會多讀一行,因此需要booknumber自減一次,使書目的數(shù)量正確*/ fclose(p); if(booknumber=0) printf("沒有任何圖書信息!nn"); else for(n=0;n<booknumber;n+) if(bookinfon.p
24、rice>=price) count+; if(count=0) printf("書庫中沒有比%.1f$價格高的圖書!",price); else printf(" 價格高于%.1f$的圖書信息如下n",price); printf(" 圖書信息 | 借書人信息 n"); printf("編號 名稱 單價 作者 圖書狀態(tài) | 姓名 性別 學號n"); for(n=0;n<booknumber;n+) if(bookinfon.price>=price) printf("%-6s%-12s
25、%-8.1f%-8s%-9d| %-12s%-8s%-8sn", bookinfon.number,,bookinfon.price, bookinfon.auther,bookinfon.isExit,bookinfon.lendername, bookinfon.lendersex,bookinfon.lendernum); printf("nn按任意鍵回到主菜單!n"); getch(); void choice_7_display_according_exitflag()/*根據(jù)存在狀態(tài)列出圖書信息*/ FILE *p; int
26、 n; int count=0; BOOKINFO bookinfo100; int booknumber; system("cls"); booknumber=0; p=fopen("c:bookinfo.data","rb"); while(!feof(p) fread(&bookinfobooknumber,sizeof(BOOKINFO),1,p); booknumber+; booknumber-; fclose(p); if(booknumber=0) printf("書庫中沒有任何書目存在!n"
27、;); else for(n=0;n<booknumber;n+) if(bookinfon.isExit=1) count+; if(count=0) printf("書庫中的書籍全部借出!n"); else printf("書庫中未被借出的圖書信息如下:nn"); printf(" 圖書信息 | 借書人信息 n"); printf("編號 名稱 單價 作者 圖書狀態(tài) | 姓名 性別 學號n"); for(n=0;n<booknumber;n+) if(bookinfon.isExit=1) printf("%-6s%-12s%-8.1f%-8s%-9d| %-12s%-8s%-8sn", bookinfon.number,,bookinfon.price, bookinfon.auther,bookinfon.isExit,bookinfon.lendername, bookinfon.lendersex,bookinfon.lendernum); printf("n按任意鍵返回主菜單!n
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 蘭州石化職業(yè)技術(shù)大學《中國智慧》2023-2024學年第一學期期末試卷
- 江西科技職業(yè)學院《地理學科教學設(shè)計》2023-2024學年第一學期期末試卷
- 集寧師范學院《石油化工工藝》2023-2024學年第一學期期末試卷
- 湖南現(xiàn)代物流職業(yè)技術(shù)學院《海外市場調(diào)研與數(shù)據(jù)分析》2023-2024學年第一學期期末試卷
- 湖南工程學院應(yīng)用技術(shù)學院《跨境電商概論》2023-2024學年第一學期期末試卷
- 衡水健康科技職業(yè)學院《風景園林建筑設(shè)計基礎(chǔ)》2023-2024學年第一學期期末試卷
- 重慶幼兒師范高等??茖W?!妒袌稣{(diào)查分析》2023-2024學年第一學期期末試卷
- 重慶健康職業(yè)學院《數(shù)字音視頻技術(shù)》2023-2024學年第一學期期末試卷
- 浙江農(nóng)業(yè)商貿(mào)職業(yè)學院《先進陶瓷材料》2023-2024學年第一學期期末試卷
- 鄭州食品工程職業(yè)學院《自然地理學概論》2023-2024學年第一學期期末試卷
- 經(jīng)典酒吧轉(zhuǎn)讓協(xié)議書范本(3篇)
- DB37-T 5026-2022《居住建筑節(jié)能設(shè)計標準》
- 抗菌藥物合理應(yīng)用PPT
- 《三角形的分類》-完整版課件
- 風力發(fā)電機組地基處理
- 護士聘用證明表下載
- 《中外資產(chǎn)評估準則》課件第2章 資產(chǎn)評估DNA透視
- 1986考研英語真題及答案解析
- 二重積分的概念
- PPK-CPK(自動生成)
- 熱電偶、熱電阻產(chǎn)品選型樣本
評論
0/150
提交評論