图书馆管理系统程序:题目如下(是高手就帮我一下)万分感谢!!

到百度贴吧首页
新闻   网页   贴吧   知道   MP3   图片   视频   百科
    吧内搜索 | 帮助

图书馆管理系统程序:题目如下(是高手就帮我一下)万分感谢!!

202.120.217.*

1楼

实习题三:图书馆管理系统
某图书馆允许每个学生同时只能借得一本图书且借阅时间不得超出3个月,现所有学生借阅的图书的记录均存于流通文件中,每一记录中包括书号、借书人学号,应还书日期。书库文件中记录书名、书号、作者、出版社、出版日期、藏书数。现要求程序用菜单选择并完成下述的功能: 
现要求编程实现如下功能: 
1.    借书功能:要求输入借书人学号及借书日期,如借书人的前面借的书尚未还则打印“You should Return first!”;同时不允许借书,反之则办理借书手续,即:在对应文件中记录借书人学号及借书日期、应还书日期,同时在书库文件中将所借书的藏书数-1。 
2.    还书功能:即根据书号及还书日期从流通文件中删去借书人的借书记录,如果书已越期则打印“Time Passed!”;同时对书库文件中将所还的书藏书数+1。 
3. 可显示所有借书过期而未还者的信息;
              XX月图书逾期情况表 
书号  借书人学号  应还书日期 
  TP301-01  0230906F  01.02.03 
  
4.    查找学号的功能要求采用折半查找的方法实现,并打印查询结果。 
5.    退出程序 
  


221.11.46.*

2楼

哦也做这这个题目,你看可以用吗?/*****************************************************************************************/ 
#include <iostream> 
#include <iomanip> 
#include <string> 
//输入/输出文件流类 
#include <fstream> 
using namespace std; 
//最多的读者 
const int Maxr=100; 
//最多的图书 
const int Maxb=100; 
//每位读者最多借五本书 
const int Maxbor=5; 


//读者类,实现对读者的信息的描述 
class Reader 

private: 
//删除标记 1:已删 0:未删 
int tag; 
//读者编号 
int no; 
//读者姓名 
char name[10]; 
//所借图书 
int borbook[Maxbor]; 
public: 
Reader() 



//获取姓名 
char *getname() 

return name; 

//获取删除标记 
int gettag() 

return tag; 

//获取读者编号 
int getno() 

return no; 

//设置姓名 
void setname(char na[]) 

strcpy(name,na); 


//设置删除标记 1:已删 0:未删 
void delbook() 

tag=1; 

//增加读者 
void addreader(int n,char *na) 

tag=0; 
no=n; 
strcpy(name,na); 
for(int i=0;i<Maxbor;i++) 
borbook[i]=0; 

//借书操作 
void borrowbook(int bookid) 

for(int i=0;i<Maxbor;i++) 

if (borbook[i]==0) 

borbook[i]=bookid; 
return; 





//还书操作 
int retbook(int bookid) 

for(int i=0;i<Maxbor;i++) 

if(borbook[i]==bookid) 

borbook[i]=0; 
return 1; 



return 0; 

//读出读者信息 
void disp() 

cout << setw(5) << no <<setw(10) << name<<"借书编号:["; 
for(int i=0;i<Maxbor;i++) 
if(borbook[i]!=0) 
cout << borbook[i] << "|"; 
cout << "]"<<endl; 


}; 



//读者类库,实现建立读者的个人资料 
class RDatabase 

private: 
//读者记录指针 
int top; 
//读者记录 
Reader read[Maxr]; 
public: 
//构造函数,将reader.txt读到read[]中 
RDatabase() 

Reader s; 
top=-1; 
//打开一个输入文件 
fstream file("reader.txt",ios::in); 
while (1) 

file.read((char *)&s,sizeof(s)); 
if (!file)break; 
top++; 
read[top]=s; 

//关闭 reader.txt 
file.close(); 

//删除所有读者信息 
void clear() 

top=-1; 

//添加读者时先查找是否存在 
int addreader(int n,char *na) 

Reader *p=query(n); 
if (p==NULL) 

top++; 
read[top].addreader(n,na); 
return 1; 

return 0; 


//按编号查找 
Reader *query(int readerid) 

for (int i=0;i<=top;i++) 
if (read[i].getno()==readerid && 
read[i].gettag()==0) 

return &read[i]; 

return NULL; 

//输出所有读者信息 
void disp() 

for (int i=0;i<=top;i++) 
read[i].disp(); 

//读者库维护 
void readerdata(); 
//析构函数,将read[]写到reader.txt文件中 
~RDatabase() 

fstream file("reader.txt",ios::out); 
for (int i=0;i<=top;i++) 
if (read[i].gettag()==0) 
file.write((char *)&read[i],sizeof(read[i])); 
file.close(); 


}; 
void RDatabase::readerdata() 


char choice; 
char rname[20]; 
int readerid; 
Reader *r; 
while (choice!='0') 

cout <<"\n\n\t\t\t读 者 维 护\n\n\n\t\t 1 新 增\n\n\t\t 2 更 改\n\n\t\t 3 删 除\n\n\t\t 4 查 找\n\n\t\t 5 显 示\n\n\t\t 6 全 删\n\n\t\t 0 退 出"<<endl; 
cin >> choice; 
switch (choice) 

case '1': 
cout << "输入读者编号:"; 

221.11.46.*

3楼

cin >> readerid; 
cout << "输入读者姓名:"; 
cin >> rname; 
addreader (readerid,rname); 
break; 
case '2': 
cout << "输入读者编号:"; 
cin >> readerid; 
r=query(readerid); 
if (r==NULL) 

cout << " 该读者不存在 "<<endl; 
break; 

cout << "输入新的姓名:"; 
cin >> rname; 
r->setname(rname); 
break; 
case '3': 
cout << " 输入读者编号:"; 
cin >> readerid; 
r=query(readerid); 
if (r==NULL) 

cout <<" 该读者不存在" << endl; 
break; 

r->delbook(); 
break; 
case '4': 
cout << "读入读者编号:"; 
cin >> readerid; 
r=query(readerid); 
if (r==NULL) 

cout <<"该读者不存在"<< endl; 
break; 

r->disp(); 
break; 
case '5': 
disp(); 
break; 
case '6': 
clear(); 
break; 
default:cout<<"输入错误,请从新输入:";break; 









//图书类,实现对图书的描述,图书的编号,书名,借出,还入等 
class Book 

private: 
//删除标记 1:已删 0:未删 
int tag; 
//图书编号 
int no; 
//书名 
char name[20]; 
//是否再架 1:再架 2:已借 
int onshelf; 
public: 
Book(){} 
//获取姓名 
char *getname() { return name; } 
//获取图书编号 
int getno(){ return no; } 
//获取删除标记 
int gettag(){ return tag; } 
//设置书名 
void setname(char na[]) 

