国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

圖書管理程序

2019-11-17 05:31:20
字體:
來源:轉載
供稿:網友
#include<stdio.h>
#include<string.h>
#include<conio.h>
#include<stdlib.h>
#include<ctype.h>
#define STACK_IN99v_SIZE 10
#define OK 1
#define TRUE 1
#define FALSE  0
#define ERROR 0
strUCt student           /*定義學生類型,用于存放借出的書籍*/
{
int carnum;
char lendbook[10];
}student[1000];
struct employ            /*定義職工類型*/
{
int employnum;
char employname[15];
int employage;
char employsex[2];
char employleve[10];
long int employtage;
}employ[50];
struct book              /*定義書的類型*/
{
int booknum;
char bookname[10];
char bookcreat[10];
int turefalse;           /*用于借書和還書模塊判定一本書是否借出的條件*/
}book[1000];
struct car               /*借書卡的數據類型*/
{
int carnum;
char studentname[10];
int studentclass;
}car[100];huanbook()               /*還書函數*/
{
FILE *fp,*fp2;           /*定義兩個文件指針,fp2用于修改數據時設立臨時文件用,防止數據遭破壞*/
int i,n;
int carnum;
char lendbook[10];
scanf("%d",&carnum);
fp=fopen("car.txt","r");       /*讀取卡號記錄*/
for(i=0;fread(&car[i],sizeof(struct car),1,fp)!=0;i++)   /*for循環判定卡號是否存在*/
{
if(car[i].carnum==carnum)      /*卡號存在,進入下一循環*/
{
n=i;
fclose(fp);
printf("請輸入你要還的書的名字/n");
scanf("%s",lendbook);
fp=fopen("record.txt","r");
for(i=0;fread(&student[i],sizeof(struct student),1,fp)!=0;i++)   /*判定是否借閱了輸入的書*/
{
if(strcmp(student[i].lendbook,lendbook)==0)      /*借閱了該書,進入下一循環,否則出錯顯示*/
{
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;                                       /*刪除還掉的書的借書記錄*/
}
fwrite(&student[i],sizeof(struct student),1,fp2);  /*寫入原來沒還的書的記錄*/
}
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);     /*將借書記錄信息寫回*/
}
fclose(fp);
fclose(fp2);
fopen("bookl.txt","w");                    /*清臨時文件的記錄*/
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++)    /*將書的記錄寫入臨時文件,防止因為修改信息破壞以前的記錄*/
{
if(i==n)
{
book[i].turefalse=1;
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("還書完畢,按任意鍵返回/n");
getch();
return;
}
}
printf("你沒有借這樣的書,不要耍我,任意鍵返回/n");    /*出錯提示*/
fclose(fp);
getch();
return;
}
}
printf("系統沒這樣的卡,和治理員聯系,按任意鍵返回/n");   /*出錯提示*/
fclose(fp);
getch();
}
lendcount()             /*其他的自己看就懂了,不行也可以
QQ聯系:258032791,c++版本要的話跟我說,愿意交愛好編程的交友,畢業沒時間了,找工作忙,有些模塊沒寫,發現什么問題自己改,*/
{
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("卡號:%d 借出的書籍:%s /n",student[i].carnum,student[i].lendbook);
n=n+1;
}
fclose(fp);
printf("目前共有%d本書借出/n",n);
printf("按任意鍵/n");
getch();
}
chabook()
{
char ch5;
do
{
printf("---------------歡迎進入圖書查詢系統!--------------/n");
printf("               1:<按書名查找>/n");
printf("               2:<按作者查找>/n");
printf("               0:<返回>/n");
printf("請輸入0--2,其他輸入非法!/n");
scanf("%s",&ch5);
switch(ch5)
{
case '1':findbook();getch();break;
case '2':printf("按作者查找,有時間再寫/n");getch();break;
case '0':break;
default:printf("無此操作/n");getch();break;
}
}while(ch5!='0');
}
lendbook()
{
FILE *fp,*fp2;
int i,n;
int carnum;
printf("請你輸入你的卡號/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("請輸入你要借閱的書的名字/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("對不起,此書有人借出,請借其他書/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("借書完畢,按任意鍵返回/n");
getch();
return;
}
}
printf("不存在這樣的書,任意鍵返回/n");
fclose(fp);
getch();
return;
}
}
printf("你的卡號不存在,請申請新卡,按任意鍵返回/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("第%d張卡<卡號:%d 姓名:%s 班級:%d>/n",i+1,car[i].carnum,car[i].studentname,car[i].studentclass);
n=n+1;
}
fclose(fp


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 浦县| 梁平县| 大埔区| 紫金县| 安徽省| 衡阳市| 赤水市| 通州区| 株洲市| 新宁县| 阳江市| 阿城市| 来安县| 桐庐县| 海盐县| 曲周县| 丹寨县| 监利县| 黎城县| 阳春市| 邢台县| 大丰市| 抚州市| 仁怀市| 玉门市| 咸阳市| 宜宾市| 东丰县| 延安市| 双城市| 托里县| 南安市| 朔州市| 越西县| 鄱阳县| 建水县| 游戏| 大余县| 龙里县| 锦屏县| 林口县|