求一个c++做的图书管理系统来学习学习

yunshouhu 2011-04-04 02:38:26
求一个c++做的图书管理系统来学习学习:
有的请发到我邮箱542335496@qq.com:
谢谢;
有以下要求:
(1)必须是具有图形菜单界面(用MFC(控制台的也不要));数据保存于文本文件(数据库的不要);
(2)建立关于书号、书名、作者及出版社的图书查询;
(3)实现图书的借还子系统,包括建立读者文件、借还文件、读者管理及图书借还
等相关的处理。
希望是完整的能运行的源代码,哪位兄弟有的发个到我邮箱,或者知道哪里有的(符合条件的给个链接),
小弟主要是为了学习,先在这里拜谢了!!!!!
...全文
383 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
yunshouhu 2011-04-10
  • 打赏
  • 举报
回复
多回帖,多上论坛逛逛,下载的时候记得评论,而且必须记得点上星级,。。
knowingsun 2011-04-09
  • 打赏
  • 举报
回复
怎么样才能增长积分呢?
yunshouhu 2011-04-07
  • 打赏
  • 举报
回复
主要是图形界面和MFC下的I/O输入输出不懂,
yunshouhu 2011-04-06
  • 打赏
  • 举报
回复
没人有吗?那前辈是怎么学过来的呢???MFC这块,再不来人我结贴了啊?!
eye_119_eye 2011-04-06
  • 打赏
  • 举报
回复
我晕 用c#或者说 pb 岂不是更爽
mstlq 2011-04-05
  • 打赏
  • 举报
回复
Ronaldo9999 2011-04-05
  • 打赏
  • 举报
回复
眼花缭乱 晕哦
yunshouhu 2011-04-05
  • 打赏
  • 举报
回复
2楼的,贴了这么长,谢谢了。不过我说过了是要:
(1)必须是具有图形菜单界面(用MFC做的)(控制台的也不要);数据保存于文本文件(数据库的不要);
你给的程序我可以参考下。
哪位兄弟有符号条件的,请发到我邮箱542335496@qq.com 谢谢了

噢噢噢噢 2011-04-04
  • 打赏
  • 举报
回复
会百度否?来着问这问题容易遭骂
luciferisnotsatan 2011-04-04
  • 打赏
  • 举报
回复
ls贴的真长
無_1024 2011-04-04
  • 打赏
  • 举报
回复

