C语言辅导:图书管理程序

文章作者 100test 发表时间 2007:10:31 13:59:02
来源 100Test.Com百考试题网


#include
#include
#include
#include
#include
#define STACK_INIT_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].
printf("请你输入你的卡号\n").
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.
}

相关文章


论坛典型疑难地一个处理办法
设计浏览器不弹出警告地ActiveX控件
可配置颜色地静态控件、单选按钮等
Windows下实时行式打印系统设计
C语言辅导:图书管理程序
C语言辅导:电话本管理系统
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