天天看點

c語言借書程式,c語言圖書管理系統代碼_c語言圖書管理平台源代碼_圖書管理系統借書代碼 c語言...

c語言借書程式,c語言圖書管理系統代碼_c語言圖書管理平台源代碼_圖書管理系統借書代碼 c語言...

#include

#include

#include

#include

typedef int BOOL;

typedef struct bookinfo

{

char number[15];

char name[30];

float price;

char auther[20];

BOOL isExit;

char lendername[20];

char lendersex[2];

char lendernum[15];

}BOOKINFO;

void menu()

{

printf("\n\n\n\n\n\n\n");

printf("\t\t\t圖書管理系統\n");

printf("\t\t\t1:新進圖書基本資訊的輸入\n");

printf("\t\t\t2:顯示全部記錄\n");

printf("\t\t\t3:根據圖書名稱查詢圖書基本資訊\n");

printf("\t\t\t4:根據圖書名稱對撤銷的圖書資訊進行删除\n");

printf("\t\t\t5:按照圖書名稱從小大到順序\n");

printf("\t\t\t6:統計某價格以下的圖書總量\n");

printf("\t\t\t7:列出所有未借出去的圖書資訊\n");

printf("\t\t\t8:退出\n");

}

void choice_1_input_new()

{

char choice;

FILE *p;

BOOKINFO newbook;

system("cls");

while(1)

{

printf("輸入圖書編号:");

gets(newbook.number);

printf("輸入圖書名稱:");

gets(newbook.name);

printf("輸入圖書單價:");

scanf("%f",&newbook.price);

while(getchar()!='\n');

printf("輸入圖書的作者:");

gets(newbook.auther);

printf("輸入借書人姓名:");

gets(newbook.lendername);

printf("輸入借書人性别:");

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=='y')

{

newbook.isExit=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是否繼續添加書目?(Y/N)\n");

choice=getch();

while(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;

c語言借書程式,c語言圖書管理系統代碼_c語言圖書管理平台源代碼_圖書管理系統借書代碼 c語言...

BOOKINFO bookinfo[100];

int booknumber=0;

system("cls");

p=fopen("c:\\bookinfo.data","rb");

while(!feof(p))

{

fread(&bookinfo[booknumber],sizeof(BOOKINFO),1,p);

booknumber++;

}

fclose(p);

booknumber--;

if(booknumber==0)

{

printf("沒有任何圖書資訊!\n\n");

}

else

{

n=0;

printf("圖書資訊如下\n");

printf("圖書資訊|借書人資訊 \n");

printf("編号 名稱單價 作者 圖書狀态 | 姓名性别 學号\n");

while(n

{

printf("%-6s%-12s%-8.1f%-8s%-9d| %-12s%-8s%-8s\n",

bookinfo[n].number,bookinfo[n].name,bookinfo[n].price,

bookinfo[n].auther,bookinfo[n].isExit,bookinfo[n].lendername,

bookinfo[n].lendersex,bookinfo[n].lendernum);

n++;

}

}

printf("\n\n按任意鍵回到主菜單!\n");

getch();

}

void choice_3_search_according_name()

{

char search[20]="";

int n;

FILE *p;

char choice;

BOOKINFO bookinfo[100];

int booknumber=0;

system("cls");

p=fopen("c:\\bookinfo.data","rb");

while(!feof(p))

{

fread(&bookinfo[booknumber],sizeof(BOOKINFO),1,p);

booknumber++;

}

booknumber--;

fclose(p);

while(1)

{

printf("輸入要查詢的書本名稱:");

gets(search);

if(booknumber==0)

{

printf("書庫中沒有任何資訊!\n\n");

printf("按任意鍵回到主菜單!\n\n");

getch();

break;

}

else

{

for(n=0;n

if(strcmp(bookinfo[n].name,search)==0)

{

printf("該書的具體資訊如下:\n");

printf("圖書資訊|借書人資訊 \n");

printf("編号 名稱單價 作者 圖書狀态 | 姓名性别 學号\n");

printf("%-6s%-12s%-8.1f%-8s%-9d| %-12s%-8s%-8s\n",

bookinfo[n].number,bookinfo[n].name,bookinfo[n].price,

bookinfo[n].auther,bookinfo[n].isExit,bookinfo[n].lendername,

bookinfo[n].lendersex,bookinfo[n].lendernum);

break;

}

if(n>=booknumber)

printf("沒有查找該書的任何資訊!\n");

printf("\n\n是否繼續查詢?(Y/N)\n");

choice=getch();

while(choice!='Y'&&choice!='y'&&choice!='N'&&choice!='n')

choice=getch();

c語言借書程式,c語言圖書管理系統代碼_c語言圖書管理平台源代碼_圖書管理系統借書代碼 c語言...

if(choice=='Y'||choice=='y')

continue;

else

break;

}

}

}

void choice_4_delete_according_name()

{

char search[20]="";

int n,i;

FILE *p;

char choice;

BOOKINFO bookinfo[100];

int booknumber;

system("cls");

while(1)

{

printf("輸入要删除的書本名稱:");

gets(search);

p=fopen("c:\\bookinfo.data","rb");

booknumber=0;

while(!feof(p))

{

fread(&bookinfo[booknumber],sizeof(BOOKINFO),1,p);

booknumber++;

}

booknumber--;

fclose(p);

if(booknumber==0)

{

printf("書庫中沒有任何資訊!\n\n");

printf("按任意鍵回到主菜單!\n\n");

getch();

break;

}

else

{

for(n=0;n

if(strcmp(bookinfo[n].name,search)==0)

{

break;

}

if(n>=booknumber)

printf("沒有查找該書的任何資訊!\n");

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

bookinfo[i]=bookinfo[i+1];

booknumber--;

p=fopen("c:\\bookinfo.data","wb");

for(n=0;n

fwrite(&bookinfo[n],sizeof(BOOKINFO),1,p);

fclose(p);

printf("删除成功!\n");

}

else

printf("\n\n該條書目沒有被删除!");

}

printf("\n\n是否繼續進行删除操作?(Y/N)\n");

choice=getch();

while(choice!='Y'&&choice!='y'&&choice!='N'&&choice!='n')

choice=getch();

if(choice=='Y'||choice=='y')

continue;

else

break;

}

}

本文來自電腦雜談,轉載請注明本文網址:

http://www.pc-fly.com/a/jisuanjixue/article-120332-1.html