for(i=0;fread(&card[i],sizeof(struct card),1,fp2)!=0;i++)
{
fwrite(&card[i],sizeof(struct card),1,fp);
}
fclose(fp);
fclose(fp2);
fp2=fopen("bookl.txt","w");
if(fp2 == NULL)
{
cout<<"ERROR!"<<endl;
fclose(fp);
fclose(fp2);
system("pause");
return ;
}
fclose(fp2);
system("pause");
return;
}
else
{
system("pause");
return;
}
}
void addcard()
{
FILE *fp;
int i=0;
int j;
char enter[10];
fp=fopen("card.txt","a+"); //以读/写打开一个文本文件(建立新文件)
if(fp == NULL)
{
cout<<"ERROR!打开文件错误!!"<<endl;
system("pause");
return ;
}
cout<<"请你输入卡号:"<<endl;;
cin>>enter;
for(j=0;fread(&card[j],sizeof(struct card),1,fp)!=0;j++) /*for循环判断卡号是否存在*/
{
if(strcmp(card[j].cardnum,enter) == 0 ) /*卡号存在,进入下一循环*/
{
cout<<"卡号已经存在!"<<endl;
return ;
}
}
strcpy(card[i].cardnum,enter);
cout<<"请你输入学生姓名: "<<endl;
cin>>card[i].studentname;
cout<<"请你输入班级";
cin>>card[i].studentclass;
fwrite(&card[i],sizeof(struct card),1,fp);
fclose(fp);
cout<<"输入完毕";
system("pause");
}
void changemploy(int admin)
{
FILE *fp,*fp2;
char employname[10];
int i,choice;
fp=fopen("employ.txt","r");
fp2=fopen("bookl.txt","w");//打开临时文件
if(fp == NULL || fp2 == NULL)
{
cout<<"ERROR!打开文件错误!!"<<endl;
system("pause");
return ;
}
cout<<"请你输入要修改的职工的名字"<<endl;
cin>>employname;
for(i=0;fread(&employ[i],sizeof(struct employ),1,fp)!=0;i++)
{
if(strcmp(employ[i].employname,employname)==0)
{
cout<<"你所要修改的职工的资料如下,请选择你要修改的内容"<<endl;
cout<<"<职工号:"<<employ[i].employnum<<"职工名:"<<employ[i].employname<<" 年龄:"<<employ[i].employage<<" 性别:"<<employ[i].employsex <<"学历:"<<employ[i].employleve<< "工资:"<<employ[i].employtage;
cout<<"\t1:修改职工的号"<<endl;
cout<<"\t2:修改职工名 "<<endl;
cout<<"\t3:修改职工年龄"<<endl;
cout<<"\t4:修改职工工资"<<endl;
cout<<"\t5:修改职工学历"<<endl;
cout<<"\t6: 修改职工登录密码"<<endl;
cout<<"请输入1-6:";
cin>>choice;
switch(choice)
{
case 1:
if(admin == manager)
{
cout<<"请输入新的职工号"<<endl;
cin>>employ[i].employnum;
fwrite(&employ[i],sizeof(struct employ),1,fp2);
}
else
{
cout<<"你是普通职工只能修改个人密码其余无权操作!请联系管理员"<<endl;
system("pause");
}
break;
case 2:
if(admin == manager)
{
cout<<"请输入新的职工姓名"<<endl;
cin>>employ[i].employname;
fwrite(&employ[i],sizeof(struct employ),1,fp2);
}
else
{
cout<<"你是职工只能修改个人密码其余无权操作!请联系管理员"<<endl;
system("pause");
}
break;
case 3:
if(admin == manager)
{
cout<<"请输入新的年龄"<<endl;
cin>>employ[i].employage;
fwrite(&employ[i],sizeof(struct employ),1,fp2);
}
else
{
cout<<"你是职工只能修改个人密码其余无权操作!请联系管理员"<<endl;
system("pause");
}
break;
case 4:
if(admin == manager)
{
cout<<"请输入新的职工工资"<<endl;
cin>>employ[i].employtage;
fwrite(&employ[i],sizeof(struct employ),1,fp2);
}
else
{
cout<<"你是职工只能修改个人密码其余无权操作!!请联系管理员"<<endl;
system("pause");
}
break;
case 5:
if(admin == manager)
{
cout<<"请输入新的职工学历"<<endl;
cin>>employ[i].employleve;
fwrite(&employ[i],sizeof(struct employ),1,fp2);
}
else
{
cout<<"你是职工只能修改个人密码其余无权操作!请联系管理员"<<endl;
system("pause");
}
break;
case 6:
if(admin == manager || admin == employ[i].employnum)
{
cout<<"请输入新职工的登录密码:"<<endl;
cin>>employ[i].employpassword;
fwrite(&employ[i],sizeof(struct employ),1,fp2);
}
else
{
cout<<"你不是管理员 和 本人 无权修改密码"<<endl;
system("pause");
}
break;
default:
cout<<"没有这样的操作"<<endl;
system("pause");
break;
}
continue;
}
fwrite(&employ[i],sizeof(struct employ),1,fp2);
}
fclose(fp);
fclose(fp2);
fp=fopen("employ.txt","w"); //打开工作文件和临时工作文件
fp2=fopen("bookl.txt","r");
if(fp == NULL || fp2 == NULL)
{
cout<<"ERROR!打开文件错误!!"<<endl;
system("pause");
return ;
}
for(i=0;fread(&employ[i],sizeof(struct employ),1,fp2)!=0;i++)
{

fwrite(&employ[i],sizeof(struct employ),1,fp);
}
fclose(fp);
fclose(fp2);
fp2=fopen("bookl.txt","w"); //清临时文件
if(fp2 == NULL)
{
cout<<"ERROR!打开文件错误!!"<<endl;
system("pause");
return ;
}
fclose(fp2);
system("pause");
return;
}
void delemploy(int admin)
{
if(admin != manager)
{
cout<<"不是管理员 不能进行添加职工操作"<<endl;
return ;
}
FILE *fp,*fp2;
int i;
char employname[10],choice;
fp=fopen("employ.txt","r");
fp2=fopen("bookl.txt","w");
if(fp == NULL || fp2 == NULL)
{
cout<<"ERROR!打开文件错误!!"<<endl;
system("pause");
return ;
}
cout<<"请输入你要删除的职工名"<<endl;
cout<<"如果你输入的职工存在,系统自动删除该信息!如果不存在,系统不做任何改动"<<endl;
cin>>employname;
for(i=0;fread(&employ[i],sizeof(struct employ),1,fp)!=0;i++)
{

if(strcmp(employname,employ[i].employname)!=0)
{
fwrite(&employ[i],sizeof(struct employ),1,fp2);
}
}
fclose(fp);
fclose(fp2);
cout<<"是否真的要删除该职工信息?删除后的所有信息将无法恢复《Y/N》"<<endl;
cin>>choice;
if(choice=='y'||choice=='Y')
{
fp=fopen("employ.txt","w");
fp2=fopen("bookl.txt","r");
if(fp == NULL || fp2 == NULL)
{
cout<<"ERROR!打开文件错误!!"<<endl;
system("pause");
return ;
}
for(i=0;fread(&employ[i],sizeof(struct employ),1,fp2)!=0;i++)
{

fwrite(&employ[i],sizeof(struct employ),1,fp);
}
fclose(fp);
fclose(fp2);
fp2=fopen("bookl.txt","w");
if(fp2 == NULL)
{
cout<<"ERROR!打开文件错误!!"<<endl;
system("pause");
return ;
}
fclose(fp2);
system("pause");
return;
}
else
{
system("pause");
return;
}
}
void employcount()
{
FILE *fp;
int i,n=0;
fp=fopen("employ.txt","r");
if(fp == NULL)
{
cout<<"ERROR!打开文件错误!!"<<endl;
system("pause");
return ;
}
for(i=0;fread(&employ[i],sizeof(struct employ),1,fp) != 0;i++)
{
cout<<"第 "<<n+1<<" 职工的信息如下:"<<endl;
cout<<"<职工号: "<<employ[i].employnum<<" 职工名:"<<employ[i].employname<<" 年龄:"<<employ[i].employage<<" 性别:"<<employ[i].employsex <<"学历:"<<employ[i].employleve<< "工资:"<<employ[i].employtage;
n++;
}
fclose(fp);
cout<<"目前共有"<<n<<"个职工";
system("pause");
}
void addemploy(int admin)
{
if(admin != manager)
{
cout<<"不是管理员 不能进行添加职工操作"<<endl;
return ;
}
FILE *fp;
char choice='y';
int i=1;
int j;
int num;
/*fp=fopen("employ.txt","a+"); //以读写方式打开一个文本文件
*/
while(choice=='y'||choice=='Y')
{
fp=fopen("employ.txt","a+");
if(fp == NULL)
{
cout<<"ERROR!打开文件错误!!"<<endl;
system("pause");
return ;
}
cout<<"请你输入职工号码"<<endl;
cin>>num;
for(j=0;fread(&employ[j],sizeof(struct employ),1,fp)!=0;j++) /*for循环判断职工号是否存在*/
{
if(employ[j].employnum == num) /*职工号存在,进入下一循环*/
{
cout<<"职工号已经存在!"<<endl;
return ;
}
}
employ[i].employnum = num;
cout<<"请你输入职工名"<<endl;
cin>>employ[i].employname;
cout<<"请输入职工年龄"<<endl;
cin>>employ[i].employage;
cout<<"请你输入性别"<<endl;
cin>>employ[i].employsex;
cout<<"请你输入职工的学历水平"<<endl;
cin>>employ[i].employleve;
cout<<"请输入职工的工资"<<endl;
cin>>employ[i].employtage;
cout<<"请输入登录密码: "<<endl;
cin>>employ[i].employpassword;
fwrite(&employ[i],sizeof(struct employ),1,fp);
fclose(fp);
cout<<"是否要输入下个职工信息?《Y/N》"<<endl;
cin>>choice;
}
system("pause");
fclose(fp);
return ;
}
無_1024 2011-04-04
  • 打赏
  • 举报
