用C语言编图书管理系统 急求用C语言编写的图书管理系统源代码

\u7528C\u8bed\u8a00\u7f16\u5199\u4e00\u4e2a\u56fe\u4e66\u7ba1\u7406\u7cfb\u7edf

#include
#include
struct sale/*\u5546\u54c1\u540d\u7684\u5b9a\u4e49*/
{int number;char name[20];float price;long count;long time;long date;};

/*\u5404\u4e2a\u51fd\u6570*/
void input(struct sale s[7]);/*\u8f93\u5165\u51fd\u6570*/
void output(struct sale s[7]);/*\u8f93\u51fa\u51fd\u6570*/
void seek(struct sale s[7]);/*\u67e5\u627e\u51fd\u6570*/
void row(struct sale s[7]);/*\u6392\u5e8f\u51fd\u6570*/
void change(struct sale s[7]);/*\u5220\u9664\u3001\u4fee\u6539\u3001\u6216\u63d2\u5165*/

void main()/*\u4e3b\u51fd\u6570\u6267\u884c\u533a\u57df*/
{struct sale s[7]={{2,"pen",0.5,200,20050604,20090102},{1,"milk",3.5,100,20050403,20090202},
{5,"coke",3.5,500,20060203,20070503},{6,"chewing",0.3,200,20060305,20080205},
{4,"eraser",0.4,20,20060304,20500607},{3,"pencil",0.9,100,20040607,20060709}};/*\u5b9a\u4e49\u521d\u59cb\u503c*/;
/*input(s);\u3010\u5df2\u4ed8\u521d\u59cb\u503c\u6682\u4e0d\u8fd0\u884c\uff01\uff01\u3011*/
output(s);
seek(s);
row(s);
change(s);
}

/*void input(struct sale s[7])\u3010\u6ce8\u91ca\uff1a\u5df2\u4ed8\u521d\u59cb\u503c\uff0c\u6682\u4e0d\u8fd0\u884c\uff01\uff01\u3011
{int i;printf("\u8bf7\u5206\u522b\u8f93\u5165\u4ea7\u54c1\u7f16\u53f7\u3001\u540d\u79f0\u3001\u5355\u4ef7\u3001\u5e93\u5b58\u6570\u91cf\u3001\u5165\u5e93\u65f6\u95f4\u3001\u6709\u6548\u65e5\u671f:\n"); for(i=0;i scanf("%d%s%f%ld%ld%ld",&s.number,&s.name,&s.price,&s.count,&s.time,&s.date);}*/



void output(struct sale s[7])/*\u5b9a\u4e49\u8f93\u51fa*/
{int i;printf("\u7f16\u53f7\t\u540d\u79f0\t\u5355\u4ef7\t\u5e93\u5b58\u6570\u91cf\t\u5165\u5e93\u65f6\u95f4\t\t\u6709\u6548\u65e5\u671f\n"); for(i=0;i printf("%d\t%s\t%.2f\t%ld\t\t%ld\t\t%ld\n",s.number,s.name,s.price,s.count,s.time,s.date);}

void seek(struct sale s[7])/*\u5b9a\u4e49\u67e5\u627e*/
{int i; int m; int k; k=1; printf("\u8bf7\u8f93\u5165\u8981\u67e5\u627e\u7684\u7f16\u53f7\n"); printf("m== "); scanf("%d",&m); for(i=0;i { if(m==s.number) {printf("\u4f60\u60f3\u67e5\u627e\u7684\u7269\u54c1\u662f\uff1a\n"); printf("\u7f16\u53f7\t\u540d\u79f0\t\u5355\u4ef7\t\u5e93\u5b58\u6570\u91cf\t\u5165\u5e93\u65f6\u95f4\t\t\u6709\u6548\u65e5\u671f\n"); printf("%d\t%s\t%.2f\t%ld\t\t%ld\t\t%ld\n",s.number,s.name,s.price,s.count,s.time,s.date); k=m;}
}
if(k==1)
printf("\u6ca1\u6709\u6b64\u7c7b\u5546\u54c1!!!\n");
}


void row(struct sale s[7])/*\u6392\u5e8f*/
{
struct sale t;
int i,j;
int m,a;
printf("\n");
printf("\u8f93\u51fa\u5df2\u6392\u597d\u5e8f\u7684\u5546\u54c1\n");
for(j=0;j<6;j++)
for(i=0;i<6-j;i++)

if(s.number>s.number)
{
t=s;
s=s;
s=t;
}
printf("\u91cd\u65b0\u6392\u5e8f\u540e\u662f\uff1b \n");
printf("\u7f16\u53f7\t\u540d\u79f0\t\u5355\u4ef7\t\u5e93\u5b58\u6570\u91cf\t\u5165\u5e93\u65f6\u95f4\t\t\u6709\u6548\u65e5\u671f\n");
for(a=0;a<7;a++)
printf("%d\t%s\t%.2f\t%ld\t\t%ld\t\t%ld\n",s[a].number,s[a].name,s[a].price,s[a].count,s[a].time,s[a].date);

}


void change(struct sale s[7])/*\u5220\u9664\u3001\u4fee\u6539\u3001\u6216\u63d2\u5165*/
{
struct sale c;
int i,m,q,n,k;
k=0;
printf("\u8bf7\u8f93\u5165\u60a8\u8981\u5220\u9664\u3001\u4fee\u6539\u6216\u8981\u63d2\u5165\u7684\u7269\u54c1\u7f16\u53f7\n");/*\u524d\u594f*/
scanf("%d",&m);
for(i=0;i<7;i++)
if(m==s.number)
{{printf("\u7f16\u53f7\t\u540d\u79f0\t\u5355\u4ef7\t\u5e93\u5b58\u6570\u91cf\t\u5165\u5e93\u65f6\u95f4\t\t\u6709\u6548\u65e5\u671f\n"); printf("%d\t%s\t%.2f\t%ld\t\t%ld\t\t%ld\n",s.number,s.name,s.price,s.count,s.time,s.date);}
printf("\u4f60\u786e\u5b9e\u8981\u5220\u9664\u5b83\u4e48\uff1f\uff1f\uff1f\u8fd8\u662f\u8981\u4fee\u6539\uff1f\uff1f\n");
printf("\u5982\u679c\u60f3\u5220\u9664\u8bf7\u8f93\u51651\uff0c\u5982\u679c\u8981\u4fee\u6539\u8bf7\u8f93\u51652\u3002\n");
printf("\u60a8\u8981\u8f93\u5165\u7684\u662f\uff1a ");
scanf("%d",&q);
if(q==1)/*\u6267\u884c\u5220\u9664\u547d\u4ee4*/
{printf("\u60a8\u5220\u9664\u540e\u7684\u7ed3\u679c\u662f\uff1a\n"); for(i=0;i if(m!=s.number) {printf("\u7f16\u53f7\t\u540d\u79f0\t\u5355\u4ef7\t\u5e93\u5b58\u6570\u91cf\t\u5165\u5e93\u65f6\u95f4\t\t\u6709\u6548\u65e5\u671f\n"); printf("%d\t%s\t%.2f\t%ld\t\t%ld\t\t%ld\n",s.number,s.name,s.price,s.count,s.time,s.date);}}
if(q==2)/*\u6267\u884c\u4fee\u6539\u547d\u4ee4*/
{printf("\u8f93\u5165\u4f60\u60f3\u4fee\u6539\u7684\u5e93\u5b58\u6570\u91cf\uff1a "); scanf("%d",&n); s[m].count=n; printf("\u4fee\u6539\u540e\u7684\u5546\u54c1\u4fe1\u606f\u4e3a\uff1a\n"); printf("\u7f16\u53f7\t\u540d\u79f0\t\u5355\u4ef7\t\u5e93\u5b58\u6570\u91cf\t\u5165\u5e93\u65f6\u95f4\t\t\u6709\u6548\u65e5\u671f\n"); for(i=0;i printf("%d\t%s\t%.2f\t%ld\t\t%ld\t\t%ld\n",s.number,s.name,s.price,s.count,s.time,s.date);}
k=i;
}

if(k==0)/*\u6267\u884c\u63d2\u5165\u547d\u4ee4*/
{printf("\n\n"); printf("\u7531\u4e8e\u63d2\u5165\u8bed\u53e5\u6ca1\u6709\u8981\u6c42\uff0c\u6240\u4ee5\u63d2\u5165\u8bed\u53e5\u5c1a\u672a\u5b8c\u6210\uff0c\u6709\u4e9b\u529f\u80fd\u5c1a\u672a\u5b8c\u5584\uff0c\u6240\u4ee5\u4f1a\u6709\u9519\u8bef\uff0c\u8bf7\u8001\u5e08\u89c1\u8c05\u3002\n\n\n"); printf("\u6b64\u7c7b\u5546\u54c1\u4e0d\u5b58\u5728\uff0c\u8bf7\u63d2\u5165\n"); printf("\u8bf7\u5206\u522b\u8f93\u5165\u8981\u63d2\u5165\u4ea7\u54c1\u7684\u7f16\u53f7\u3001\u540d\u79f0\u3001\u5355\u4ef7\u3001\u5e93\u5b58\u6570\u91cf\u3001\u5165\u5e93\u65f6\u95f4\u3001\u6709\u6548\u65e5\u671f:\n"); i=m-1; scanf("%d%s%f%ld%ld%ld",&s.number,&s.name,&s.price,&s.count,&s.time,&s.date); printf("\u7f16\u53f7\t\u540d\u79f0\t\u5355\u4ef7\t\u5e93\u5b58\u6570\u91cf\t\u5165\u5e93\u65f6\u95f4\t\t\u6709\u6548\u65e5\u671f\n"); printf("%d\t%s\t%.2f\t%ld\t\t%ld\t\t%ld\n",s.number,s.name,s.price,s.count,s.time,s.date); for(i=0;i printf("%d\t%s\t%.2f\t%ld\t\t%ld\t\t%ld\n",s.number,s.name,s.price,s.count,s.time,s.date); row(s); }}
\u8fd9\u662f\u6211\u5927\u4e00\u65f6\u5019\u505a\u7684\u5927\u4f5c\u4e1a\uff0c\u867d\u7136\u4e0d\u662f\u56fe\u4e66\u7ba1\u7406\u7cfb\u7edf\uff0c\u4f60\u53ea\u8981\u6539\u6539\u5c31\u884c\u4e86\uff0c\u539f\u7406\u90fd\u4e00\u6837\uff0c\u5475\u5475

#include
#include
#include
#include
#include
#define STACK_INIT_SIZE 10
#define OK 1
#define TRUE 1
#define FALSE 0
#define ERROR 0

struct student /*\u5b9a\u4e49\u5b66\u751f\u7c7b\u578b\uff0c\u7528\u4e8e\u5b58\u653e\u501f\u51fa\u7684\u4e66\u7c4d*/
{
int carnum;
char lendbook[10];
}student[1000];

struct employ /*\u5b9a\u4e49\u804c\u5de5\u7c7b\u578b*/
{
int employnum;
char employname[15];
int employage;
char employsex[2];
char employleve[10];
long int employtage;
}employ[50];

struct book /*\u5b9a\u4e49\u4e66\u7684\u7c7b\u578b*/
{
int booknum;
char bookname[10];
char bookcreat[10];
int turefalse; /*\u7528\u4e8e\u501f\u4e66\u548c\u8fd8\u4e66\u6a21\u5757\u5224\u65ad\u4e00\u672c\u4e66\u662f\u5426\u501f\u51fa\u7684\u6761\u4ef6*/
}book[1000];

struct car /*\u501f\u4e66\u5361\u7684\u6570\u636e\u7c7b\u578b*/
{
int carnum;
char studentname[10];
int studentclass;
}car[100];


huanbook() /*\u8fd8\u4e66\u51fd\u6570*/
{
FILE *fp,*fp2; /*\u5b9a\u4e49\u4e24\u4e2a\u6587\u4ef6\u6307\u9488\uff0cfp2\u7528\u4e8e\u4fee\u6539\u6570\u636e\u65f6\u8bbe\u7acb\u4e34\u65f6\u6587\u4ef6\u7528\uff0c\u9632\u6b62\u6570\u636e\u906d\u7834\u574f*/
int i,n;
int carnum;
char lendbook[10];
printf("\u8bf7\u4f60\u8f93\u5165\u4f60\u7684\u5361\u53f7\n");
scanf("%d",&carnum);
fp=fopen("car.txt","r"); /*\u8bfb\u53d6\u5361\u53f7\u8bb0\u5f55*/
for(i=0;fread(&car[i],sizeof(struct car),1,fp)!=0;i++) /*for\u5faa\u73af\u5224\u65ad\u5361\u53f7\u662f\u5426\u5b58\u5728*/
{
if(car[i].carnum==carnum) /*\u5361\u53f7\u5b58\u5728\uff0c\u8fdb\u5165\u4e0b\u4e00\u5faa\u73af*/
{
n=i;
fclose(fp);
printf("\u8bf7\u8f93\u5165\u4f60\u8981\u8fd8\u7684\u4e66\u7684\u540d\u5b57\n");
scanf("%s",lendbook);
fp=fopen("record.txt","r");
for(i=0;fread(&student[i],sizeof(struct student),1,fp)!=0;i++) /*\u5224\u65ad\u662f\u5426\u501f\u9605\u4e86\u8f93\u5165\u7684\u4e66*/
{
if(strcmp(student[i].lendbook,lendbook)==0) /*\u501f\u9605\u4e86\u8be5\u4e66\uff0c\u8fdb\u5165\u4e0b\u4e00\u5faa\u73af\uff0c\u5426\u5219\u51fa\u9519\u663e\u793a*/
{
fclose(fp);
fp=fopen("record.txt","r");
fp2=fopen("bookl.txt","w");
for(i=0;fread(&student[i],sizeof(struct student),1,fp)!=0;i++)
{
if(strcmp(student[i].lendbook,lendbook)==0)
{
continue; /*\u5220\u9664\u8fd8\u6389\u7684\u4e66\u7684\u501f\u4e66\u8bb0\u5f55*/
}
fwrite(&student[i],sizeof(struct student),1,fp2); /*\u5199\u5165\u539f\u6765\u6ca1\u8fd8\u7684\u4e66\u7684\u8bb0\u5f55*/
}
fclose(fp);
fclose(fp2);
fp=fopen("record.txt","w");
fp2=fopen("bookl.txt","r");
for(i=0;fread(&student[i],sizeof(struct student),1,fp2)!=0;i++)
{
fwrite(&student[i],sizeof(struct student),1,fp); /*\u5c06\u501f\u4e66\u8bb0\u5f55\u4fe1\u606f\u5199\u56de*/
}
fclose(fp);
fclose(fp2);
fopen("bookl.txt","w"); /*\u6e05\u4e34\u65f6\u6587\u4ef6\u7684\u8bb0\u5f55*/
fclose(fp2);
fp=fopen("book.txt","r");
fp2=fopen("bookl.txt","w");
for(i=0;fread(&book[i],sizeof(struct book),1,fp)!=0;i++) /*\u5c06\u4e66\u7684\u8bb0\u5f55\u5199\u5165\u4e34\u65f6\u6587\u4ef6\uff0c\u9632\u6b62\u56e0\u4e3a\u4fee\u6539\u4fe1\u606f\u7834\u574f\u4ee5\u524d\u7684\u8bb0\u5f55*/
{
if(i==n)
{
book[i].turefalse=1;
fwrite(&book[i],sizeof(struct book),1,fp2); /*\u5c06\u8fd8\u7684\u4e66\u7684\u539f\u6765\u72b6\u6001\u8bbe\u4e3a\u65e0\u4eba\u501f\u9605\u7684*/
continue;
}
fwrite(&book[i],sizeof(struct book),1,fp2);
}
fclose(fp);
fclose(fp2);
fp=fopen("book.txt","w");
fp2=fopen("bookl.txt","r");
for(i=0;fread(&book[i],sizeof(struct book),1,fp2)!=0;i++)
{
fwrite(&book[i],sizeof(struct book),1,fp); /*\u5c06\u4e34\u65f6\u6587\u4ef6\u5199\u56de*/
}
fclose(fp);
fclose(fp2);
fopen("bookl.txt","w"); /*\u6e05\u4e34\u65f6\u6587\u4ef6*/
fclose(fp2);
printf("\u8fd8\u4e66\u5b8c\u6bd5\uff0c\u6309\u4efb\u610f\u952e\u8fd4\u56de\n");
getch();
return 1;
}
}
printf("\u4f60\u6ca1\u6709\u501f\u8fd9\u6837\u7684\u4e66\uff0c\u4efb\u610f\u952e\u8fd4\u56de\n"); /*\u51fa\u9519\u63d0\u793a*/
fclose(fp);
getch();
return 0;
}
}
printf("\u7cfb\u7edf\u6ca1\u8fd9\u6837\u7684\u5361\uff0c\u548c\u7ba1\u7406\u5458\u8054\u7cfb,\u6309\u4efb\u610f\u952e\u8fd4\u56de\n"); /*\u51fa\u9519\u63d0\u793a*/
fclose(fp);
getch();
}


findbook()
{
FILE *fp;
char bookname[10];
int ture,i;
fp=fopen("book.txt","r");
printf("\u8bf7\u8f93\u5165\u4f60\u8981\u67e5\u627e\u7684\u4e66\u540d\n");
scanf("%s",bookname);
for(i=0;fread(&book[i],sizeof(struct book),1,fp)!=0;i++)
{
if(strcmp(bookname,book[i].bookname)==0)
{
if(book[i].turefalse==1)
{
printf("\u8fd9\u672c\u4e66\u7684\u8be6\u7ec6\u8d44\u6599\u662f\uff1a%d %s %s \u6b64\u4e66\u73b0\u5728\u65e0\u4eba\u501f\u9605\n\u6309\u4efb\u610f\u952e\u8fd4\u56de\n",book[i].booknum,book[i].bookname,book[i].bookcreat);
}
else {printf("\u8fd9\u672c\u4e66\u5df2\u7ecf\u6709\u4eba\u501f\u51fa\n");fclose(fp);return 0;}
fclose(fp);
return FALSE;
}
}
printf("\u6ca1\u6709\u4f60\u8981\u67e5\u8be2\u7684\u4e66\u7c4d\n");
fclose(fp);
return FALSE;
}


findbook1()
{
FILE *fp;
char bookcreat[10];
int ture,i;
fp=fopen("book.txt","r");
printf("\u8bf7\u8f93\u5165\u4f60\u8981\u67e5\u627e\u7684\u4f5c\u8005\u540d\n");
scanf("%s",bookcreat);
for(i=0;fread(&book[i],sizeof(struct book),1,fp)!=0;i++)
{
if(strcmp(bookcreat,book[i].bookcreat)==0)
{
if(book[i].turefalse==1)
{
printf("\u8fd9\u672c\u4e66\u7684\u8be6\u7ec6\u8d44\u6599\u662f\uff1a%d %s %s \u6b64\u4e66\u73b0\u5728\u65e0\u4eba\u501f\u9605\n\u6309\u4efb\u610f\u952e\u8fd4\u56de\n",book[i].booknum,book[i].bookname,book[i].bookcreat);
}
else {printf("\u8fd9\u672c\u4e66\u5df2\u7ecf\u6709\u4eba\u501f\u51fa\n");fclose(fp);return 0;}
fclose(fp);
return FALSE;
}
}
printf("\u6ca1\u6709\u4f60\u8981\u67e5\u8be2\u7684\u4e66\u7c4d\n");
fclose(fp);
return FALSE;
}



lendcount()
{
FILE *fp;
int i,n=0;
fp=fopen("record.txt","r");
for(i=0;fread(&student[i],sizeof(struct student),1,fp)!=0;i++)
{
printf("\u5361\u53f7\uff1a%d \u501f\u51fa\u7684\u4e66\u7c4d\uff1a%s \n",student[i].carnum,student[i].lendbook);
n=n+1;
}
fclose(fp);
printf("\u76ee\u524d\u5171\u6709%d\u672c\u4e66\u501f\u51fa\n",n);
printf("\u6309\u4efb\u610f\u952e\n");
getch();
return n;
}



chabook()
{
char ch5;
do
{
printf("---------------\u6b22\u8fce\u8fdb\u5165\u56fe\u4e66\u67e5\u8be2\u7cfb\u7edf\uff01--------------\n");
printf(" 1\uff1a\n");
printf(" 2\uff1a\n");
printf(" 0\uff1a\n");
printf("\u8bf7\u8f93\u51650--2,\u5176\u4ed6\u8f93\u5165\u975e\u6cd5\uff01\n");
scanf("%s",&ch5);
switch(ch5)
{
case '1':findbook();getch();break;
case '2':findbook1();getch();break;
case '0':break;
default:printf("\u65e0\u6b64\u64cd\u4f5c\n");getch();break;
}
}while(ch5!='0');
return FALSE;
}


lendbook()
{
FILE *fp,*fp2;
int i,n;
int carnum;
printf("\u8bf7\u4f60\u8f93\u5165\u4f60\u7684\u5361\u53f7\n");
scanf("%d",&carnum);
fp=fopen("car.txt","r");
for(i=0;fread(&car[i],sizeof(struct car),1,fp)!=0;i++)
{
if(car[i].carnum==carnum)
{
n=i;
fclose(fp);
printf("\u8bf7\u8f93\u5165\u4f60\u8981\u501f\u9605\u7684\u4e66\u7684\u540d\u5b57\n");
scanf("%s",student[n].lendbook);
fp=fopen("book.txt","r");
for(i=0;fread(&book[i],sizeof(struct book),1,fp)!=0;i++)
{
if(strcmp(book[i].bookname,student[n].lendbook)==0)
{
if(book[i].turefalse==0) {printf("\u5bf9\u4e0d\u8d77\uff0c\u6b64\u4e66\u6709\u4eba\u501f\u51fa\uff0c\u8bf7\u501f\u5176\u4ed6\u4e66\n");fclose(fp);getch();return;}
else
fclose(fp);
fp=fopen("record.txt","a+");
student[n].carnum=carnum;
fwrite(&student[n],sizeof(struct student),1,fp);
fclose(fp);
fp=fopen("book.txt","r");
fp2=fopen("bookl.txt","w");
for(i=0;fread(&book[i],sizeof(struct book),1,fp)!=0;i++)
{
if(strcmp(book[i].bookname,student[n].lendbook)==0)
{
book[i].turefalse=0;
fwrite(&book[i],sizeof(struct book),1,fp2);
continue;
}
fwrite(&book[i],sizeof(struct book),1,fp2);
}
fclose(fp);
fclose(fp2);
fp=fopen("book.txt","w");
fp2=fopen("bookl.txt","r");
for(i=0;fread(&book[i],sizeof(struct book),1,fp2)!=0;i++)
{
fwrite(&book[i],sizeof(struct book),1,fp);
}
fclose(fp);
fclose(fp2);
fopen("bookl.txt","w");
fclose(fp2);
printf("\u501f\u4e66\u5b8c\u6bd5\uff0c\u6309\u4efb\u610f\u952e\u8fd4\u56de\n");
getch();
return;
}
}
printf("\u4e0d\u5b58\u5728\u8fd9\u6837\u7684\u4e66\uff0c\u4efb\u610f\u952e\u8fd4\u56de\n");
fclose(fp);
getch();
return;
}
}
printf("\u4f60\u7684\u5361\u53f7\u4e0d\u5b58\u5728\uff0c\u8bf7\u7533\u8bf7\u65b0\u5361,\u6309\u4efb\u610f\u952e\u8fd4\u56de\n");
fclose(fp);
getch();
}


carcount()
{
FILE *fp;
int i,n=0;
fp=fopen("car.txt","r");
for(i=0;fread(&car[i],sizeof(struct car),1,fp)!=0;i++)
{
printf("\u7b2c%d\u5f20\u5361\n",i+1,car[i].carnum,car[i].studentname,car[i].studentclass);
n=n+1;
}
fclose(fp);
printf("\u76ee\u524d\u5171\u6709%d\u672c\u4e66\n",n);
printf("\u6309\u4efb\u610f\u952e\n");
getch();
}


delcar()
{
FILE *fp,*fp2;
int i;
int carnum;
char choice;
fp=fopen("car.txt","r");
fp2=fopen("bookl.txt","w");
printf("\u8bf7\u8f93\u5165\u4f60\u8981\u5220\u9664\u7684\u5361\u53f7\n");
printf("\u5982\u679c\u4f60\u8f93\u5165\u7684\u5361\u53f7\u5b58\u5728\uff0c\u7cfb\u7edf\u81ea\u52a8\u5220\u9664\u8be5\u4fe1\u606f\uff01\u5982\u679c\u4e0d\u5b58\u5728\uff0c\u7cfb\u7edf\u4e0d\u505a\u4efb\u4f55\u6539\u52a8\n");
scanf("%d",&carnum);
for(i=0;fread(&car[i],sizeof(struct car),1,fp)!=0;i++)
{
if(car[i].carnum!=carnum)
{
fwrite(&car[i],sizeof(struct car),1,fp2);
}
}
fclose(fp);
fclose(fp2);
printf("\u662f\u5426\u771f\u7684\u8981\u5220\u9664\u8be5\u5361\uff1f\u5220\u9664\u540e\u8be5\u4e66\u7c4d\u7684\u6240\u6709\u4fe1\u606f\u5c06\u65e0\u6cd5\u6062\u590d\u300aY/N\u300b\n");
scanf("%s",&choice);
if(choice=='y'||choice=='Y')
{
fp=fopen("car.txt","w");
fp2=fopen("bookl.txt","r");
for(i=0;fread(&car[i],sizeof(struct car),1,fp2)!=0;i++)
{
fwrite(&car[i],sizeof(struct car),1,fp);
}
fclose(fp);
fclose(fp2);
fp2=fopen("bookl.txt","w");
fclose(fp2);
printf("\u6309\u4efb\u610f\u952e\u8fd4\u56de\n");
getch();
return;
}
else
{
printf("\u6309\u4efb\u610f\u952e\u8fd4\u56de\n");
getch();
return;
}
}


addcar()
{
FILE *fp;
int i=0;
fp=fopen("car.txt","a+");
printf("\u8bf7\u4f60\u8f93\u5165\u5361\u53f7\n");
scanf("%d",&car[i].carnum);
printf("\u8bf7\u4f60\u8f93\u5165\u5b66\u751f\u59d3\u540d\n");
scanf("%s",car[i].studentname);
printf("\u8bf7\u4f60\u8f93\u5165\u73ed\u7ea7\n");
scanf("%d",&car[i].studentclass);
fwrite(&car[i],sizeof(struct car),1,fp);
fclose(fp);
printf("\u8f93\u5165\u5b8c\u6bd5\uff0c\u4efb\u610f\u952e\u8fd4\u56de\n");
getch();
}

#include <stdio.h>
#include <stdlib.h>
#include <conio.h>

struct BOOK
{
int id,usr[10],total,store,days[10];
char name[31],author[21];
}books[100];
/*上面是结构体的定义,用于存放书籍及借书的信息。*/

void page_title(char *menu_item)
{
clrscr();
printf(">>> 图 书 管 理 系 统 <<<\n\n- %s -\n\n",menu_item);
}
/*上面是打印页眉的函数,同时通过参数menu_item,可以显示当前的状态。*/

void return_confirm(void)
{
printf("\n按任意键返回……\n");
getch();
}
/*上面是返回前请求确认的函数,以便在返回前观察结果*/

int search_book(void)
{
int n,i;
printf("请输入图书序号:");
scanf("%d",&i);
for(n=0;n<100;n++)
{
if(books[n].id==i)
{
printf("书名:%s\n",books[n].name);
printf("作者:%s\n",books[n].author);
printf("存数:%d of ",books[n].store);
printf("%d\n",books[n].total);
return n;
}
}
printf("\n输入错误或无效图书序号.\n");
return -1;
}
/*上面的函数是在数组中找到图书号匹配的记录,显示其信息并返
回数组下标,如果找不到相应记录则提示错误并返回-1。*/

void book_out(void)
{
int n,s,l,d;
page_title("借阅图书");
if((n=search_book())!=-1&&books[n].store>0)
{
printf("请输入借书证序号:");
scanf("%d",&s);
printf("请输入可借天数:");
scanf("%d",&d);
for(l=0;l<10;l++)
{
if(books[n].usr[l]==0)
{
books[n].usr[l]=s;
books[n].days[l]=d;
break;
}
}
books[n].store--;
}
if(n!=-1&&books[n].store==0) printf("此书已经全部借出.\n");
return_confirm();
}
/*上面是借书的函数,首先调用找书函数*/

void book_in(void)
{
int n,s,l;
page_title("归还图书");
if((n=search_book())!=-1&&books[n].store<books[n].total)
{
printf("借阅者图书证列表:\n");
for(l=0;l<10;l++)
if (books[n].usr[l]!=0)
printf("[%d] - %d天\n",books[n].usr[l],books[n].days[l]);
printf("请输入借书证序号:");
scanf("%d",&s);
for(l=0;l<10;l++)
{
if(books[n].usr[l]==s)
{
books[n].usr[l]=0;
books[n].days[l]=0;
break;
}
}
books[n].store++;
}
if(n!=-1&&books[n].store==books[n].total)
printf("全部入藏.\n");
return_confirm();
}

void book_add(void)
{
int n;
page_title("注册新书");
for(n=0;n<100;n++)
if(books[n].id==0) break;
printf("序号:");
scanf("%d",&books[n].id);
printf("书名:");
scanf("%s",&books[n].name);
printf("作者:");
scanf("%s",&books[n].author);
printf("数量:");
scanf("%d",&books[n].total);
books[n].store=books[n].total;
return_confirm();
}
void book_del(void)
{
int n;
page_title("注销旧书");
if((n=search_book())!=-1) books[n].id=0;
printf("该书已注销.\n");
return_confirm();
}

void main(void)
{
menu: page_title("操作选单");
printf("请用数字键选择操作\n\n");
printf("1 借阅图书\n2 归还图书\n\n");
printf("3 注册新书\n4 注销旧书\n\n");
printf("\n0 退出\n");
switch(getch())
{
case '1' : book_out();break;
case '2' : book_in();break;
case '3' : book_add();break;
case '4' : book_del();break;
case '0' : exit(0);
}
goto menu;
}
{
int n;
page_title("广?症慕");
if((n=search_book())!=-1) books[n].id=0;
printf("乎慕厮广?.\n");
return_confirm();
}

void main(void)
{
menu: page_title("荷恬佥汽");
printf("萩喘方忖囚佥夲荷恬\n\n");
printf("1 処堋夕慕\n2 拷珊夕慕\n\n");
printf("3 广过仟慕\n4 广?症慕\n\n");
printf("\n0 曜竃\n");
switch(getch())
{
case '1' : book_out();break;
case '2' : book_in();break;
case '3' : book_add();break;
case '4' : book_del();break;
case '0' : exit(0);
}
goto menu;
}

别说是10个积分,就是10人民币都不可能给你做啊,这可是整套系统了,服务器端,客户端,数据库,工程量不小诶.

  • C璇█鍥句功淇℃伅绠$悊绯荤粺,鍏蜂綋鎿嶄綔鍖呮嫭鍥句功淇℃伅鐨勫綍鍏ャ佹坊鍔犮佹樉绀恒佹煡鎵...
    绛旓細cout<<"鍥句功棣嗕腑姝や功淇℃伅濡備笅:"<<endl;cout<<result->first<<":"<<result->second<<endl;} void Library::delete_book_num(string A){ map<string,string>::iterator result =find(book_num.begin(), book_num.end(), A);if(result==book_num.end())cout<<"鍥句功棣嗕腑鏌ユ棤姝や功!"<<...
  • 姹c璇█缂栫▼鍥句功绠$悊
    绛旓細printf(" 娆㈣繋杩涘叆鍥句功绠$悊绯荤粺!\n\n");int choice,k=1;while(k==1){ printf(" 璇烽夋嫨浣犻渶瑕佺殑鎿嶄綔\n\n"); printf(" 1.鏂颁功鍏ュ簱\n"); printf(" 2.鎻掑叆鏂板涔︽湰\n"); printf(" 3.鍒犻櫎鎸囧畾涔︽湰\n"); printf(" 4.鏄剧ず鎵鏈変功鏈琝n"); printf(" 5.鏌ヨ涔︽湰\n"); printf(" 6.绠$悊(鍊熶功鎴...
  • 鐢–璇█缂涓涓畝鍗曠殑鍥句功绠$悊绯荤粺(鍖呮嫭鍊熼槄鏌ヨ杩樹功涓夐儴鍒)(瀛︾敓浣滀笟...
    绛旓細s.number,s.name,s.price,s.count,s.time,s.date); row(s); }}杩欐槸鎴戝ぇ涓鏃跺欏仛鐨勫ぇ浣滀笟锛岃櫧鐒朵笉鏄鍥句功绠$悊绯荤粺锛屼綘鍙鏀规敼灏辫
  • C璇█绋嬪簭璁捐;鍥句功淇℃伅绠$悊绯荤粺;鍥句功淇℃伅鍖呮嫭:涔﹀彿銆佷功鍚嶃佷綔鑰呭悕...
    绛旓細printf("鍊熼槄鑰鍥句功璇佸垪琛:\n");
  • 姹傛暀鍥句功棣 绠$悊绯荤粺鐨勯棶棰 C璇█ 璋簡
    绛旓細{printf("璇诲彇澶辫触");exit(0);}fclose(p);鎴戝啓杩囦綘杩欎釜绯荤粺,浣犳湁浠涔堥棶棰樺彲浠ユ壘鎴,鎴戝彲浠ュ府浣 鏈洖绛旇缃戝弸閲囩撼 宸茶禐杩 宸茶俯杩< 浣犲杩欎釜鍥炵瓟鐨勮瘎浠锋槸? 璇勮 鏀惰捣 鍏朵粬绫讳技闂 2014-12-04 姹備釜浜鍥句功绠$悊绯荤粺c璇█浠g爜,瀹炵幇鍔熻兘瑙侀棶棰樿ˉ鍏 3 2014-06-10 姹傚浘涔﹂绠$悊绯荤粺绋嬪簭(c璇█) 4 2012-09...
  • 姹C璇█缂栧啓鍥句功绠$悊绯荤粺
    绛旓細const int Maxb=10000; //鏈澶氱殑鍥句功 class Book//鍥句功绫 { int tag; //鍒犻櫎鏍囪1:宸插垹0:鏈垹 int number; //ISBN涔﹀彿 char name[20]; //涔﹀悕 char author[10]; //涓荤紪 char number2[10];//鐗堟 char position[20];//鍑虹増绀 char time[20];//鍑虹増...
  • 姹C璇█鍥句功绠$悊绯荤粺婧愪唬鐮
    绛旓細printf("鈹 9. 鏌ョ湅鍏ㄩ儴瓒呮湡鏈繕鐨勫浘涔︺ 鈹俓n"); printf("鈹 0. 閫鍑鍥句功绠$悊绯荤粺銆 鈹俓n"); printf("鈹 鈹俓n"); printf("鈹椻斺斺旇閫夋嫨浣犻渶瑕佺殑鎿嶄綔鈥斺斺斺敍\n");}int main(){ ook Bo; lend Lin; char BNum[20]; char CNum[20]; printf("---娆 杩庤繘鍏ュ浘涔︾鐞嗙郴缁!---\n\...
  • 缂栫▼,鐢╟璇█缂栬緫
    绛旓細缂栫▼,鐢╟璇█缂栬緫 鍥句功绠$悊绯荤粺鍔熻兘瑕佹眰:閫夋嫨1:鍒涘缓鍥句功淇℃伅銆備緥濡傚悜鍥句功妗f涓坊鍔犲浘涔﹀熀鏈俊鎭:ISBN鍙枫佷功鍚嶃佸嚭鐗堢ぞ銆佸嚭鐗堟棩鏈熴佷綔鑰呫佸浘涔︾储寮曞彿(鎸変笓涓氭潵鍒嗙被)銆佸熼槄娆℃暟銆佸熼槄浜哄憳銆佹槸鍚﹀湪搴... 鍥句功绠$悊绯荤粺鍔熻兘瑕佹眰:閫夋嫨1:鍒涘缓鍥句功淇℃伅銆備緥濡傚悜鍥句功妗f涓坊鍔犲浘涔﹀熀鏈俊鎭:ISBN鍙枫佷功鍚嶃佸嚭鐗堢ぞ銆佸嚭鐗堟棩鏈熴...
  • 鐢–璇█璁捐鍜屽疄鐜颁竴涓鍥句功淇℃伅绠$悊绯荤粺鈥,婊¤冻浠ヤ笅瑕佹眰:
    绛旓細鐢–璇█璁捐鍜屽疄鐜颁竴涓鍥句功淇℃伅绠$悊绯荤粺鈥,婊¤冻浠ヤ笅瑕佹眰: 20 1.绯荤粺浠ヨ彍鍗曟柟寮忓伐浣;2.浣跨敤閾捐〃瀵瑰浘涔︿俊鎭繘琛岀鐞嗗拰缁存姢;3.浣跨敤浜岃繘鍒舵枃浠跺湪纾佺洏涓婁繚瀛樺浘涔﹁褰曚俊鎭;4.閾捐〃涓瘡涓粨鐐瑰寘鎷滃浘涔︾紪鍙枫佷功鍚嶃佷綔鑰呫佸嚭鐗堢ぞ銆佸嚭鐗堟椂闂淬佷环鏍尖濆熀... 1.绯荤粺浠ヨ彍鍗曟柟寮忓伐浣;2.浣跨敤閾捐〃瀵瑰浘涔︿俊鎭繘琛岀鐞嗗拰缁存姢;3...
  • 鎬ユ眰c璇█绋嬪簭璁捐 鍥句功绠$悊绯荤粺 婧愪唬鐮
    绛旓細void save(structbook *p); //淇濆瓨鍥句功淇℃伅 void read(structbook *p); //璇诲彇鍥句功淇℃伅 void search(structbook *p); //鏌ユ壘鍥句功淇℃伅 void del(structbook *p); //鍒犻櫎鍥句功淇℃伅 void borrow(structbook *p); //鍊熼槄鍥句功 void retur(structbook *p); //褰掕繕鍥句功 void main()...
  • 扩展阅读:c++设计图书管理系统 ... c++实现图书管理系统 ... python编写图书管理系统 ... c语言写图书管理系统 ... 图书管理系统课程设计 ... 图书管理系统毕业论文 ... 图书管理系统完整代码 ... 写一个图书管理系统 ... 大一c++语言图书管理系统 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网