c语言编写图书管理系统内容摘要:

t:printf(Error\n)。 getch()。 break。 } 11 }while(ch5!=39。 039。 )。 } findbook() /*„„„„查找图书„„„„ */ { FILE *fp。 char bookname[10]。 int ture,i。 fp=fopen(,r)。 printf(Please input ni yao cha zhao de shu ming\n)。 /*请输入你要查找的书名 */ scanf(%s,bookname)。 for(i=0。 fread(amp。 book[i],sizeof(struct book),1,fp)!=0。 i++) { if(strcmp(bookname,book[i].bookname)==0) { if(book[i].turefalse==1) { printf(zhe ben shu de xiang xi zi liao shi :\n Num%d\tbookname%s\tzuo zhe%s\n ci shu xian zai wu ren jie yue\n,book[i].booknum,book[i].bookname,book[i].bookcreat)。 /*这本书的详细资料是 ——— 此书现在无人借阅 */ } else {printf(zhe ben shu yi you ren jie chu\n)。 fclose(fp)。 return。 } /*这本书已有人借出 */ fclose(fp)。 return。 } } printf(Sorry mei you ni yao cha xun de shu ji\n)。 /*没有你要查询的书籍 */ fclose(fp)。 return。 } lendbook() /*„„„„借阅图书„„„„ */ { FILE *fp,*fp2。 int i,n。 int carnum。 printf(Plase input your carhao\n)。 /*请输入你的卡号 */ scanf(%d,amp。 carnum)。 fp=fopen(,r)。 for(i=0。 fread(amp。 car[i],sizeof(struct car),1,fp)!=0。 i++) 12 { if(car[i].carnum==carnum) { n=i。 fclose(fp)。 printf(Please input books name\n)。 /*请输入你要借阅的书的名字 */ scanf(%s,student[n].lendbook)。 fp=fopen(,r)。 for(i=0。 fread(amp。 book[i],sizeof(struct book),1,fp)!=0。 i++) { if(strcmp(book[i].bookname,student[n].lendbook)==0) { if(book[i].turefalse==0) {printf(Sorry,gai shu yi bei jie chu!\n)。 fclose(fp)。 getch()。 return。 } /*对不起该书已被借 出 */ else fclose(fp)。 fp=fopen(,a+)。 student[n].carnum=carnum。 fwrite(amp。 student[n],sizeof(struct student),1,fp)。 fclose(fp)。 fp=fopen(,r)。 fp2=fopen(,w)。 for(i=0。 fread(amp。 book[i],sizeof(struct book),1,fp)!=0。 i++) { if(strcmp(book[i].bookname,student[n].lendbook)==0) { book[i].turefalse=0。 fwrite(amp。 book[i],sizeof(struct book),1,fp2)。 continue。 } fwrite(amp。 book[i],sizeof(struct book),1,fp2)。 } fclose(fp)。 fclose(fp2)。 fp=fopen(,w)。 fp2=fopen(,r)。 for(i=0。 fread(amp。 book[i],sizeof(struct book),1,fp2)!=0。 i++) { fwrite(amp。 book[i],sizeof(struct book),1,fp)。 } fclose(fp)。 fclose(fp2)。 fopen(,w)。 fclose(fp2)。 13 printf(OK, Enter\n)。 /*借书完毕,按任意键返回 */ getch()。 return。 } } printf(Sorry,mei you zhe ben shu \n)。 /*对不起,没有这本书 */ fclose(fp)。 getch()。 return。 } } printf(Error,mei you gai ka,please shen qing xin ka\n)。 /*无此卡号,请申请新卡 */ fclose(fp)。 getch()。 } huanbook() /*„„„„还书函数„„„„ */ { FILE *fp,*fp2。 /*定义两个文件指针, fp2 用于修改数据时设立临时文件用,防止数据遭破坏 */ int i,n。 int carnum。 char lendbook[10]。 printf(Please input your carhao\n)。 /*请输入你的卡号 */ scanf(%d,amp。 carnum)。 fp=fopen(,r)。 /*读取卡号记录 */ for(i=0。 fread(amp。 car[i],sizeof(struct car),1,fp)!=0。 i++) /*用 For 循环语句判断卡号是否存在 */ { if(car[i].carnum==carnum) { n=i。 fclose(fp)。 printf(Please input your name to the book also\n)。 /*请输入你要还的书的名字 */ scanf(%s,lendbook)。 fp=fopen(,r)。 for(i=0。 fread(amp。 student[i],sizeof(struct student),1,fp)!=0。 i++) /*判断是否借阅了输入的书 */ { if(strcmp(student[i].lendbook,lendbook)==0) /*借阅了该书,进入下一循环,否则出错显示 */ { fclose(fp)。 fp=fopen(,r)。 fp2=fopen(,w)。 for(i=0。 fread(amp。 student[i],sizeof(struct student),1,fp)!=0。 i++) 14 { if(strcmp(student[i].lendbook,lendbook)==0) { continue。 /*删除还掉的书的借书记录 */ } fwrite(amp。 student[i],sizeof(struct student),1,fp2)。 /*写入原来没还的书的记录 */ } fclose(fp)。 fclose(fp2)。 fp=fopen(,w)。 fp2=fopen(,r)。 for(i=0。 fread(amp。 student[i],sizeof(struct student),1,fp2)!=0。 i++) { fwrite(amp。 student[i],sizeof(struct student),1,fp)。 /*将借书记录信息写回 */ } fclose(fp)。 fclose(fp2)。 fopen(,w)。 /*清临时文件的记录 */ fclose。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。