回复

void ReturnBook(char cardnum[10]) /*还书函数*/
{
FILE *fp,*fp2; /*定义两个文件指针,fp2用于修改数据时设立临时文件用,防止数据遭破坏*/
int i,n;
char lendbook[10];
fp=fopen("card.txt","r");
if(fp == NULL)
{
cout<<"ERROR!打开文件错误!!"<<endl;
system("pause");
return ;
}
for(i=0;fread(&card[i],sizeof(struct card),1,fp)!=0;i++) /*for循环判断卡号是否存在*/
{
if(strcmp(card[i].cardnum,cardnum) == 0 ) /*卡号存在,进入下一循环*/
{
n=i;
fclose(fp);
cout<<"请输入你要还的书的名字"<<endl;
cin>>lendbook;
fp=fopen("record.txt","r");
if(fp == NULL)
{
cout<<"ERROR!打开文件错误!!"<<endl;
system("pause");
return ;
}
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");
if(fp == NULL || fp2 == NULL)
{
cout<<"ERROR!打开文件错误!!"<<endl;
system("pause");
return ;
}
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");
if(fp == NULL || fp2 == NULL)
{
cout<<"ERROR!打开文件错误!!"<<endl;
system("pause");
return ;
}
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");/*清临时文件的记录*/
if(fp2 == NULL)
{
cout<<"ERROR!打开文件错误!!"<<endl;
return ;
}
fclose(fp2);
fp=fopen("book.txt","r");
fp2=fopen("bookl.txt","w");
if(fp == NULL || fp2 == NULL)
{
cout<<"ERROR!打开文件错误!!"<<endl;
system("pause");
return ;
}
for(i=0;fread(&book[i],sizeof(struct book),1,fp)!=0;i++) /*将书的记录写入临时文件,防止因为修改信息破坏以前的记录*/
{
if(strcmp(book[i].bookname,lendbook) == 0)
{
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");
if(fp == NULL || fp2 == NULL)//判断零时文件是否建立正确
{
cout<<"ERROR!打开文件错误!!"<<endl;
system("pause");
return ;
}
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);
fp2=fopen("bookl.txt","w");/*清临时文件*/
if(fp2 == NULL)
{
cout<<"ERROR!打开文件错误!!"<<endl;
system("pause");
return ;
}
fclose(fp2);
cout<<"还书完毕";
system("pause");
return ;
}
}
cout<<"你没有借这样的书.请确定输入书名"; /*出错提示*/
fclose(fp);
system("pause");
return;

}
}
cout<<"系统没这样的卡,和管理员联系"<<endl; /*出错提示*/
fclose(fp);
system("pause");
}
void lendcount()
{
FILE *fp;
int i,n=0;
fp=fopen("record.txt","r");
if(fp == NULL)
{
cout<<"ERROR!打开文件错误!!"<<endl;
system("pause");
return ;
}
for(i=0;fread(&student[i],sizeof(struct student),1,fp)!=0;i++)
{
cout<<"卡号: "<<student[i].cardnum<<" 借出的书籍:"<<student[i].lendbook <<endl;
n=n+1;
}
fclose(fp);
cout<<"目前共有 "<<n<<" 本书借出";
system("pause");
}
void chabook()
{
int ch5;
do
{
system("cls");
cout<<"---------------欢迎进入图书查询系统!--------------"<<endl;
cout<<" \t1:<按书名查找>"<<endl;
cout<<" \t0:<返回>"<<endl;
cout<<"请输入0--1,其他输入无效!"<<endl;
cin>>ch5;
switch(ch5)
{
case 1:findbook();system("pause");break;
case 0:break;
default:
cout<<"无此操作"<<endl;
system("pause");
break;
}
}while(ch5!= 0);
}

void lendbook(char cardnum[10])
{
FILE *fp,*fp2;
int i,n;
fp=fopen("card.txt","r");
if(fp == NULL)
{
cout<<"ERROR!打开文件错误!!"<<endl;
system("pause");
return ;
}
for(i=0;fread(&card[i],sizeof(struct card),1,fp)!=0;i++)
{
if(strcmp(card[i].cardnum,cardnum) == 0)
{
n=i;
fclose(fp);
cout<<"请输入你要借阅的书的名字"<<endl;
cin>>student[n].lendbook;
fp=fopen("book.txt","r");
if(fp == NULL)
{
cout<<"ERROR!打开文件错误!!"<<endl;
system("pause");
return ;
}
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)
{
cout<<"对不起,此书有人借出,请借其他书"<<endl;
fclose(fp);
system("pause");
return;
}
else
fclose(fp);
fp=fopen("record.txt","a+");
if(fp == NULL)
{
cout<<"ERROR!打开文件错误!!"<<endl;
system("pause");
return ;
}
strcpy(student[n].cardnum,cardnum);
fwrite(&student[n],sizeof(struct student),1,fp);
fclose(fp);
fp=fopen("book.txt","r");
fp2=fopen("bookl.txt","w");
if(fp == NULL || fp2 == NULL)
{
cout<<"ERROR!打开文件错误!!"<<endl;
system("pause");
return ;
}
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");
if(fp == NULL || fp2 == NULL)
{
cout<<"ERROR!"<<endl;
fclose(fp);
fclose(fp2);
system("pause");
return ;
}
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);
cout<<"借书完毕"<<endl;
system("pause");
return;
}
}
cout<<"不存在这样的书"<<endl;
fclose(fp);
system("pause");
return;
}
}
cout<<"你的卡号不存在,请申请新卡"<<endl;
fclose(fp);
system("pause");
}
void cardcount()
{
FILE *fp;
int i,n=0;
fp=fopen("card.txt","r");
if(fp == NULL)
{
cout<<"ERROR!打开文件错误!!"<<endl;
system("pause");
return ;
}
for(i=0;fread(&card[i],sizeof(struct card),1,fp)!=0;i++)
{
cout<<"第"<<i+1<<"张卡 <卡号:"<<card[i].cardnum<<" ><姓名:"<<card[i].studentname <<" ><班级:"<<card[i].studentclass<<" >"<<endl;
n=n+1;
}
fclose(fp);
cout<<"目前共有 "<<n<<" 个用户";
system("pause");
return ;
}
void delcard()
{
FILE *fp,*fp2;
int i;
char cardnum[10];
char choice;
fp=fopen("card.txt","r");
fp2=fopen("bookl.txt","w");
if(fp == NULL || fp2 == NULL)
{
cout<<"ERROR!打开文件错误!!"<<endl;
system("pause");
return ;
}
cout<<"请输入你要删除的卡号"<<endl;
cout<<"如果你输入的卡号存在,系统自动删除该信息!如果不存在,系统不做任何改动"<<endl;
cin>>cardnum;
for(i=0;fread(&card[i],sizeof(struct card),1,fp)!=0;i++)
{
if(strcmp(card[i].cardnum,cardnum))
{
fwrite(&card[i],sizeof(struct card),1,fp2);
}
}
fclose(fp);
fclose(fp2);
cout<<"是否真的要删除该卡?删除后该书籍的所有信息将无法恢复《Y/N》"<<endl;
cin>>choice;
if(choice=='y'||choice=='Y')
{
fp=fopen("card.txt","w");
fp2=fopen("bookl.txt","r");
if(fp == NULL || fp2 == NULL)
{
cout<<"ERROR!打开文件错误!!"<<endl;
system("pause");
return ;
}
無_1024 2011-04-04
  • 打赏
  • 举报
回复

#include <iostream>
#include<cstdio>
#include<cstring>
#include<cstdlib>
#include<ctype.h>
#include <windows.h>

#define STACK_INIT_SIZE 10
#define manager 123456//管理员账号
#define MAX 5
#define N 50
#define OK 1
#define TRUE 1
#define FALSE 0
#define ERROR 0

using namespace std;

struct student /*定义学生类型,用于存放借出的书籍*/
{
char cardnum[N];
char lendbook[N];
//int total;
}student[1000];
struct employ /*定义职工类型*/
{
int employnum;
char employname[15];
int employage;
char employsex[2];
char employleve[10];
long int employtage;
char employpassword[N];
}employ[50];
struct book /*定义书的类型*/
{
int booknum;
//int amount;
char bookname[N];
char bookcreat[10];
int turefalse; /*用于借书和还书模块判断一本书是否借出的条件*/
}book[1000];
struct card /*借书卡的数据类型*/
{
char cardnum[N];
char studentname[N];
int studentclass;
}card[100];

int admin;
void addbook();//增加书籍,书籍入库
void addcard();//增加借书卡
void addemploy(int admin);//增加职员
void bookcount();//书籍统计
void cardcount();//借书卡统计
void chabook();//查询书籍
void changebook();//修改书籍信息
void changemploy(int admin);//修改职员信息
void delbook();//删改图书
void delcard();//删除卡号
void delemploy(int admin);//删除职员
void employcount();//职员统计
void findbook();//查找书籍
void lendbook(char cardnum[N]);//借书
void lendcount();//借书统计
void ReturnBook(char cardnum[N]);//还书

int main()
{
int ch0,ch1,ch2,ch3,ch4;
int i;
int t;
int m,k=0,k1=0;
FILE *fp;
char password[N];
char cardnum[N];
do{
system("cls");
cout<<"\t\t请输入你的身份"<<endl;
cout<<"\t1.管理员登陆 "<<endl;
cout<<"\t2.学生登陆 "<<endl;
cout<<"\t3.退出系统 "<<endl;
cout<<"请输入1~3,其他输入无效!"<<endl;
cin>>ch0;
switch(ch0)
{
case 1:
m=0;
cout<<"请输入登录名(或者职工职工号): ";
cin>>admin;
cout<<"请输入登录密码:";
cin>>password;
if(admin == admin && strcmp(password,"admin") != 0)
{
k1++;
cout<<"管理员密码输入错误,请查阅说明!你还有 "<<3-k1<<" 次机会"<<endl;
system("pause");
}
fp=fopen("employ.txt","r");
if(fp == NULL)
{
cout<<"ERROR!打开文件错误!!"<<endl;
system("pause");
break;
}
for(i=0;fread(&employ[i],sizeof(struct employ),1,fp)!=0;i++) /*for循环判断职工号是否存在*/
{
if((admin == employ[i].employnum)&&(strcmp(password,employ[i].employpassword) == 0))
{
m=1;
}
else if((admin == employ[i].employnum)&&(strcmp(password,employ[i].employpassword) != 0))
{
k++;
cout<<"输入密码错误!请重新输入!"<<endl;
system("pause");
}
}
fclose(fp);
if((admin != manager) &&(m==0 && k==0))
{
cout<<"输入职工号不存在"<<endl;
system("pause");
}
if(k==3 || k1==3)
{
cout<<"密码输入错误次数太多,请下次登录,系统自动退出!!"<<endl;
system("pause");
break;
}

if( (admin == manager && strcmp(password,"admin") == 0) || m == 1)
{
do
{
system("cls");
cout<<"---------------欢迎进入管理系统!--------------"<<endl;
cout<<" 1:<增加图书> "<<endl;
cout<<" 2:<删除图书> "<<endl;
cout<<" 3:<修改图书资料>"<<endl;
cout<<" 4:<书籍统计> "<<endl;
cout<<" 5:<职工管理系统>"<<endl;
cout<<" 6:<学生管理系统>"<<endl;
cout<<" 0:<返回> "<<endl;
cout<<"请输入0--6,其他输入无效!"<<endl;
cin>>ch1;
switch(ch1)
{
case 1:addbook(); break;
case 2:delbook();break;
case 3:changebook();break;
case 4:bookcount();break;
case 5:
do
{
system("cls");
cout<<"---------------欢迎进入职工管理系统!--------------\n";
cout<<" 1:<增加员工>\n";
cout<<" 2:<删除员工>\n";
cout<<" 3:<修改员工资料>\n";
cout<<" 4:<员工统计>\n";
cout<<" 0:<返回>\n";
cout<<"请输入0--4,其他输入无效!\n";
cin>>ch2;
switch(ch2)
{
case 1:addemploy(admin);system("pause");break;
case 2:delemploy(admin);break;
case 3:changemploy(admin);break;
case 4:employcount();break;
case 0:break;
default:cout<<"无此操作!请重新输入。"; system("pause");break;
}
}while(ch2!=0);
break;
case 6:
{
do
{
system("cls");
printf("---------------欢迎进入学生管理系统!--------------\n");
printf(" 1:<申请新卡>\n");
printf(" 2:<删除卡号>\n");
printf(" 3:<借书统计>\n");
printf(" 4:<卡号统计>\n");
printf(" 0:<返回>\n");
printf("请输入0--4,其他输入非法!\n");
cin>>ch3;
switch(ch3)
{
case 1:addcard();break;
case 2:delcard();break;
case 3:lendcount();break;
case 4:cardcount();break;
case 0:break;
default:printf("无此操作\n");system("pause");break;
}
}while(ch3!=0);}break;
case 0:break;
default:cout<<"无此操作!请重新输入";system("pause");break;
}
}while(ch1!=0);
}
break;
case 2:cout<<"请输入学生学号:"<<endl;
cin>>cardnum;
t=0;
fp=fopen("card.txt","r"); /*读取卡号记录*/
if(fp == NULL)
{
cout<<"ERROR!打开文件错误!"<<endl;
system("pause");
break;
}
for(i=0;fread(&card[i],sizeof(struct card),1,fp)!=0;i++) /*for循环判断卡号是否存在*/
{
if(strcmp(card[i].cardnum,cardnum) == 0 ) /*卡号存在,进入下一循环*/
{
t=1;
//fclose(fp);
do{
system("cls");
cout<<"\t\t请你选择操作类型: "<<endl;
cout<<" 1:<查阅图书> "<<endl;
cout<<" 2:<借阅图书> "<<endl;
cout<<" 3:<还书> "<<endl;
cout<<" 0:<返回> "<<endl;
cout<<"请输入0~3,其余输入无效"<<endl;
cin>>ch4;
switch(ch4)
{
case 1:chabook();break;
case 2:lendbook(cardnum);break;
case 3:ReturnBook(cardnum);break;
case 0:break;
default:cout<<"无此操作!请重新输入"<<endl;break;
}
}while(ch4!=0);
}
}
if(t == 0)
cout<<"学号不存在,请确定重新输入"<<endl;
fclose(fp);
system("pause");
break;
case 3:exit(0);break;
default:cout<<"无此操作!请重新输入"<<endl;break;
}
}while(ch0!=3);
return 0;
}
jixingzhong 2011-04-04
  • 打赏
  • 举报
回复
http://download.csdn.net/source/135371

下载了参考一下

33,323

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 新手乐园
社区管理员
  • 新手乐园社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