strcpy(name,na); 

//删除图书 
void delbook(){ tag=1;} 
//增加图书 
void addbook(int n,char *na) 

tag=0; 
no=n; 
strcpy(name,na); 
onshelf=1; 

//借书操作 
int borrowbook() 

if (onshelf==1) 

onshelf=0; 
return 1; 

return 0; 

//还书操作 
void retbook() 

onshelf=1; 

//输出图书 
void disp() 

cout << setw(6) << no << setw(18) << name << setw(10) 
<<(onshelf==1? "在架":"已借") <<endl; 

}; 






//图书库类,实现对图书的维护,查找,删除等 
class BDatabase 

private: 
//图书记录指针 
int top; 
//图书记录 
Book book[Maxb]; 
public: 
//构造函数,将book.txt读到book[]中 
BDatabase() 

Book b; 
top=-1; 
fstream file("book.txt",ios::in); 
while (1) 

file.read((char *)&b,sizeof(b)); 
if (!file) break; 
top++; 
book[top]=b; 

file.close(); 

//全删 
void clear() 

top=-1; 

//增加图书 
int addbook(int n,char *na) 

Book *p=query(n); 
if (NULL==p) 

top++; 
book[top].addbook(n,na); 
return 1; 

return 0; 

//查找图书 
Book *query(int bookid) 

for (int i=0;i<=top;i++) 
if (book[i].getno()==bookid &&book[i].gettag()==0) 

return &book[i]; 

return NULL; 

//图书库维护 
void bookdata(); 
void disp() 

for (int i=0;i<=top;i++) 
if (book[i].gettag()==0) 
book[i].disp(); 

//析构函数,将book[]写到book.txt文件中 
~BDatabase() 

fstream file("book.txt",ios::out); 
for (int i=0;i<=top;i++) 
if (book[i].gettag()==0) 
file.write((char *)&book[i],sizeof(book[i])); 
file.close(); 

}; 
void BDatabase::bookdata() 

char choice; 
char bname[40]; 
int bookid; 
Book *b; 
while (choice!='0') 

cout <<"\n\n\n\t\t\t图 书 维 护 "<<endl<<endl; 
cout<<"\t\t1 新 增\n \t\t2 更 改\n\t\t3 删 除\n\t\t4 查 找\n\t\t5 显 示\n\t\t6 全 删\n\t\t0 退 出"<<endl; 
cin >> choice; 
switch (choice) 

221.11.46.*

4楼


case '1': 
cout << "输入图书编号:"<<endl; 
cin >> bookid; 
cout << "输入图书书名:"<<endl; 
cin >> bname; 
addbook(bookid,bname); 
break; 
case '2': 
cout << "输入图书编号:"<<endl; 
cin >> bookid; 
b=query(bookid); 
if (b==NULL) 

cout << " 该图书不存在 "<<endl; 
break; 

cout << "输入新的书名:"<<endl; 
cin >> bname; 
b->setname(bname); 
break; 
case '3': 
cout <<" 读入图书编号:"<<endl; 
cin >> bookid; 
b=query(bookid); 
if (b==NULL) 

cout <<" 该图书不存在" << endl; 
break; 

b->delbook(); 
break; 
case '4': 
cout << " 读入图书编号:"<<endl; 
cin >> bookid; 
b=query(bookid); 
if (b==NULL) 

cout <<" 该图书不存在"<< endl; 
break; 

b->disp(); 
break; 
case '5': 
disp(); 
break; 
case '6': 
clear(); 
break; 
default:cout<<"输入错误,请从新输入:"; 






//main() 函数的实现,程序的主界面的引导 

void main() 

char choice; 
int bookid,readerid; 
RDatabase ReaderDB; 
Reader *r; 
BDatabase BookDB; 
Book *b; 
while(choice!='0') 

cout <<endl<<endl<<"\t\t\t 图 书 管 理 系 统\n\n\n"; 


cout <<"\t\t\t1 借 书\n\n\t\t\t2 还 书 \n\n\t\t\t3 图 书 维 护\n\n\t\t\t4 读 者 维 护\n\n\t\t\t0 离 开"<<endl; 
cin >> choice; 
switch (choice) 

case '1': 
cout <<" 借书 读者编号:"; 
cin >>readerid; 
cout <<" 图书编号: "; 
cin >>bookid; 
//按编号查找 
r=ReaderDB.query(readerid); 
if (NULL==r) 

cout <<" 不存在该读者,不能借书"<< endl; 
break; 

b=BookDB.query(bookid); 
if (b==NULL) 

cout <<" 不存在该图书,不能借书"<< endl; 
break; 

if (b->borrowbook()==0) 

cout << " 该图书已借出,不能借书"<< endl; 
break; 

r->borrowbook(b->getno()); 
break; 
case '2': 
cout<<"还书\n 读者编号:"; 
cin >>readerid; 
cout << " 图书编号:"; 
cin >>bookid; 
r=ReaderDB.query(readerid); 
if (r==NULL) 

cout <<" 不存在该读者,不能还书" << endl; 
break; 

b=BookDB.query(bookid); 
if (b==NULL) 

cout <<" 不存在该图书,不能还书" <<endl; 
break; 

b->retbook(); 
r->retbook(b->getno()); 
break; 
case '3': 
BookDB.bookdata(); 
break; 
case '4': 
ReaderDB.readerdata(); 
break; 
default:cout<<"输入错误,请从新输入:"; 



}
 416427389风中劲竹

61.187.64.*

5楼

我靠 好长啊
202.206.40.*

6楼

有用TURBO C编的嘛??? C++不懂啊!~~~~~~~~~~
202.206.40.*

7楼

#include <stdio.h>
#include <stdlib.h>
#include <conio.h>

struct BOOK
 {
 int id,usr[10],total,store,days[10];
 char name[31],author[21];
 }books[100];
/*上面是结构体的定义,用于存放书籍及借书的信息。*/

void page_title(char *menu_item)
 {
 clrscr();
 printf(">>> 图 书 管 理 系 统 <<<\n\n- %s -\n\n",menu_item);
 }
/*上面是打印页眉的函数,同时通过参数menu_item,可以显示当前的状态。*/

void return_confirm(void)
 {
 printf("\n按任意键返回……\n");
 getch();
 }
/*上面是返回前请求确认的函数,以便在返回前观察结果*/

int search_book(void)
 {
 int n,i;
 printf("请输入图书序号:");
 scanf("%d",&i);
 for(n=0;n<100;n++)
 {
 if(books[n].id==i)
 {
 printf("书名:%s\n",books[n].name);
 printf("作者:%s\n",books[n].author);
 printf("存数:%d of ",books[n].store);
 printf("%d\n",books[n].total);
 return n;
 }
 }
 printf("\n输入错误或无效图书序号.\n");
 return -1;
 }
/*上面的函数是在数组中找到图书号匹配的记录,显示其信息并返
 回数组下标,如果找不到相应记录则提示错误并返回-1。*/

void book_out(void)
 {
 int n,s,l,d;
 page_title("借阅图书");
 if((n=search_book())!=-1&&books[n].store>0)
 {
 printf("请输入借书证序号:");
 scanf("%d",&s);
 printf("请输入可借天数:");
 scanf("%d",&d);
 for(l=0;l<10;l++)
 {
 if(books[n].usr[l]==0)
 {
 books[n].usr[l]=s;
 books[n].days[l]=d;
 break;
 }
 }
 books[n].store--;
 }
 if(n!=-1&&books[n].store==0) printf("此书已经全部借出.\n");
 return_confirm();
 }
/*上面是借书的函数,首先调用找书函数*/

void book_in(void)
 {
 int n,s,l;
 page_title("归还图书");
 if((n=search_book())!=-1&&books[n].store<books[n].total)
 {
 printf("借阅者图书证列表:\n");
 for(l=0;l<10;l++) 
 if (books[n].usr[l]!=0) 
 printf("[%d] - %d天\n",books[n].usr[l],books[n].days[l]);
 printf("请输入借书证序号:");
 scanf("%d",&s);
 for(l=0;l<10;l++) 
 {
 if(books[n].usr[l]==s)
 {
 books[n].usr[l]=0;
 books[n].days[l]=0;
 break; 
 }
 }
 books[n].store++;
 }
 if(n!=-1&&books[n].store==books[n].total) 
 printf("全部入藏.\n");
 return_confirm();
 }

void book_add(void)
 {
 int n;
 page_title("注册新书");
 for(n=0;n<100;n++) 
 if(books[n].id==0) break;
 printf("序号:");
 scanf("%d",&books[n].id);
 printf("书名:");
 scanf("%s",&books[n].name);
 printf("作者:");
 scanf("%s",&books[n].author);
 printf("数量:");
 scanf("%d",&books[n].total);
 books[n].store=books[n].total;
 return_confirm();
 }
void book_del(void)
 {
 int n;
 page_title("注销旧书");
 if((n=search_book())!=-1) books[n].id=0;
 printf("该书已注销.\n");
 return_confirm();
 }

void main(void)
 {
menu: page_title("操作选单");
 printf("请用数字键选择操作\n\n");
 printf("1 借阅图书\n2 归还图书\n\n");
 printf("3 注册新书\n4 注销旧书\n\n");
 printf("\n0 退出\n");
 switch(getch())
 {
 case '1' : book_out();break;
 case '2' : book_in();break;
 case '3' : book_add();break;
 case '4' : book_del();break;
 case '0' : exit(0);
 }
 goto menu;
 }
{
 int n;
 page_title("广?症慕");
 if((n=search_book())!=-1) books[n].id=0;
 printf("乎慕厮广?.\n");
 return_confirm();
 }

void main(void)
 {
menu: page_title("荷恬佥汽");
 printf("萩喘方忖囚佥夲荷恬\n\n");
 printf("1 処堋夕慕\n2 拷珊夕慕\n\n");
 printf("3 广过仟慕\n4 广?症慕\n\n");
 printf("\n0 曜竃\n");
 switch(getch())
 {
 case '1' : book_out();break;
 case '2' : book_in();break;
 case '3' : book_add();break;
 case '4' : book_del();break;
 case '0' : exit(0);
 }
 goto menu;
 } 



 QQ 521201338

202.107.200.*

8楼

老哥,这也想要个图书馆系统程序,赶着教作业啊!!
而且要1000句的!!!

220.184.188.*

9楼

老哥,我也要啊!1000句]
赶着上交啊!!!

10楼

老哥啊,ME TOO A !!

11楼

怎么每个人都赶着上交啊!!是同一个学校的吗???
老哥啊!!帮帮忙啊!!

12楼

选正同学,要自己遍知道吗
219.148.157.*

13楼

145 151 有错啊
222.84.94.*

14楼

垃圾呀!!!!
你们怎么不问下说明书怎么弄呀?制作过程碰到的,还有不足的问题呀!晕哦!

222.84.94.*

15楼

我怎么办呀!???都不会呀!之前没听课这怎么过呀这!?
202.200.121.*

16楼

那位高手发的程序,谢了。BUT看不懂,做一下解释?!能否?
221.232.108.*

17楼

能不能帮忙编一个商品房销售管理系统啊 统计内容:各城区平均价格,面积销售率比较。yanping0405@126.com
219.153.62.*

19楼

帮我做一个图书馆借书模块

21楼

break; 
case 3: 
printf("please input english:"); 
scanf("%d",&xenglish); 
break; 
case 4: 
printf("please input math:"); 
scanf("%d",&xmath); 
break; 

while(1){ 
pointer=pointer->next; 
if(pointer->num==key3) 

if(choose==1) 
{ for(i=0;i<256;i++) 

pointer->name[i]=xname[i]; 

break; 

else if(choose==2) 
{ pointer->china=xchina; 
break;} 
else if(choose==3) 
{ pointer->english=xenglish; 
break; 

else if(choose==4) 
{pointer->math=xmath; 
break;} 


return head; 

link delete_chengji(link head,int key2) 

link pointer; 
link back; 
pointer=head; 
while(1) 

if(head->num==key2) 
{ head=pointer->next; 
free(pointer); 
break; 

back=pointer; 
pointer=pointer->next; 
if(pointer->num==key2) 

back->next=pointer->next; 
free(pointer); 
break;} 

return head; 

link insert_chengji(link head,link new,int key3) 

link pointer; 
pointer=head; 
while(1) 

if(pointer==NULL){ 
new->next=head; 
head=new; 
break;} 
if(pointer->num==key3){ 
new->next=pointer->next; 
pointer->next=new; 
break;} 
pointer=pointer->next; 

return head; 

pingjufen(link head) 

link pointer; 
int pchina,ppchina; 
int penglish,ppenglish; 
int pmath,ppmath; 
int count; 
pchina=0; 
penglish=0; 
pmath=0; 
count=0; 
pointer=head; 
while(1) 

pchina=pchina+pointer->china; 
penglish=penglish+pointer->english; 
pmath=pmath+pointer->math; 
count=++count; 
if(pointer->next==NULL) 

break; 

pointer=pointer->next; 
 


ppchina=pchina/count; 
ppenglish=penglish/count; 
ppmath=pmath/count; 
printf("china ping jun fen:%d\n",ppchina); 
printf("english ping jun fen:%d\n",ppenglish); 
printf("math ping jun fen:%d\n",ppmath); 

main() 

for(;;) 

link head; 
link new; 
int key; 
int keynum; 
printf("0>exit the programm.\n"); 
printf("1>create list.\n"); 
printf("2>search chengji.\n"); 
printf("3>modify chengji.\n"); 
printf("4>delete chengji.\n"); 
printf("5>add chengji.\n"); 
printf("6>pingjunfeng.\n"); 
printf("7>print chengji.\n"); 
scanf("%d",&key); 
switch(key){ 
case 0: 
exit(0); 
case 1: 
head=creat_list(head); 
if(head!=NULL) 
{ printf_list(head);} 
break; 
case 2: 
printf("please input 0 Exit.\n"); 
printf("please input number for search:"); 
scanf("%d",&keynum); 
if(keynum==0){ 
break; } 
search_chengji(keynum,head); 
break; 
case 3: 
printf("please input number for modify:"); 
scanf("%d",&keynum); 
head=modify_chengji(head,keynum); 
if(head!=NULL) 

printf_list(head); 

break; 
case 4: 
printf("please input 0 exit\n"); 
printf("please input number for delete:"); 
scanf("%d",&keynum); 
if(keynum==0){ 
break; } 
head=delete_chengji(head,keynum); 
break; 
case 5: 
if(head!=NULL){ 
new=(link)malloc(sizeof(node)); 
printf("please input number:"); 
scanf("%d",&new->num); 
if(new->num==0){ 
break;} 
printf("please input name:"); 
scanf("%s",&new->name); 
printf("please input china:"); 
scanf("%d",&new->china); 
printf("please input english:"); 
scanf("%d",&new->english); 
printf("please input math:"); 
scanf("%d",&new->math); 
printf("please input the data number for insert:"); 
scanf("%d",&keynum); 
head=insert_chengji(head,new,keynum); 
if(head!=NULL) { 
printf_list(head);} 

break; 
case 6: 
pingjufen(head); 
break; 
case 7: 
printf_list(head); 
break; 


}

22楼

还有一个!

 
当前位置: 首页 >> 程序设计 >> C语言 >> 编程实例 >> C语言-编程实例-图书管理程序 
C语言-编程实例-图书管理程序 
IT电脑技术人才-加拿大技术移民指南 
 

--------------------------------------------------------------------------------
 
 
#include<sio.h>
#include<sing.h>
#include<conio.h>
#include<slib.h>
#include<ctype.h>
#define STACK_INIT_SIZE 10
#define OK 1
#define TRUE 1
#define FALSE 0
#define ERROR 0
suct student /*定义学生类型,用于存放借出的书籍*/
{
int carnum;
char lendbook[10];
}student[1000];
suct employ /*定义职工类型*/
{
int employnum;
char employname[15];
int employage;
char employsex[2];
char employleve[10];
long int employtage;
}employ[50];
suct book /*定义书的类型*/
{
int booknum;
char bookname[10];
char bookcreat[10];
int turefalse; /*用于借书和还书模块判断一本书是否借出的条件*/
}book[1000];
suct 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(suct 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(suct student),1,fp)!=0;i ) /*判断是否借阅了输入的书*/
{
if(scmp(student[i].lendbook,lendbook)==0) /*借阅了该书,进入下一循环,否则出错显示*/
{
fclose(fp);
fp=fopen("record.txt","r");
fp2=fopen("bookl.txt","w");
for(i=0;fread(&student[i],sizeof(suct student),1,fp)!=0;i )
{
if(scmp(student[i].lendbook,lendbook)==0)
{
continue; /*删除还掉的书的借书记录*/
}
fwrite(&student[i],sizeof(suct student),1,fp2); /*写入原来没还的书的记录*/
}
fclose(fp);
fclose(fp2);
fp=fopen("record.txt","w");
fp2=fopen("bookl.txt","r");
for(i=0;fread(&student[i],sizeof(suct student),1,fp2)!=0;i )
{
fwrite(&student[i],sizeof(suct 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(suct book),1,fp)!=0;i ) /*将书的记录写入临时文件,防止因为修改信息破坏以前的记录*/
{
if(i==n)
{
book[i].turefalse=1;
fwrite(&book[i],sizeof(suct book),1,fp2); /*将还的书的原来状态设为无人借阅的*/ 
continue;
}
fwrite(&book[i],sizeof(suct book),1,fp2);
}
fclose(fp);
fclose(fp2);
fp=fopen("book.txt","w");
fp2=fopen("bookl.txt","r");
for(i=0;fread(&book[i],sizeof(suct book),1,fp2)!=0;i )
{
fwrite(&book[i],sizeof(suct 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"); /*出错提示*/

23楼

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(suct 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(suct 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(suct
 

 

--------------------------------------------------------------------------------
 
 
book),1,fp)!=0;i )
{
if(scmp(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(suct student),1,fp);
fclose(fp);
fp=fopen("book.txt","r");
fp2=fopen("bookl.txt","w");
for(i=0;fread(&book[i],sizeof(suct book),1,fp)!=0;i )
{
if(scmp(book[i].bookname,student[n].lendbook)==0)
{
book[i].turefalse=0;
fwrite(&book[i],sizeof(suct book),1,fp2);
continue;
}
fwrite(&book[i],sizeof(suct book),1,fp2);
}
fclose(fp);
fclose(fp2);
fp=fopen("book.txt","w");
fp2=fopen("bookl.txt","r");
for(i=0;fread(&book[i],sizeof(suct book),1,fp2)!=0;i )
{
fwrite(&book[i],sizeof(suct 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(suct 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);
printf("目前共有%d本书\n",n);
printf("按任意键\n");
getch();
}
delcar()
{
FILE *fp,*fp2;
int i;
int carnum;
char choice;
fp=fopen("car.txt","r");
fp2=fopen("bookl.txt","w");
printf("请输入你要删除的卡号\n");
printf("如果你输入的卡号存在,系统自动删除该信息!如果不存在,系统不做任何改动\n");
scanf("%d",&carnum);
for(i=0;fread(&car[i],sizeof(suct car),1,fp)!=0;i )

24楼

{
if(car[i].carnum!=carnum)
{
fwrite(&car[i],sizeof(suct car),1,fp2);
}
}
fclose(fp);
fclose(fp2);
printf("是否真的要删除该卡?删除后该书籍的所有信息将无法恢复《Y/N》\n");
scanf("%s",&choice);
if(choice=='y'||choice=='Y')
{
fp=fopen("car.txt","w");
fp2=fopen("bookl.txt","r");
for(i=0;fread(&car[i],sizeof(suct car),1,fp2)!=0;i )
{
fwrite(&car[i],sizeof(suct car),1,fp);
}
fclose(fp);
fclose(fp2);
fp2=fopen("bookl.txt","w");
fclose(fp2);
printf("按任意键返回\n");
getch();
return;
}
else
{
printf("按任意键返回\n");
getch();
return;
}
}
addcar()
{
FILE *fp;
int i=0;
fp=fopen("car.txt","a ");
printf("请你输入卡号\n");
scanf("%d",&car[i].carnum);
printf("请你输入学生姓名\n");
scanf("%s",car[i].studentname);
printf("请你输入班级\n");
scanf("%d",&car[i].studentclass);
fwrite(&car[i],sizeof(suct car),1,fp);
fclose(fp);
printf("输入完毕,任意键返回\n");
getch();
}
changemploy()
{
FILE *fp,*fp2;
char employname[10],choice;
int i;
fp=fopen("employ.txt","r");
fp2=fopen("bookl.txt","w");
printf("请你输入要修改的职工的书字\n");
scanf("%s",employname);
for(i=0;fread(&employ[i],sizeof(suct employ),1,fp)!=0;i )
{

if(scmp(employ[i].employname,employname)==0)
{
printf("你所要修改的职工的资料如下,请选择你要修改的内容\n");
printf("<职工号:%d职工名:%s 年龄:%d 性别:%s 学历:%s 工资:%d>\n",employ[i].employnum,employ[i].employname,employ[i].employage,employ[i].employsex,employ[i].employleve,employ[i].employtage);
printf("1:修改职工的号\n");
printf("2:修改职工名\n");
printf("3:修改职工年龄\n");
printf("4:修改职工工资\n");
printf("5:修改职工学历\n");
printf("请输入1-5:");
scanf("%s",&choice);
switch(choice)
{
case '1':
{
printf("请输入新的职工号\n");
scanf("%d",&employ[i].employnum);
fwrite(&employ[i],sizeof(suct employ),1,fp2);
}break;
case '2':
{
printf("请输入新的职工姓名\n");
scanf("%s",employ[i].employname);
fwrite(&employ[i],sizeof(suct employ),1,fp2);
}break;
case '3':
{
printf("请输入新的年龄\n");
scanf("%d",&employ[i].employage);
fwrite(&employ[i],sizeof(suct employ),1,fp2);
}break;
case '4':
{
printf("请输入新的职工工资\n");
scanf("%d",&employ[i].employtage);
fwrite(&employ[i],sizeof(suct employ),1,fp2);
}break;
case '5':
{
printf("请输入新的职工学历\n");
scanf("%s",employ[i].employleve);
fwrite(&employ[i],sizeof(suct employ),1,fp2);
}
defaut:printf("没有这样的操作");break;
}
continue;
}
fwrite(&employ[i],sizeof(suct employ),1,fp2);
}
fclose(fp);
fclose(fp2);
fp=fopen("employ.txt","w");
fp2=fopen("bookl.txt","r");
for(i=0;fread(&employ[i],sizeof(suct employ),1,fp2)!=0;i )
{

fwrite(&employ[i],sizeof(suct employ),1,fp);
}
fclose(fp);
fclose(fp2);
fp2=fopen("bookl.txt","w");
fclose(fp2);
printf("按任意键返回\n");
getchar();
return;
}
delemploy()
{
FILE *fp,*fp2;
int i;
char employname[10],choice;
fp=fopen("employ.txt","r");
fp2=fopen("bookl.txt","w");
printf("请输入你要删除的职工名\n");
printf("如果你输入的职工存在,系统自动删除该信息!如果不存在,系统不做任何改动\n");
scanf("%s",employname);

25楼

for(i=0;fread(&employ[i],sizeof(suct employ),1,fp)!=0;i )
{

if(scmp(employname,employ[i].employname)!=0)
{
fwrite(&employ[i],sizeof(suct employ),1,fp2);
}
}
fclose(fp);
fclose(fp2);
printf("是否真的要删除该职工信息?删除后的所有信息将无法恢复《Y/N》\n");
scanf("%s",&choice);
if(choice=='y'||choice=='Y')
{
fp=fopen("employ.txt","w");
fp2=fopen("bookl.txt","r");
for(i=0;fread(&employ[i],sizeof(suct employ),1,fp2)!=0;i )
{

fwrite(&employ[i],sizeof(suct employ),1,fp);
}
fclose(fp);
fclose(fp2);
fp2=fopen("bookl.txt","w");
fclose(fp2);
printf("按任意键返回\n");
getch();
return;
}
else
{
printf("按任意键返回\n");
getch();
return;
}
}
employcount()
{
FILE *fp;
int i,n=0;
fp=fopen("employ.txt","r");
for(i=0;fread(&employ[i],sizeof(suct employ),1,fp)!=0;i )
{
printf("第%d职工的信息如下:\n<职工号:%d 职工名:%s 年龄:%d 性别:%s 学历:%s 工资:%d>\n",n 1,employ[i].employnum,employ[i].employname,employ[i].employage,employ[i].employsex,employ[i].employleve,employ[i].employtage);
n ;
}
fclose(fp);
printf("目前共有%d个职工\n",n);
printf("按任意键返回");
}
addemploy()
{
FILE *fp;
char choice='y';
int i=1;
fp=fopen("employ.txt","a ");
while(choice=='y'||choice=='Y')
{
printf("请你输入职工号码\n");
scanf("%d",&employ[i].employnum);
printf("请你输入职工名\n"); 
scanf("%s",employ[i].employname);
printf("请输入职工年龄\n");
scanf("%d",&employ[i].employage);
printf("请你输入性别\n");
scanf("%s",employ[i].employsex); 
printf("请你输入职工的学历水平\n"); 
scanf("%s",employ[i].employleve);
printf("请输入职工的工资\n");
scanf("%d",&employ[i].employtage);
fwrite(&employ[i],sizeof(suct employ),1,fp);
printf("是否要输入下个职工信息?\n");
scanf("%s",&choice);
}
printf("按任意键返回\n");
fclose(fp);
}
addbook()
{
FILE *fp;
int i=0;
char choice='y';
fp=fopen("book.txt","a ");
while(choice=='y'||choice=='Y')
{
printf("请你输入第%d本书的序号\n",i 1);
scanf("%d",&book[i].booknum);
printf("请你输入书名\n");
scanf("%s",book[i].bookname);
printf("请你输入书的作者\n");
scanf("%s",book[i].bookcreat);
printf("请设为1或0,1代表书还没人借,0表示书已经借出,设其他值,程序运行时无法得出正常结果\n");
printf("请你设定书的状态\n");
scanf("%d",&book[i].turefalse);
fwrite(&book[i],sizeof(suct book),1,fp);
printf("是否要输入下本书\n");
scanf("%s",&choice);
}
fclose(fp);
}
bookcount()
{
FILE *fp;
int i,n=0;
fp=fopen("book.txt","r");
for(i=0;fread(&book[i],sizeof(suct book),1,fp)!=0;i )
{

if(book[i].booknum!=0&&slen(book[i].bookname)!=0&&slen(book[i].bookcreat)!=0)
{
printf("第%d本书<序号:%d 书名:%s 作者:%s 状态:%d>\n",i 1,book[i].booknum,book[i].bookname,book[i].bookcreat,book[i].turefalse);
n=n 1;
}
}
fclose(fp);
printf("目前共有%d本书\n",n);
printf("按任意键\n");
}
findbook()
{
FILE *fp;
char bookname[10];
int ture,i;
fp=fopen("book.txt","r");
printf("请输入你要查找的书名\n");
scanf("%s",bookname);
for(i=0;fread(&book[i],sizeof(suct book),1,fp)!=0;i )
{

if(scmp(bookname,book[i].bookname)==0)
{
if(book[i].turefalse==1)
{
printf("这本书的详细资料是:%d %s %s 此书现在无人借阅\n",book[i].booknum,book[i].bookname,book[i].bookcreat);

26楼

}
else {printf("这本书已经有人借出\n");fclose(fp);return;}
fclose(fp);
return;
}
}
printf("没有你要查询的书籍\n");
fclose(fp);
return;
}
delbook()
{
FILE *fp,*fp2;
int i;
char bookname[10],choice;
fp=fopen("book.txt","r");
fp2=fopen("bookl.txt","w");
printf("请输入你要删除的书名\n");
printf("如果你输入的书名存在,系统自动删除该信息!如果不存在,系统不做任何改动\n");
scanf("%s",bookname);
for(i=0;fread(&book[i],sizeof(suct book),1,fp)!=0;i )
{

if(scmp(bookname,book[i].bookname)!=0)
{
fwrite(&book[i],sizeof(suct book),1,fp2);
}
}
fclose(fp);
fclose(fp2);
printf("是否真的要删除该书籍?删除后该书籍的所有信息将无法恢复《Y/N》\n");
scanf("%s",&choice);
if(choice=='y'||choice=='Y')
{
fp=fopen("book.txt","w");
fp2=fopen("bookl.txt","r");
 
--------------------------------------------------------------------------------
 
 
;
fclose(fp2);
fp2=fopen("bookl.txt","w");
fclose(fp2);
printf("按任意键返回\n");
getchar();
return;
}
delemploy()
{
FILE *fp,*fp2;
int i;
char employname[10],choice;
fp=fopen("employ.txt","r");
fp2=fopen("bookl.txt","w");
printf("请输入你要删除的职工名\n");
printf("如果你输入的职工存在,系统自动删除该信息!如果不存在,系统不做任何改动\n");
scanf("%s",employname);
for(i=0;fread(&employ[i],sizeof(suct employ),1,fp)!=0;i )
{

if(scmp(employname,employ[i].employname)!=0)
{
fwrite(&employ[i],sizeof(suct employ),1,fp2);
}
}
fclose(fp);
fclose(fp2);
printf("是否真的要删除该职工信息?删除后的所有信息将无法恢复《Y/N》\n");
scanf("%s",&choice);
if(choice=='y'||choice=='Y')
{
fp=fopen("employ.txt","w");
fp2=fopen("bookl.txt","r");
for(i=0;fread(&employ[i],sizeof(suct employ),1,fp2)!=0;i )
{

fwrite(&employ[i],sizeof(suct employ),1,fp);
}
fclose(fp);
fclose(fp2);
fp2=fopen("bookl.txt","w");
fclose(fp2);
printf("按任意键返回\n");
getch();
return;
}
else
{
printf("按任意键返回\n");
getch();
return;
}
}
employcount()
{
FILE *fp;
int i,n=0;
fp=fopen("employ.txt","r");
for(i=0;fread(&employ[i],sizeof(suct employ),1,fp)!=0;i )
{
printf("第%d职工的信息如下:\n<职工号:%d 职工名:%s 年龄:%d 性别:%s 学历:%s 工资:%d>\n",n 1,employ[i].employnum,employ[i].employname,employ[i].employage,employ[i].employsex,employ[i].employleve,employ[i].employtage);
n ;
}
fclose(fp);
printf("目前共有%d个职工\n",n);
printf("按任意键返回");
}
addemploy()
{
FILE *fp;
char choice='y';
int i=1;
fp=fopen("employ.txt","a ");
while(choice=='y'||choice=='Y')
{
printf("请你输入职工号码\n");
scanf("%d",&employ[i].employnum);
printf("请你输入职工名\n"); 
scanf("%s",employ[i].employname);
printf("请输入职工年龄\n");
scanf("%d",&employ[i].employage);
printf("请你输入性别\n");
scanf("%s",employ[i].employsex); 
printf("请你输入职工的学历水平\n"); 
scanf("%s",employ[i].employleve);
printf("请输入职工的工资\n");
scanf("%d",&employ[i].employtage);
fwrite(&employ[i],sizeof(suct employ),1,fp);
printf("是否要输入下个职工信息?\n");
scanf("%s",&choice);
}
printf("按任意键返回\n");
fclose(fp);
}
addbook()
{
FILE *fp;
int i=0;
char choice='y';

27楼

fp=fopen("book.txt","a ");
while(choice=='y'||choice=='Y')
{
printf("请你输入第%d本书的序号\n",i 1);
scanf("%d",&book[i].booknum);
printf("请你输入书名\n");
scanf("%s",book[i].bookname);
printf("请你输入书的作者\n");
scanf("%s",book[i].bookcreat);
printf("请设为1或0,1代表书还没人借,0表示书已经借出,设其他值,程序运行时无法得出正常结果\n");
printf("请你设定书的状态\n");
scanf("%d",&book[i].turefalse);
fwrite(&book[i],sizeof(suct book),1,fp);
printf("是否要输入下本书\n");
scanf("%s",&choice);
}
fclose(fp);
}
bookcount()
{
FILE *fp;
int i,n=0;
fp=fopen("book.txt","r");
for(i=0;fread(&book[i],sizeof(suct book),1,fp)!=0;i )
{

if(book[i].booknum!=0&&slen(book[i].bookname)!=0&&slen(book[i].bookcreat)!=0)
{
printf("第%d本书<序号:%d 书名:%s 作者:%s 状态:%d>\n",i 1,book[i].booknum,book[i].bookname,book[i].bookcreat,book[i].turefalse);
n=n 1;
}
}
fclose(fp);
printf("目前共有%d本书\n",n);
printf("按任意键\n");
}
findbook()
{
FILE *fp;
char bookname[10];
int ture,i;
fp=fopen("book.txt","r");
printf("请输入你要查找的书名\n");
scanf("%s",bookname);
for(i=0;fread(&book[i],sizeof(suct book),1,fp)!=0;i )
{

if(scmp(bookname,book[i].bookname)==0)
{
if(book[i].turefalse==1)
{
printf("这本书的详细资料是:%d %s %s 此书现在无人借阅\n",book[i].booknum,book[i].bookname,book[i].bookcreat);
}
else {printf("这本书已经有人借出\n");fclose(fp);return;}
fclose(fp);
return;
}
}
printf("没有你要查询的书籍\n");
fclose(fp);
return;
}
delbook()
{
FILE *fp,*fp2;
int i;
char bookname[10],choice;
fp=fopen("book.txt","r");
fp2=fopen("bookl.txt","w");
printf("请输入你要删除的书名\n");
printf("如果你输入的书名存在,系统自动删除该信息!如果不存在,系统不做任何改动\n");
scanf("%s",bookname);
for(i=0;fread(&book[i],sizeof(suct book),1,fp)!=0;i )
{

if(scmp(bookname,book[i].bookname)!=0)
{
fwrite(&book[i],sizeof(suct book),1,fp2);
}
}
fclose(fp);
fclose(fp2);
printf("是否真的要删除该书籍?删除后该书籍的所有信息将无法恢复《Y/N》\n");
scanf("%s",&choice);
if(choice=='y'||choice=='Y')
{
fp=fopen("book.txt","w");
fp2=fopen("bookl.txt","r");
for(i=0;fread(&book[i],sizeof(suct book),1,fp2)!=0;i )
{

fwrite(&book[i],sizeof(suct book),1,fp);
}
fclose(fp);
fclose(fp2);
fp2=fopen("bookl.txt","w");
fclose(fp2);
printf("按任意键返回\n");
getch();
return;
}
else
{
printf("按任意键返回\n");
getch();
return;
}
}
changebook()
{
FILE *fp,*fp2;
char bookname[10],choice;
int i;
fp=fopen("book.txt","r");
fp2=fopen("bookl.txt","w");
printf("请你输入要修改的书籍的书字\n");
scanf("%s",bookname);
for(i=0;fread(&book[i],sizeof(suct book),1,fp)!=0;i )
{

if(scmp(book[i].bookname,bookname)==0)
{
printf("你所要修改的书的资料如下,请选择你要修改的内容\n");
printf("序号:〈%d〉 书名:〈%s〉 作者:〈%s〉 \n",book[i].booknum,book[i].bookname,book[i].bookcreat);
printf("1:修改书的序号\n");
printf("2:修改书名\n");
printf("3:修改作者\n");
printf("请输入1-3:");
scanf("%s",&choice);
switch(choice)
{
case '1':
{
printf("请输入新的序号\n");
scanf("%d",&book[i].booknum);

28楼

fwrite(&book[i],sizeof(suct book),1,fp2);
}break;
case '2':
{
printf("请输入新的书名\n");
scanf("%s",book[i].bookname);
fwrite(&book[i],sizeof(suct book),1,fp2);
}break;
case '3':
{
printf("请输入新的作者\n");
scanf("%s",book[i].bookcreat);
fwrite(&book[i],sizeof(suct book),1,fp2);
}break;
defaut:printf("没有这样的操作");break;
}
continue;
}
fwrite(&book[i],sizeof(suct book),1,fp2);
}
fclose(fp);
fclose(fp2);
fp=fopen("book.txt","w");
fp2=fopen("bookl.txt","r");
for(i=0;fread(&book[i],sizeof(suct book),1,fp2)!=0;i )
{

fwrite(&book[i],sizeof(suct book),1,fp);
}
fclose(fp);
fclose(fp2);
fp2=fopen("bookl.txt","w");
fclose(fp2);
printf("按任意键返回\n");
getchar();
return;
}
main()
{
char ch1,ch2,ch3,ch4,ch5;
do
{
clrscr();
printf("**************欢迎进入中文图书馆管理程序!****************\n");
printf("~~~~~~~~~~\t\t\t~~~~~~~~~~~~\n");
printf("制作人:邓敢\t班级:网络学院计0111班\t学号:hk1113183081\n");
printf("联系地址:华中科技大学韵苑28栋****电话:027-87441972****手机:13554664800\n");
printf("%%%%%%%%%%%%%%%%%%%%%%%%%%%\n");
printf("\t\t请你选择操作类型:\n");
printf(" 1:<查阅图书>\n");
printf(" 2:<借阅图书>\n");
printf(" 3:<管理系统>\n");
printf(" 4:<还书>\n");
printf(" 0:<退出>\n");
printf("请输入0--4\n");
scanf("%s",&ch1);
switch(ch1)
{
case '1':chabook();break;
case '2':lendbook();;break;
case '3':{
do
{
clrscr();
printf("---------------欢迎进入管理系统!--------------\n");
printf(" 1:<增加图书>\n");
printf(" 2:<删除图书>\n");
printf(" 3:<修改图书资料>\n");
printf(" 4:<书籍统计>\n");
printf(" 5:<职工管理系统>\n");
printf(" 6:<学生管理系统>\n");
printf(" 0:<返回>\n");
printf("请输入0--6,其他输入非法!\n");
scanf("%s",&ch2);
switch(ch2)
{
case '1':addbook();
break;
case '2':delbook();break;
case '3':changebook();break;
case '4':bookcount();getch();break;
case '5':{do
{
clrscr();
printf("---------------欢迎进入职工管理系统!--------------\n");
printf(" 1:<增加员工>\n");
printf(" 2:<删除员工>\n");
printf(" 3:<修改员工资料>\n");
printf(" 4:<员工统计>\n");
printf(" 0:<返回>\n");
printf("请输入0--4,其他输入非法!\n");
scanf("%s",&ch3);
switch(ch3)
{
case '1':addemploy();getch();break;
case '2':delemploy();break;
case '3':changemploy();break;
case '4':employcount();getch();break;
case '0':break;
default:printf("无此操作\n");getch();break;
}
}while(ch3!='0');}break;
case '6':{do
{
clrscr();
printf("---------------欢迎进入学生管理系统!--------------\n");
printf(" 1:<申请新卡>\n");
printf(" 2:<删除卡号>\n");
printf(" 3:<借书统计>\n");
printf(" 4:<卡号统计>\n");
printf(" 0:<返回>\n");
printf("请输入0--4,其他输入非法!\n");
scanf("%s",&ch4);
switch(ch4)
{
case '1':addcar();break;
case '2':delcar();break;
case '3':lendcount();break;
case '4':carcount();break;
case '0':break;
default:printf("无此操作\n");getch();break;
}
}while(ch4!='0');}break;
case '0':break;
default:printf("无此操作\n");getch();break;
}
}while(ch2!='0');}break;
case '4':huanbook();break;
case '0':break;
default:printf("无此操作\n");getch();break;

29楼

}
}while(ch1!='0');
}

--------------------------------------------------------------------------------
 
 
R>for(i=0;fread(&book[i],sizeof(suct book),1,fp2)!=0;i )
{

fwrite(&book[i],sizeof(suct book),1,fp);
}
fclose(fp);
fclose(fp2);
fp2=fopen("bookl.txt","w");
fclose(fp2);
printf("按任意键返回\n");
getch();
return;
}
else
{
printf("按任意键返回\n");
getch();
return;
}
}
changebook()
{
FILE *fp,*fp2;
char bookname[10],choice;
int i;
fp=fopen("book.txt","r");
fp2=fopen("bookl.txt","w");
printf("请你输入要修改的书籍的书字\n");
scanf("%s",bookname);
for(i=0;fread(&book[i],sizeof(suct book),1,fp)!=0;i )
{

if(scmp(book[i].bookname,bookname)==0)
{
printf("你所要修改的书的资料如下,请选择你要修改的内容\n");
printf("序号:〈%d〉 书名:〈%s〉 作者:〈%s〉 \n",book[i].booknum,book[i].bookname,book[i].bookcreat);
printf("1:修改书的序号\n");
printf("2:修改书名\n");
printf("3:修改作者\n");
printf("请输入1-3:");
scanf("%s",&choice);
switch(choice)
{
case '1':
{
printf("请输入新的序号\n");
scanf("%d",&book[i].booknum);
fwrite(&book[i],sizeof(suct book),1,fp2);
}break;
case '2':
{
printf("请输入新的书名\n");
scanf("%s",book[i].bookname);
fwrite(&book[i],sizeof(suct book),1,fp2);
}break;
case '3':
{
printf("请输入新的作者\n");
scanf("%s",book[i].bookcreat);
fwrite(&book[i],sizeof(suct book),1,fp2);
}break;
defaut:printf("没有这样的操作");break;
}
continue;
}
fwrite(&book[i],sizeof(suct book),1,fp2);
}
fclose(fp);
fclose(fp2);
fp=fopen("book.txt","w");
fp2=fopen("bookl.txt","r");
for(i=0;fread(&book[i],sizeof(suct book),1,fp2)!=0;i )
{

fwrite(&book[i],sizeof(suct book),1,fp);
}
fclose(fp);
fclose(fp2);
fp2=fopen("bookl.txt","w");
fclose(fp2);
printf("按任意键返回\n");
getchar();
return;
}
main()
{
char ch1,ch2,ch3,ch4,ch5;
do
{
clrscr();
printf("**************欢迎进入中文图书馆管理程序!****************\n");
printf("~~~~~~~~~~\t\t\t~~~~~~~~~~~~\n");
printf("制作人:邓敢\t班级:网络学院计0111班\t学号:hk1113183081\n");
printf("联系地址:华中科技大学韵苑28栋****电话:027-87441972****手机:13554664800\n");
printf("%%%%%%%%%%%%%%%%%%%%%%%%%%%\n");
printf("\t\t请你选择操作类型:\n");
printf(" 1:<查阅图书>\n");
printf(" 2:<借阅图书>\n");
printf(" 3:<管理系统>\n");
printf(" 4:<还书>\n");
printf(" 0:<退出>\n");
printf("请输入0--4\n");
scanf("%s",&ch1);
switch(ch1)
{
case '1':chabook();break;
case '2':lendbook();;break;
case '3':{
do
{
clrscr();
printf("---------------欢迎进入管理系统!--------------\n");
printf(" 1:<增加图书>\n");
printf(" 2:<删除图书>\n");
printf(" 3:<修改图书资料>\n");
printf(" 4:<书籍统计>\n");
printf(" 5:<职工管理系统>\n");
printf(" 6:<学生管理系统>\n");
printf(" 0:<返回>\n");
printf("请输入0--6,其他输入非法!\n");
scanf("%s",&ch2);
switch(ch2)
{
case '1':addbook();
break;
case '2':delbook();break;
case '3':changebook();break;
case '4':bookcount();getch();break;
case '5':{do
{
clrscr();
printf("---------------欢迎进入职工管理系统!--------------\n");
printf(" 1:<增加员工>\n");
printf(" 2:<删除员工>\n");
printf(" 3:<修改员工资料>\n");
printf(" 4:<员工统计>\n");
printf(" 0:<返回>\n");
printf("请输入0--4,其他输入非法!\n");
scanf("%s",&ch3);
switch(ch3)
{
case '1':addemploy();getch();break;
case '2':delemploy();break;
case '3':changemploy();break;
case '4':employcount();getch();break;
case '0':break;
default:printf("无此操作\n");getch();break;
}
}while(ch3!='0');}break;
case '6':{do
{
clrscr();
printf("---------------欢迎进入学生管理系统!--------------\n");
printf(" 1:<申请新卡>\n");
printf(" 2:<删除卡号>\n");
printf(" 3:<借书统计>\n");
printf(" 4:<卡号统计>\n");
printf(" 0:<返回>\n");
printf("请输入0--4,其他输入非法!\n");
scanf("%s",&ch4);
switch(ch4)
{
case '1':addcar();break;
case '2':delcar();break;
case '3':lendcount();break;
case '4':carcount();break;
case '0':break;
default:printf("无此操作\n");getch();break;
}
}while(ch4!='0');}break;
case '0':break;
default:printf("无此操作\n");getch();break;
}
}while(ch2!='0');}break;
case '4':huanbook();break;
case '0':break;
default:printf("无此操作\n");getch();break;
}
}while(ch1!='0');
}


 

--------------------------------------------------------------------------------
 
 
k;
default:printf("无此操作\n");getch();break;
}
}while(ch1!='0');
}

221.200.52.*

30楼

有没简单的啊  我们急用啊
219.148.131.*

31楼

就是呀有没有100行以内的,我们急用呀,最好要加说明书,或者是提示论文
SOS救命呀

218.77.86.*

32楼

我晕啊
都这么长
抄都抄不过来啊
哪位仁兄行行好。写个短点的啊

发表回复

内 容:
用户名:
  
©2010 Baidu 贴吧协议  意见反馈