77范文网 - 专业文章范例文档资料分享平台

(最新版)图书管理系统毕业课程设计内容(4)

来源:网络收集 时间:2018-11-27 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

8总结

本程序使用了3个类:图书类,读者类,管理员类。使用链表进行储存,查找时按照节点顺序依次查照。根据输入的结果调用相应函数,图书馆的基本功能

大都能够实现。

9 结论

我的这个图书馆管理系统做的不是很好,有些基本功能能够实现,虽然有借书、还书以及对读者、管理员、图书的维护,但是有很多细节操作没有体现出来,所以需要进一步改正,如可以对读者增加派生类实现对学生、研究所、

老师等的区别,还有文件的保存也需要改进。

通过本次课程设计,让我对C++有了进一步的了解和使用,能把学了的东西用于实践还是让我非常有成就感,但是不足的是对类、派生类还有指针以及文件的运用掌握的不是很好,所以我会在假期内通过多看书反复操作提高自己

的编程能力。在这里还要感谢诸位老师的支持和信赖。

附 录

附录1 源代码清单 #include

{ private:

int tag; int no;编号 char name[10]; int workage;工龄

int salary; public:

Librarian(){}

char *getname(){return name;} int gettag(){return tag;} int getno(){return no;}

void setname(char na[])

{

strcpy(name,na);

}

void delworker(){tag=1;}

void addlibrarian(int n,char *na)增加管理员

{

tag=0; no=n; strcpy(name,na); workage=0; salary=2000;

}

void disp()读出管理员信息

{

cout<

资:\

} };

管理员类库,实现建立管理员的个人资料

class LDatabase

{ private:

int top; 管理员记录指针

Librarian work[20];管理员记录

public:

LDatabase() 构造函数,将worker.txt读到work[]中

{

Librarian x;

top=-1;

fstream file(\打开一个输入文件

while (1)

{

file.read((char *)&x,sizeof(x));

if (!file)break;

top++; work[top]=x;

}

file.close(); 关闭 worker.txt

}

void clear()删除所有管理员信息

{ top=-1;

}

int addlibrarian(int n,char *na)添加管理员时先查找是否存在

{

Librarian *p=query(n);

if (p==NULL)

{ top++;

work[top].addlibrarian(n,na);

return 1;

} return 0;

}

Librarian *query(int workerid)按编号查找

{

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

if (work[i].getno()==workerid && work[i].gettag()==0)

{

return &work[i];

} return NULL;

}

void disp() 输出所有管理员信息

{

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

work[i].disp();

}

void workerdata();管理员库维护

~LDatabase() 析构函数,将work[]写到worker.txt文件中

{

fstream file(\

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

file.write((char *)&work[i],sizeof(work[i]));

file.close();

} };

void LDatabase::workerdata()

{

char choice; char wname[20]; int workerid; Librarian *w; while (choice!='0')

{

cout <<\管理员维护\\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退出

\cin >> choice; switch (choice)

{

case '1': cout << \输入管理员编号:\

cin >> workerid; cout << \输入管理员姓名:\

cin >> wname;

addlibrarian (workerid,wname);

break; case '2': cout << \输入管理员编号:\

cin >> workerid; w=query(workerid);

if (w==NULL)

{

cout << \该管理员不存在 \

break;

}

cout << \输入新的姓名:\

cin >> wname; w->setname(wname);

break; case '3':

cout << \输入管理员编号:\ cin >> workerid;

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库(最新版)图书管理系统毕业课程设计内容(4)在线全文阅读。

(最新版)图书管理系统毕业课程设计内容(4).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/315478.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: