![]() |
#2
一个小白2012-06-27 21:10
小弟又调试了下可以运行了 为甚么输入数据后再打开出现的是BOOK无法打开程序如下 麻烦各位高手了 #include<stdio.h>
#include<string.h> #include<stdlib.h> #include<conio.h> #define size 100 void print_num0(); void print_num1(); void print_num2(); void print_num3(); void print_num4(); void print_num5(); void print_num6(); void print_num7(); void print_num8(); void print_num9(); int main() { printf("******************************************************************************\n"); printf(" 欢迎进入图书管理系统\n"); printf("********************************************************************************\n"); char name[]="admin",passw[]="aaa"; char pname[]="guibin",ppassw[]="aaa"; char usern[10]; char userp[10]; char c; int j=0; int l=0; int getch(); printf("请输入您的姓名:"); gets(usern); printf("请输入您的密码:"); for(j=0;j!=10;++j); {userp[j]='\0';} while((c=getch())!=13) { userp[l++]=c; passw[j++]=c; putchar('*'); } userp[l]='\0'; l=0; printf("\n"); if(strcmp(name,usern)==0&&strcmp(userp,passw)==0) {printf("登陆成功!\n你是管理员\n"); print_num1(); } else if(strcmp(name,pname)==0&&strcmp(userp,ppassw)==0) {printf("登陆成功!\n你是普通会员\n");print_num2();} else printf("登录失败\n"); return 0; } void print_num0() { system("cls"); printf(" ==================================================\n"); printf(" = =\n"); printf(" = =\n"); printf(" = 欢 迎 进 入 图 书 浏 览 界 面 =\n"); printf(" = =\n"); printf(" = =\n"); printf(" ==================================================\n\n"); printf(" ==========1.输入图书名浏览相应图书信息========\n\n"); printf(" ================2.浏览结束====================\n\n"); char grade; printf(" 您的选择:"); scanf("%s",&grade); switch(grade) {case'1':printf("输入图书名浏览相应图书信息\n");print_num2(); case'2':printf("浏览结束\n");break; } } void print_num1() { printf("==1.初始化图书信息=========2.增加图书信息=====================\n"); printf("==3.修改图书信息===========4.删除图图书信息===================\n"); printf("==5.按普通价格从高到低浏览图书信息============================\n"); printf("==6.增加会员信息==============================================\n"); printf("==7.删除会员信息===========8.按名字浏览会员信息===============\n"); printf("================0.程序结束====================================\n"); char n; printf("请输入您的选择:"); scanf("%s",&n); switch(n) { case'1':printf("初始化图书信息\n");print_num3();break; case'2':printf("增加图书信息\n");print_num4();break; case'3':printf("修改图书信息\n");print_num5();break; case'4':printf("删除图书信息\n");print_num6();break; case'5':printf("按普通价格从高到低浏览图书信息\n");print_num7();break; case'6':printf("增加会员信息\n");print_num8();break; case'7':printf("删除会员信信息\n");print_num9();break; case'8':printf("按名字浏览会员信息\n");print_num0();break; case'0':printf("程序结束\n");break; } } typedef struct { long number; char name[100]; float price; }Book; typedef struct { long number; char name[9]; char mpass[7]; }memeber; void print_num3() { FILE *fp; Book boo,show; char bookdat[40]="Book"; int count=0; fp=fopen("bookdat","wb+"); if(fp==NULL) { printf("文件%s打不开\n",bookdat); exit(1); } printf("请输入图书的序号、名称、价格\n"); while(count<=size) { printf("\n请输入图书的序号:"); scanf("%ld",&boo.number); if(boo.number==0) break; printf("请输入图书的名称:"); scanf("%s",boo.name); printf("请输入图书的价格:"); scanf("%f",&boo.price); if(fwrite(&boo,sizeof(Book),1,fp)!=1) { printf("文件%s打不开\n",bookdat); exit(1); } count++; } if(count>size) printf("输入数据已满\n"); fclose(fp); printf("所输入图书信息如下:\n"); fp=fopen("bookdat","rb"); if(fp==NULL) { printf("文件%s打不开\n",bookdat); exit(1); } printf("序号\t名称\t价格\n"); while(fread(&show,sizeof(Book),1,fp)!=0) printf("%ld\t%s\t%.1f\t%.1f\n",show.number,show.name,show.price); fclose(fp); } void print_num4() { FILE *fp; Book boo,show; char bookdat[40]="Book"; int n; int count=0; fp=fopen("bookdat","wb+"); if(fp==NULL) { printf("文件%s打不开\n",bookdat); exit(1); } printf("请输入图书的序号,查询是否存在\n"); scanf("%d,&n"); if(n==boo.number) { printf("此号已存在!!!请重新输入\n"); } else printf("此号不存在.请输入图书的序号、名称、价格\n"); while(count<=size) { printf("\n请输入图书的序号:"); scanf("%ld",&boo.number); if(boo.number==0) break; printf("请输入图书的名称:"); scanf("%s",boo.name); printf("请输入图书的价格:"); scanf("%f",&boo.price); if(fwrite(&boo,sizeof(Book),1,fp)!=1) { printf("文件%s打不开\n",bookdat); exit(1); } count++; } if(count>size) printf("输入数据已满\n"); fclose(fp); printf("所输入图书信息如下:\n"); fp=fopen("bookdat","rb"); if(fp==NULL) { printf("文件%s打不开\n",bookdat); exit(1); } printf("序号\t名称\t价格\n"); while(fread(&show,sizeof(Book),1,fp)!=0) printf("%ld\t%s\t%.1f\t%.1f\n",show.number,show.name,show.price); fclose(fp); } void print_num5() { FILE *fp; Book boo,s[size],show,temp; char name[9],next,bookdat[40]="Book"; int recnumber,i,result=0; float price; begin: printf("请输入要修改图书价格的名称"); scanf("%s",name); fp=fopen(bookdat,"rb"); if(fp==NULL) { printf("文件%s打不开\n",bookdat); exit(1); } while(feof(fp)==0) { if(fread(&temp,sizeof(Book),1,fp)!=0) { if(strcmp(temp.name,name)==0) result=1; } } if(result==0) { printf("要修改的图书%s不存在\n",name); fclose(fp); goto begin; } fp=fopen(bookdat,"rb"); if(fp==NULL) { printf("文件%s打不开\n",bookdat); exit(1); } recnumber=0; while((fread(&boo,sizeof(Book),1,fp))!=0) { if(strcmp(boo.name,name)==0) { printf("请输入要修改图书%s的价格",name); scanf("%f",&price); s[recnumber].number=boo.number; strcpy(s[recnumber].name,boo.name); s[recnumber].price=price; recnumber++; } else { s[recnumber].number=boo.number; strcpy(s[recnumber].name,boo.name); s[recnumber].price=boo.price; recnumber++; } } fclose(fp); fp=fopen(bookdat,"wb+"); if(fp==NULL) { printf("文件%s打不开\n",bookdat); exit(1); } for(i=0;i<recnumber;i++) { if(fwrite(&s[i],sizeof(Book),1,fp)!=1) { printf("文件%s打不开\n",bookdat); exit(1); } } fclose(fp); printf("修改成功!\n"); printf("是否继续修改(y/n)\n"); next=getchar(); if(next=='y'||next=='Y') goto begin; printf("所修改图书信息如下:\n"); fp=fopen(bookdat,"rb"); if(fp==NULL) { printf("文件%s打不开\n",bookdat); exit(1); } printf("序号\t名称\t价格\t会员价\t\n"); while(fread(&show,sizeof(Book),1,fp)!=0) printf("%ld\t%s\t%.1f\t%.1f\n",show.number,show.name,show.price); fclose(fp); } void print_num6() { FILE *fp; Book boo,s[size],show,temp; char name[10],next,bookdat[40]="Book"; int recnumber,i,result=0; begin: printf("请输入要删除图书的名字"); scanf("%s",name); fp=fopen(bookdat,"rb"); if(fp==NULL) { printf("文件%s打不开\n",bookdat); exit(1); } while(feof(fp)==0) { if(fread(&temp,sizeof(Book),1,fp)!=0) { if(strcmp(temp.name,name)==0) result=1; } } if(result==0) { printf("要删除的图书%s不存在\n",name); fclose(fp); goto begin; } fclose(fp); fp=fopen(bookdat,"rb"); if(fp==NULL) { printf("文件%s打不开\n",bookdat); exit(1); } recnumber=0; while((fread(&boo,sizeof(Book),1,fp))!=0) { if(strcmp(boo.name,name)!=0) { s[recnumber].number=boo.number; strcpy(s[recnumber].name,boo.name); s[recnumber].price=boo.price; recnumber++; } } fclose(fp); fp=fopen(bookdat,"wb+"); if(fp==NULL) { printf("文件%s打不开\n",bookdat); exit(1); } for(i=0;i<recnumber;i++) { if(fwrite(&s[i],sizeof(Book),1,fp)!=1) { printf("文件%s打不开\n",bookdat); exit(1); } } fclose(fp); printf("删除成功!\n"); printf("是否继续删除(y/n)\n"); next=getchar(); if(next=='y'||next=='Y') goto begin; printf("删除要删除的图书后如下:\n"); fp=fopen(bookdat,"rb"); if(fp==NULL) { printf("文件%s打不开\n",bookdat); exit(1); } printf("序号\t名称\t价格\t会员价\n"); while(fread(&show,sizeof(Book),1,fp)!=0) printf("%ld\t%s\t%.1f\t%.1f\n",show.number,show.name,show.price); fclose(fp); } void print_num7() { FILE *fp; char bookdat[40]="Book"; Book boo,s[size],show; int recnumber,i,j,k; fp=fopen(bookdat,"rb"); if(fp==NULL) { printf("文件%s打不开\n",bookdat); exit(1); } recnumber=0; while(fread(&boo,sizeof(Book),1,fp)!=0) { s[recnumber].number=boo.number; strcpy(s[recnumber].name,boo.name); s[recnumber].price=boo.price; recnumber++; } fclose(fp); if(recnumber>1) { for(i=0;i<recnumber-1;i++) { k=i; for(j=i+1;j<recnumber;j++) if(s[k].price<s[j].price) k=j; boo.number=s[k].number; strcpy(boo.name,s[k].name); boo.price=s[k].price; s[k].number=s[i].number; strcpy(s[k].name,s[i].name); s[k].price=s[i].price; s[i].number=boo.number; strcpy(s[i].name,boo.name); s[i].price=boo.price; } } fp=fopen(bookdat,"wb+"); if(fp==NULL) { printf("文件%s打不开\n",bookdat); exit(1); } for(i=0;i<recnumber;i++) { if(fwrite(&s[i],sizeof(Book),1,fp)!=1) { printf("文件%s打不开\n",bookdat); exit(1); } } fclose(fp); printf("浏览图书信息如下:\n"); fp=fopen(bookdat,"rb"); if(fp==NULL) { printf("文件%s打不开\n",bookdat); exit(1); } printf("序号\t名称\t价格\t会员价\n"); while(fread(&show,sizeof(Book),1,fp)!=0) printf("%ld\t%s\t%.1f\t%.1f\n",show.number,show.name,show.price); fclose(fp); } void print_num8() { FILE *fp; memeber boo,show; char bookdat[40]="memeber"; int count=0; fp=fopen(bookdat,"ab+"); if(fp==NULL) { printf("文件%s打不开\n",bookdat); exit(1); } printf("请输入会员的序号、名字、密码、权限\n"); while(count<=size) { printf("\n请输入会员的序号:"); scanf("%ld",&boo.number); if(boo.number==0) break; printf("请输入会员的名字:"); scanf("%s",boo.name); printf("请输入会员密码:"); scanf("%s",boo.mpass); if(fwrite(&boo,sizeof(memeber),1,fp)!=1) { printf("文件%s打不开\n",bookdat); exit(1); } count++; } if(count>size) printf("输入数据已满\n"); fclose(fp); printf("所输入图书信息如下:\n"); fp=fopen(bookdat,"rb"); if(fp==NULL) { printf("文件%s打不开\n",bookdat); exit(1); } printf("序号\t姓名\t密码\n"); while(fread(&show,sizeof(memeber),1,fp)!=0) printf("%ld\t%s\t%s\t%d\n",show.number,show.name,show.mpass); fclose(fp); } void print_num9() { FILE *fp; memeber boo,s[size],show,temp; char name[10],next,bookdat[40]="memeber"; int recnumber,i,result=0; begin: printf("请输入要删除会员信息的名字"); scanf("%s",name); fp=fopen(bookdat,"rb"); if(fp==NULL) { printf("文件%s打不开\n",bookdat); exit(1); } while(feof(fp)==0) { if(fread(&temp,sizeof(memeber),1,fp)!=0) { if(strcmp(temp.name,name)==0) result=1; } } if(result==0) { printf("要删除的会员%s不存在\n",name); fclose(fp); goto begin; } fclose(fp); fp=fopen(bookdat,"rb"); if(fp==NULL) { printf("文件%s打不开\n",bookdat); exit(1); } recnumber=0; while((fread(&boo,sizeof(memeber),1,fp))!=0) { if(strcmp(boo.name,name)!=0) { s[recnumber].number=boo.number; strcpy(s[recnumber].name,boo.name); strcpy(s[recnumber].mpass,boo.mpass); recnumber++; } } fclose(fp); fp=fopen(bookdat,"wb+"); if(fp==NULL) { printf("文件%s打不开\n",bookdat); exit(1); } for(i=0;i<recnumber;i++) { if(fwrite(&s[i],sizeof(memeber),1,fp)!=1) { printf("文件%s打不开\n",bookdat); exit(1); } } fclose(fp); printf("删除成功!\n"); printf("是否继续删除(y/n)\n"); next=getchar(); if(next=='y'||next=='Y') goto begin; printf("删除信息后会员信息如下:\n"); fp=fopen(bookdat,"rb"); if(fp==NULL) { printf("文件%s打不开\n",bookdat); exit(1); } printf("序号\t姓名\t密码\n"); while(fread(&show,sizeof(memeber),1,fp)!=0) printf("%ld\t%s\t%s\t%d\n",show.number,show.name,show.mpass); fclose(fp); } void print_num2() { FILE *fp; char bookdat[40]="memeber"; memeber boo,s[size],show; int recnumber,i,j,k; fp=fopen(bookdat,"rb"); if(fp==NULL) { printf("文件%s打不开\n",bookdat); exit(1); } recnumber=0; while(fread(&boo,sizeof(memeber),1,fp)!=0) { s[recnumber].number=boo.number; strcpy(s[recnumber].name,boo.name); strcpy(s[recnumber].mpass,boo.mpass); recnumber++; } fclose(fp); if(recnumber>1) { for(i=0;i<recnumber-1;i++) { k=i; for(j=i+1;j<recnumber;j++) if(strcmp(s[k].name,s[j].name)>0) k=j; boo.number=s[k].number; strcpy(boo.name,s[k].name); strcpy(boo.mpass,s[k].mpass); s[k].number=s[i].number; strcpy(s[k].name,s[i].name); strcpy(s[k].mpass,s[i].mpass); s[i].number=boo.number; strcpy(s[i].name,boo.name); strcpy(s[i].mpass,boo.mpass); } } fp=fopen(bookdat,"wb+"); if(fp==NULL) { printf("文件%s打不开\n",bookdat); exit(1); } for(i=0;i<recnumber;i++) { if(fwrite(&s[i],sizeof(memeber),1,fp)!=1) { printf("文件%s打不开\n",bookdat); exit(1); } } fclose(fp); printf("浏览会员信息如下:\n"); fp=fopen(bookdat,"rb"); if(fp==NULL) { printf("文件%s打不开\n",bookdat); exit(1); } printf("序号\t姓名\t密码\t权限\n"); while(fread(&show,sizeof(memeber),1,fp)!=0) printf("%ld\t%s\t%s\t%d\n",show.number,show.name,show.mpass); fclose(fp); } |

#include<string.h>
#include<stdlib.h>
#include<conio.h>
#define size 100
void print_num0();
void print_num1();
void print_num2();
void print_num3();
void print_num4();
void print_num5();
void print_num6();
void print_num7();
void print_num8();
void print_num9();
void print_num11();
int main()
{
printf("******************************************************************************\n");
printf(" 欢迎进入图书管理系统\n");
printf("********************************************************************************\n");
char name[]="admin",passw[]="aaa";
char pname[]="guibin",ppassw[]="aaa";
char usern[10];
char userp[10];
char c;
int j=0;
int l=0;
int getch();
printf("请输入您的姓名:");
gets(usern);
printf("请输入您的密码:");
for(j=0;j!=10;++j);
{userp[j]='\0';}
while((c=getch())!=13)
{
userp[l++]=c;
passw[j++]=c;
putchar('*');
}
userp[l]='\0';
l=0;
printf("\n");
if(strcmp(name,usern)==0&&strcmp(userp,passw)==0)
{printf("登陆成功!\n你是管理员\n");
print_num1();
}
else if(strcmp(name,pname)==0&&strcmp(userp,ppassw)==0)
{printf("登陆成功!\n你是普通会员\n");print_num2();}
else printf("登录失败\n");
return 0;
}
void print_num0()
{
system("cls");
printf(" ==================================================\n");
printf(" = =\n");
printf(" = =\n");
printf(" = 欢 迎 进 入 图 书 浏 览 界 面 =\n");
printf(" = =\n");
printf(" = =\n");
printf(" ==================================================\n\n");
printf(" ==========1.输入图书名浏览相应图书信息========\n\n");
printf(" ================2.浏览结束====================\n\n");
char grade;
printf(" 您的选择:");
scanf("%s",&grade);
switch(grade)
{case'1':printf("输入图书名浏览相应图书信息\n");print_num11();
case'2':printf("浏览结束\n");break;
}
}
void print_num1()
{
printf("==1.初始化图书信息=========2.增加图书信息=====================\n");
printf("==3.修改图书信息===========4.删除图图书信息===================\n");
printf("==5.按普通价格从高到低浏览图书信息============================\n");
printf("==6.增加会员信息==============================================\n");
printf("==7.删除会员信息===========8.按名字浏览会员信息===============\n");
printf("================0.程序结束====================================\n");
char n;
printf("请输入您的选择:");
scanf("%s",&n);
switch(n)
{
case'1':printf("初始化图书信息\n");print_num3();break;
case'2':printf("增加图书信息\n");print_num4();break;
case'3':printf("修改图书信息\n");print_num5();break;
case'4':printf("删除图书信息\n");print_num6();break;
case'5':printf("按普通价格从高到低浏览图书信息\n");print_num7();break;
case'6':printf("增加会员信息\n");print_num8();break;
case'7':printf("删除会员信信息\n");print_num9();break;
case'8':printf("按名字浏览会员信息\n");print_num0();break;
case'0':printf("程序结束\n");break;
}
}
typedef struct
{
long number;
char name[100];
float price;
}Book;
typedef struct
{ long number;
char name[9];
char mpass[7];
}memeber;
void print_num3()
{
FILE *fp;
Book boo,show;
char bookdat[40]="Book";
int count=0;
fp=fopen("bookdat","wb+");
if(fp==NULL)
{
printf("文件%s打不开\n",bookdat);
exit(1);
}
printf("请输入图书的序号、名称、价格\n");
while(count<=size)
{
printf("\n请输入图书的序号:");
scanf("%ld",&boo.number);
if(boo.number==0)
break;
printf("请输入图书的名称:");
scanf("%s",boo.name);
printf("请输入图书的价格:");
scanf("%f",&boo.price);
if(fwrite(&boo,sizeof(Book),1,fp)!=1)
{
printf("文件%s打不开\n",bookdat);
exit(1);
}
count++;
}
if(count>size)
printf("输入数据已满\n");
fclose(fp);
printf("所输入图书信息如下:\n");
fp=fopen("bookdat","rb");
if(fp==NULL)
{
printf("文件%s打不开\n",bookdat);
exit(1);
}
printf("序号\t名称\t价格\n");
while(fread(&show,sizeof(Book),1,fp)!=0)
printf("%ld\t%s\t%.1f\t%.1f\n",show.number,show.name,show.price);
fclose(fp);
}
void print_num4()
{
FILE *fp;
Book boo,show;
char bookdat[40]="Book";
int n;
int count=0;
fp=fopen("bookdat","wb+");
if(fp==NULL)
{
printf("文件%s打不开\n",bookdat);
exit(1);
}
printf("请输入图书的序号,查询是否存在\n");
scanf("%d,&n");
if(n==boo.number)
{
printf("此号已存在!!!请重新输入\n");
}
else
printf("此号不存在.请输入图书的序号、名称、价格\n");
while(count<=size)
{
printf("\n请输入图书的序号:");
scanf("%ld",&boo.number);
if(boo.number==0)
break;
printf("请输入图书的名称:");
scanf("%s",boo.name);
printf("请输入图书的价格:");
scanf("%f",&boo.price);
if(fwrite(&boo,sizeof(Book),1,fp)!=1)
{
printf("文件%s打不开\n",bookdat);
exit(1);
}
count++;
}
if(count>size)
printf("输入数据已满\n");
fclose(fp);
printf("所输入图书信息如下:\n");
fp=fopen("bookdat","rb");
if(fp==NULL)
{
printf("文件%s打不开\n",bookdat);
exit(1);
}
printf("序号\t名称\t价格\n");
while(fread(&show,sizeof(Book),1,fp)!=0)
printf("%ld\t%s\t%.1f\t%.1f\n",show.number,show.name,show.price);
fclose(fp);
}
void print_num5()
{
FILE *fp;
Book boo,s[size],show,temp;
char name[9],next,bookdat[40]="Book";
int recnumber,i,result=0;
float price;
begin:
printf("请输入要修改图书价格的名称");
scanf("%s",name);
fp=fopen(bookdat,"rb");
if(fp==NULL)
{
printf("文件%s打不开\n",bookdat);
exit(1);
}
while(feof(fp)==0)
{
if(fread(&temp,sizeof(Book),1,fp)!=0)
{
if(strcmp(temp.name,name)==0)
result=1;
}
}
if(result==0)
{
printf("要修改的图书%s不存在\n",name);
fclose(fp);
goto begin;
}
fp=fopen(bookdat,"rb");
if(fp==NULL)
{
printf("文件%s打不开\n",bookdat);
exit(1);
}
recnumber=0;
while((fread(&boo,sizeof(Book),1,fp))!=0)
{
if(strcmp(boo.name,name)==0)
{
printf("请输入要修改图书%s的价格",name);
scanf("%f",&price);
s[recnumber].number=boo.number;
strcpy(s[recnumber].name,boo.name);
s[recnumber].price=price;
recnumber++;
}
else
{
s[recnumber].number=boo.number;
strcpy(s[recnumber].name,boo.name);
s[recnumber].price=boo.price;
recnumber++;
}
}
fclose(fp);
fp=fopen(bookdat,"wb+");
if(fp==NULL)
{
printf("文件%s打不开\n",bookdat);
exit(1);
}
for(i=0;i<recnumber;i++)
{
if(fwrite(&s[i],sizeof(Book),1,fp)!=1)
{
printf("文件%s打不开\n",bookdat);
exit(1);
}
}
fclose(fp);
printf("修改成功!\n");
printf("是否继续修改(y/n)\n");
next=getchar();
if(next=='y'||next=='Y')
goto begin;
printf("所修改图书信息如下:\n");
fp=fopen(bookdat,"rb");
if(fp==NULL)
{
printf("文件%s打不开\n",bookdat);
exit(1);
}
printf("序号\t名称\t价格\t会员价\t\n");
while(fread(&show,sizeof(Book),1,fp)!=0)
printf("%ld\t%s\t%.1f\t%.1f\n",show.number,show.name,show.price);
fclose(fp);
}
void print_num6()
{
FILE *fp;
Book boo,s[size],show,temp;
char name[10],next,bookdat[40]="Book";
int recnumber,i,result=0;
begin:
printf("请输入要删除图书的名字");
scanf("%s",name);
fp=fopen(bookdat,"rb");
if(fp==NULL)
{
printf("文件%s打不开\n",bookdat);
exit(1);
}
while(feof(fp)==0)
{
if(fread(&temp,sizeof(Book),1,fp)!=0)
{
if(strcmp(temp.name,name)==0)
result=1;
}
}
if(result==0)
{
printf("要删除的图书%s不存在\n",name);
fclose(fp);
goto begin;
}
fclose(fp);
fp=fopen(bookdat,"rb");
if(fp==NULL)
{
printf("文件%s打不开\n",bookdat);
exit(1);
}
recnumber=0;
while((fread(&boo,sizeof(Book),1,fp))!=0)
{
if(strcmp(boo.name,name)!=0)
{
s[recnumber].number=boo.number;
strcpy(s[recnumber].name,boo.name);
s[recnumber].price=boo.price;
recnumber++;
}
}
fclose(fp);
fp=fopen(bookdat,"wb+");
if(fp==NULL)
{
printf("文件%s打不开\n",bookdat);
exit(1);
}
for(i=0;i<recnumber;i++)
{
if(fwrite(&s[i],sizeof(Book),1,fp)!=1)
{
printf("文件%s打不开\n",bookdat);
exit(1);
}
}
fclose(fp);
printf("删除成功!\n");
printf("是否继续删除(y/n)\n");
next=getchar();
if(next=='y'||next=='Y')
goto begin;
printf("删除要删除的图书后如下:\n");
fp=fopen(bookdat,"rb");
if(fp==NULL)
{
printf("文件%s打不开\n",bookdat);
exit(1);
}
printf("序号\t名称\t价格\t会员价\n");
while(fread(&show,sizeof(Book),1,fp)!=0)
printf("%ld\t%s\t%.1f\t%.1f\n",show.number,show.name,show.price);
fclose(fp);
}
void print_num7()
{
FILE *fp;
char bookdat[40]="Book";
Book boo,s[size],show;
int recnumber,i,j,k;
fp=fopen(bookdat,"rb");
if(fp==NULL)
{
printf("文件%s打不开\n",bookdat);
exit(1);
}
recnumber=0;
while(fread(&boo,sizeof(Book),1,fp)!=0)
{
s[recnumber].number=boo.number;
strcpy(s[recnumber].name,boo.name);
s[recnumber].price=boo.price;
recnumber++;
}
fclose(fp);
if(recnumber>1)
{
for(i=0;i<recnumber-1;i++)
{
k=i;
for(j=i+1;j<recnumber;j++)
if(s[k].price<s[j].price)
k=j;
boo.number=s[k].number;
strcpy(boo.name,s[k].name);
boo.price=s[k].price;
s[k].number=s[i].number;
strcpy(s[k].name,s[i].name);
s[k].price=s[i].price;
s[i].number=boo.number;
strcpy(s[i].name,boo.name);
s[i].price=boo.price;
}
}
fp=fopen(bookdat,"wb+");
if(fp==NULL)
{
printf("文件%s打不开\n",bookdat);
exit(1);
}
for(i=0;i<recnumber;i++)
{
if(fwrite(&s[i],sizeof(Book),1,fp)!=1)
{
printf("文件%s打不开\n",bookdat);
exit(1);
}
}
fclose(fp);
printf("浏览图书信息如下:\n");
fp=fopen(bookdat,"rb");
if(fp==NULL)
{
printf("文件%s打不开\n",bookdat);
exit(1);
}
printf("序号\t名称\t价格\t会员价\n");
while(fread(&show,sizeof(Book),1,fp)!=0)
printf("%ld\t%s\t%.1f\t%.1f\n",show.number,show.name,show.price);
fclose(fp);
}
void print_num8()
{
FILE *fp;
memeber boo,show;
char bookdat[40]="memeber";
int count=0;
fp=fopen(bookdat,"ab+");
if(fp==NULL)
{
printf("文件%s打不开\n",bookdat);
exit(1);
}
printf("请输入会员的序号、名字、密码、权限\n");
while(count<=size)
{
printf("\n请输入会员的序号:");
scanf("%ld",&boo.number);
if(boo.number==0)
break;
printf("请输入会员的名字:");
scanf("%s",boo.name);
printf("请输入会员密码:");
scanf("%s",boo.mpass);
if(fwrite(&boo,sizeof(memeber),1,fp)!=1)
{
printf("文件%s打不开\n",bookdat);
exit(1);
}
count++;
}
if(count>size)
printf("输入数据已满\n");
fclose(fp);
printf("所输入图书信息如下:\n");
fp=fopen(bookdat,"rb");
if(fp==NULL)
{
printf("文件%s打不开\n",bookdat);
exit(1);
}
printf("序号\t姓名\t密码\n");
while(fread(&show,sizeof(memeber),1,fp)!=0)
printf("%ld\t%s\t%s\t%d\n",show.number,show.name,show.mpass);
fclose(fp);
}
void print_num9()
{
FILE *fp;
memeber boo,s[size],show,temp;
char name[10],next,bookdat[40]="memeber";
int recnumber,i,result=0;
begin:
printf("请输入要删除会员信息的名字");
scanf("%s",name);
fp=fopen(bookdat,"rb");
if(fp==NULL)
{
printf("文件%s打不开\n",bookdat);
exit(1);
}
while(feof(fp)==0)
{
if(fread(&temp,sizeof(memeber),1,fp)!=0)
{
if(strcmp(temp.name,name)==0)
result=1;
}
}
if(result==0)
{
printf("要删除的会员%s不存在\n",name);
fclose(fp);
goto begin;
}
fclose(fp);
fp=fopen(bookdat,"rb");
if(fp==NULL)
{
printf("文件%s打不开\n",bookdat);
exit(1);
}
recnumber=0;
while((fread(&boo,sizeof(memeber),1,fp))!=0)
{
if(strcmp(boo.name,name)!=0)
{
s[recnumber].number=boo.number;
strcpy(s[recnumber].name,boo.name);
strcpy(s[recnumber].mpass,boo.mpass);
recnumber++;
}
}
fclose(fp);
fp=fopen(bookdat,"wb+");
if(fp==NULL)
{
printf("文件%s打不开\n",bookdat);
exit(1);
}
for(i=0;i<recnumber;i++)
{
if(fwrite(&s[i],sizeof(memeber),1,fp)!=1)
{
printf("文件%s打不开\n",bookdat);
exit(1);
}
}
fclose(fp);
printf("删除成功!\n");
printf("是否继续删除(y/n)\n");
next=getchar();
if(next=='y'||next=='Y')
goto begin;
printf("删除信息后会员信息如下:\n");
fp=fopen(bookdat,"rb");
if(fp==NULL)
{
printf("文件%s打不开\n",bookdat);
exit(1);
}
printf("序号\t姓名\t密码\n");
while(fread(&show,sizeof(memeber),1,fp)!=0)
printf("%ld\t%s\t%s\t%d\n",show.number,show.name,show.mpass);
fclose(fp);
}
void print_num11()
{
FILE *fp;
char bookdat[40]="memeber";
memeber boo,s[size],show;
int recnumber,i,j,k;
fp=fopen(bookdat,"rb");
if(fp==NULL)
{
printf("文件%s打不开\n",bookdat);
exit(1);
}
recnumber=0;
while(fread(&boo,sizeof(memeber),1,fp)!=0)
{
s[recnumber].number=boo.number;
strcpy(s[recnumber].name,boo.name);
strcpy(s[recnumber].mpass,boo.mpass);
recnumber++;
}
fclose(fp);
if(recnumber>1)
{
for(i=0;i<recnumber-1;i++)
{
k=i;
for(j=i+1;j<recnumber;j++)
if(strcmp(s[k].name,s[j].name)>0)
k=j;
boo.number=s[k].number;
strcpy(boo.name,s[k].name);
strcpy(boo.mpass,s[k].mpass);
s[k].number=s[i].number;
strcpy(s[k].name,s[i].name);
strcpy(s[k].mpass,s[i].mpass);
s[i].number=boo.number;
strcpy(s[i].name,boo.name);
strcpy(s[i].mpass,boo.mpass);
}
}
fp=fopen(bookdat,"wb+");
if(fp==NULL)
{
printf("文件%s打不开\n",bookdat);
exit(1);
}
for(i=0;i<recnumber;i++)
{
if(fwrite(&s[i],sizeof(memeber),1,fp)!=1)
{
printf("文件%s打不开\n",bookdat);
exit(1);
}
}
fclose(fp);
printf("浏览会员信息如下:\n");
fp=fopen(bookdat,"rb");
if(fp==NULL)
{
printf("文件%s打不开\n",bookdat);
exit(1);
}
printf("序号\t姓名\t密码\t权限\n");
while(fread(&show,sizeof(memeber),1,fp)!=0)
printf("%ld\t%s\t%s\t%d\n",show.number,show.name,show.mpass);
fclose(fp);
}我怎么运行不了 求调试 小弟跪求啊