音乐.docx

上传人:b****6 文档编号:3048605 上传时间:2022-11-17 格式:DOCX 页数:27 大小:20.12KB
下载 相关 举报
音乐.docx_第1页
第1页 / 共27页
音乐.docx_第2页
第2页 / 共27页
音乐.docx_第3页
第3页 / 共27页
音乐.docx_第4页
第4页 / 共27页
音乐.docx_第5页
第5页 / 共27页
点击查看更多>>
下载资源
资源描述

音乐.docx

《音乐.docx》由会员分享,可在线阅读,更多相关《音乐.docx(27页珍藏版)》请在冰豆网上搜索。

音乐.docx

音乐

#include

#include

#include

#include

#include

#defineSTACK_INIT_SIZE10

#defineOK1

#defineTRUE1

#defineFALSE0

#defineERROR0

structstudent/*定义学生类型,用于存放借出的书籍*/

{

intcarnum;//学生卡号为0-1的数字

charlendbook[10];

}student[30000];

structemploy/*定义职工类型*/

{

intemploynum;

charemployname[20];

intemployage;

charemploysex[2];

charemployleve[10];

longintemploytage;

}employ[100];

structbook/*定义书的类型*/

{

intbooknum;

charbookname[20];

charbookpublisher[30];

charbooktype[10];

intbookmonth;

intbookday;

intbookyear;

intbookprice;

charbookcreat[20];

intturefalse;/*用于借书和还书模块判断一本书是否借出的条件*/

}book[100000000];

structcar/*借书卡的数据类型*/

{

intcarnum;//卡号

charstudentname[20];//学生姓名

intstudentclass;//学生所在班级

}car[30000];

/*还书函数*/

huanbook()

{

FILE*fp,*fp2;/*定义两个文件指针,fp2用于修改数据时设立临时文件用,防止数据遭破坏*/

inti,n;

intcarnum;

charlendbook[20];

printf("请你输入你的卡号\n");

scanf("%d",&carnum);

fp=fopen("car.txt","r");/*读取卡号记录*/

for(i=0;fread(&car[i],sizeof(structcar),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(structstudent),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(structstudent),1,fp)!

=0;i++)

{

if(strcmp(student[i].lendbook,lendbook)==0)

{

continue;/*删除还掉的书的借书记录*/

}

fwrite(&student[i],sizeof(structstudent),1,fp2);/*写入原来没还的书的记录*/

}

fclose(fp);

fclose(fp2);

fp=fopen("record.txt","w");

fp2=fopen("bookl.txt","r");

for(i=0;fread(&student[i],sizeof(structstudent),1,fp2)!

=0;i++)

{

fwrite(&student[i],sizeof(structstudent),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(structbook),1,fp)!

=0;i++)/*将书的记录写入临时文件,防止因为修改信息破坏以前的记录*/

{

if(i==n)

{

book[i].turefalse=1;

fwrite(&book[i],sizeof(structbook),1,fp2);/*将还的书的原来状态设为无人借阅的*/

continue;

}

fwrite(&book[i],sizeof(structbook),1,fp2);

}

fclose(fp);

fclose(fp2);

fp=fopen("book.txt","w");

fp2=fopen("bookl.txt","r");

for(i=0;fread(&book[i],sizeof(structbook),1,fp2)!

=0;i++)

{

fwrite(&book[i],sizeof(structbook),1,fp);/*将临时文件写回*/

}

fclose(fp);

fclose(fp2);

fopen("bookl.txt","w");/*清临时文件*/

fclose(fp2);

printf("还书完毕,按任意键返回\n");

getch();

return1;

}

}

printf("你没有借过这样的书,任意键返回\n");/*出错提示*/

fclose(fp);

getch();

return0;

}

}

printf("系统没这样的卡,请和管理员联系,按任意键返回\n");/*出错提示*/

fclose(fp);

getch();

}

/*图书查询函数(按书名)*/

findbook()

{

FILE*fp;

charbookname[20];

intture,i;

fp=fopen("book.txt","r");

printf("请输入你要查找的书名\n");

scanf("%s",bookname);

for(i=0;fread(&book[i],sizeof(structbook),1,fp)!

=0;i++)

{

if(strcmp(bookname,book[i].bookname)==0)

{

if(book[i].turefalse==1)

{

printf("这本书的详细资料是:

%d%s%s此书现在无人借阅\n按任意键返回\n",book[i].booknum,book[i].bookname,book[i].bookcreat);

}

else{printf("这本书已经有人借出\n");fclose(fp);return0;}

fclose(fp);

returnFALSE;

}

}

printf("没有你要查询的书籍\n");

fclose(fp);

returnFALSE;

}

/*图书查询函数(按作者姓名)*/

findbook1()

{

FILE*fp;

charbookcreat[20];

intture,i;

fp=fopen("book.txt","r");

printf("请输入你要查找的作者名\n");

scanf("%s",bookcreat);

for(i=0;fread(&book[i],sizeof(structbook),1,fp)!

=0;i++)

{

if(strcmp(bookcreat,book[i].bookcreat)==0)

{

if(book[i].turefalse==1)

{

printf("这本书的详细资料是:

%d%s%s此书现在无人借阅\n按任意键返回\n",book[i].booknum,book[i].bookname,book[i].bookcreat);

}

else{printf("这本书已经有人借出\n");fclose(fp);return0;}

fclose(fp);

returnFALSE;

}

}

printf("没有你要查询的书籍\n");

fclose(fp);

returnFALSE;

}

/*借出书籍统计函数*/

lendcount()

{

FILE*fp;

inti,n=0;

fp=fopen("record.txt","r");

for(i=0;fread(&student[i],sizeof(structstudent),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();

returnn;

}

/*图书查询系统函数*/

chabook()

{

charch5;

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':

findbook1();getch();break;

case'0':

break;

default:

printf("无此操作\n");getch();break;

}

}while(ch5!

='0');

returnFALSE;

}

//学生管理系统

/*借书函数*/

lendbook()

{

FILE*fp,*fp2;

inti,n;

intcarnum;

printf("请你输入你的卡号:

\n");

scanf("%d",&carnum);

fp=fopen(

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 法律文书 > 调解书

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1