饭卡管理系统.docx

上传人:b****6 文档编号:6630334 上传时间:2023-01-08 格式:DOCX 页数:24 大小:71.05KB
下载 相关 举报
饭卡管理系统.docx_第1页
第1页 / 共24页
饭卡管理系统.docx_第2页
第2页 / 共24页
饭卡管理系统.docx_第3页
第3页 / 共24页
饭卡管理系统.docx_第4页
第4页 / 共24页
饭卡管理系统.docx_第5页
第5页 / 共24页
点击查看更多>>
下载资源
资源描述

饭卡管理系统.docx

《饭卡管理系统.docx》由会员分享,可在线阅读,更多相关《饭卡管理系统.docx(24页珍藏版)》请在冰豆网上搜索。

饭卡管理系统.docx

饭卡管理系统

 

指导教师

班级

姓名

学号

完成日期

系统需求:

随着宁波大学的发展,学生,教师及外来人员的不断增加,对于食堂来讲,普通意义上的现金交易严重影响了工作效率,使消费者等待时间加长,食堂交易方式数字化已经刻不容缓,宁波大学饭卡管理系统就是基于以上问题开发,基本上能实现普通交易的功能,同时又能提高工作效率。

功能分析:

宁大高校饭卡信息包括:

饭卡号码、饭卡所有者信息、初次办卡时间、余额。

其中,饭卡的所有者分为学生、教师、临时人员,学生有各自的班级号,教师有所属学院等信息。

实现功能:

(1)学生入学或老师新调入,需要新建一张饭卡。

(2)学生毕业或老师调离,撤销当前对象的饭卡。

(3)饭卡的充值和消费。

(4)查询和排序功能

A:

按饭卡所有人姓名查询,输出此饭卡的所有信息。

B:

按饭卡号码查询,输出此饭卡的所有信息。

C:

按饭卡号码大小排序,输出所有饭卡的信息。

程序设计:

类:

基类,设置初始信息,设置充值,消费,余额,信息查询对象函数,初始信息中包括人的公有特征,如姓名,性别,身份证号码。

声明代码:

类:

从类公有继承初始信息函数、查询函数,自己再设置独立的关于学生的对象,譬如班级号和类别,并要求对卡号保存。

声明代码:

类:

从类公有继承初始信息函数、查询函数,自己再设置独立的关于教师的对象,譬如所属学院、职称,并要求对卡号保存。

声明代码:

类:

从类公有继承初始信息函数、查询函数,由于是临时卡,不保存卡号。

声明代码:

遇到问题:

(1)当查询充值余额和消费余额时,程序正常是调用()充值函数、()消费函数、()余额函数,但是当运行余额函数时,总会2次调用充值和消费函数,这样就直接导致充值的金额和消费的余额扩大一倍,最后发现原来是返回函数写错了,因为是余额1是充值金额,2是消费金额,我在而我都返回了值给充值函数、消费函数和余额函数。

(2)按照卡号查询饭卡所有者信息时,除了初始信息,姓名,性别,身份证号码外,最主要的还是查询出这个号码的所剩余额,刚开始时我使用的是调用充值,消费函数,这样一来,当输出余额是会弹出对话框,问你充了多少钱,消费了多少钱,一般情况下查询时肯定不会充值和消费,所以应该输入充值0消费0,但是这样对于操作会很繁琐,虽然结果一样会输出,最后我直接调用对象,直接输出,这样就不用再手动输入了,结果直接会显示在显示屏上。

(3)删除信息函数,最后由于查的可以用指针的方法用和函数彻底释放内存中的信息,但是由于对的认识不够深,不会用指针的方法处理这个删除任务,所以简而求其次,把各个初值都赋0值,这样的话信息就会以0初值的方式显示,也可以说基本完成删除信息的任务

(4)用姓名查找,首先想到怎么去掉用姓名函数,然后通过再把和姓名相关的信息输出,但是写好程序后,不管输入怎么的姓名,程序就是无动于衷,什么都输不出,最后和老师一讨论,决定用匹配的方式,就是输入的姓名和原始建卡时所存在的姓名匹配,成功的话设1,输出建卡时的内容,简单易懂

改进:

这个程序只能说够用,挺基本的,很多功能还需要修改完善,譬如可以实现个人历史充值记录和消费记录,然后可以知道他的日平均消费或者月平均消费,对于数字的输入也没有比较好的识别,譬如金额可以输入负数可以输入字母,虽然程序中写明用数字,但是实用中难免会出现误输入,系统就不会报错。

感想:

最最有体会的地方就是我对程序员致以最高的尊敬,写程序真的是太痛苦了,对于初学语言的我来说,亲自写个程序对我是莫大的考验,整个程序涉及到了的各个方面,如书中的继承,结构,类,运算符操作,数值定义方法等等,一旦程序写完觉得自己整个人都轻松了很多,其中我要感谢帮助过我的人,我的指导老师,我的同窗,我想要真正写个能在实际生活中使用的程序,凭现在的我是万万不可能的,这得积累几年的经验,几年的锻炼才可以啊,虽然这是个基础程序,但也凝结了我几天的辛勤劳作,万事开头难,有了这次实践,我想我以后会做的更好。

 

功能框图:

系统总程序:

<>

<>

<>

;

卡类

{

:

;拥卡者性别

;拥卡者

1;拥卡者卡号

;拥卡者姓名

;初次办卡的时间

;卡内余额

;卡号设为静态,可以使卡号连续增加

:

();

();设置拥卡者性别

();获得拥卡者性别

();设置拥卡者

();获得拥卡者的

();设置拥卡者名字

();获取拥卡者名字

();设置办卡时间

();获取办卡时间

();充值

();消费

();获取卡内余额

();获取饭卡编号

();消除饭卡

();新建饭卡

};

学生类,派生自卡类

{

:

1;班级

;学生属性(本科、研究生)

:

();核查身份

();现实信息

();设置班级

();获得班级

();设置学生属性

();获得学生属性

();添加学生

};

教师类,派生自卡类

{

:

;教师所属学院

;教师职称

:

();设置教师所属学院

();获得教师所属学院

();设置教师职称

();获得教师职称

();查询信息

();显示信息

};

临时人员类,派生自卡类

{

:

();核查信息

();显示信息

};

1;初始化卡号为1

()卡类构造函数

{

1;拥卡者卡号为初始卡号加1,当创建对象时,会自动加1

"0";

0;余额

'0';

"0";拥卡者

"0";初次办卡的时间0

}

();卡类析构函数

()卡类对象函数,设置拥卡者姓名,为写的名字

{

;

}

()获得拥卡者姓名

{

;

}

()设置办卡时间

{

;

}

()获得办卡时间

{

;

}

(m)卡类对象函数,给卡充值,m充值金额

{

;

<<"你的充值数额:

"<

"<<<<;

}

(e)卡类对象函数,消费金额,e消费金额

{

(>)

{

;

<<"您已消费"<

"<<<<;

}

余额少于消费金额,余额不足

<<"你的余额不足,请充值"<<;

}

()获得饭卡余额

{

;

}

()获得卡号。

1加上去

{

1;

}

(1)设置拥卡者性别

{

1;

}

()获得拥卡者性别

{

;

}

()设置拥卡者身份证号,为输入账号

{

;

}

()获得拥卡者身份证号

{

;

}

(2)设置拥卡者班级

{

12;

}

()获得拥卡者班级

{

1;

}

(1)设置拥卡者属性(本科、研究生)

{

1;

}

()获得拥卡者属性(本科、研究生)

{

;

}

(1)类中,设置教师所属学院

{

1;

}

()类中,获得教师所属学院

{

;

}

(1)类中,设置教师职称

{

1;

}

()类中,获得教师职称

{

;

}

()

{

;选项变量

;语句中的选择数据

123;消费充值,匹配姓名卡号时用

;定义性别时用

s[100];类对象10个

t[100];类对象10个

c[100];类对象10个

0001;

1;

456;撤销卡,匹配姓名卡号的时候用

n0122;

=0;

=0;

=0;

(0)

{

<<"**************************\n";

<<"宁波大学饭卡管理系统\n";

<<"**************************\n";

<<"************************************\n";

<<"**1帮助信息**\n";

<<"**2新建饭卡**\n";

<<"**3撤销饭卡**\n";

<<"**4饭卡充值**\n";

<<"**5饭卡消费**\n";

<<"**6饭卡查询和排序**\n";

<<"**0退出系统**\n";

<<"*************************************\n";

<<"请选择操作选择(0—6):

"<<;

>>;

()

{

1:

<<"\n\n宁大饭卡分为三类,教师卡、学生卡、临时卡。

\n"

<<"您可以根据您的需要按照服务代码建立饭卡,用于就餐、借阅、医疗等方面消费。

\n\n\n";

;

2:

<<"\n";

<<"***请选择您所需的操作***\n";

<<"学生—1;老师—2;临时人员—3.(选择后按回车键确认)\n";

>>m;

(0)

{

(m)

{

1:

学生建卡

(100)最多100个

{

<<"学生帐户已满,不能添加!

!

"<<;

}

<<"输入学生姓名:

";

>>;

s[]();调用卡基类的设置姓名

<<"输入初次办卡时间(如:

2010-1-1):

";

>>;

s[]();调用卡基类的设置初次建卡时间

<<"输入性别:

(女—f;男—m)";

>>;

(()'f'()'m')如果不输入f和m

{

<<"指令错误!

请重新输入!

"<<;

<<"请输入您的性别(女—f;男—m):

";

>>;

}

s[]();调用卡基类的设置性别

<<"输入身份证号码:

";

>>;

s[]();

<<"所在班级号:

";

>>;

s[]();调用派生类学生类的设置班级函数

<<"所属类别(本科生—b;研究生—y):

";

>>;

(()'y'()'b')

{

<<"指令错误!

请重新输入!

"<<;

<<"所属类别(本科生—b;研究生—y):

";

>>;

}

s[]();调用派生类学生类的设置类型函数

<<"添加学生帐户成功!

!

"<<;

;继续下一个

;

2:

老师建卡

(100)

{

<<"教师帐户已满,不能添加!

!

"<<;

}

<<"输入老师姓名:

";

>>;

t[]();

<<"输入初次办卡时间(如:

2010-1-1):

";

>>;

t[]();

<<"输入性别(女—f;男—m):

";

>>;

(()'f'()'m')

{

<<"指令错误!

请重新输入!

"<<;

<<"请输入您的性别(女—f;男—m):

";

>>;

}

t[]();设置性别

<<"输入身份证号码:

";

>>;

t[]();

<<"所属学院:

";

>>;

t[]();

<<"职称(讲师—j;副教授—;教授—p):

";

>>;

(()'j'()''()'p')

{

<<"指令错误!

请重新输入!

"<<;

<<"所属类别(讲师—j;副教授—;教授—p):

";

>>;

}

t[]();设置职称

<<"添加教师帐户成功!

!

"<<;

;继续下一个

;

3:

临时建卡

(100)

{

<<"临时帐户已满,不能添加!

!

"<<;

}

<<"输入临时人员姓名:

";

>>;

c[]();

<<"输入初次办卡时间(如:

2010-6-1):

";

>>;

c[]();

<<"输入性别(女—f;男—m):

";

>>;

(()'f'()'m')

{

<<"指令错误!

请重新输入!

"<<;

<<"请输入您的性别(女—f;男—m):

";

>>;

}

c[]();设置性别

<<"输入身份证号码:

";

>>;

c[]();

<<"添加临时帐户成功!

!

";

;

;

}

;

}

;

3:

<<"请输入待撤销饭卡用户姓名\n";

>>1;

<<"请输入待撤销饭卡用户卡号\n";

>>2;

(0<100)

{

4[i]();

5[i]();

6[i]();

n0[i]();

n1[i]();

n2[i]();

(14)输入姓名和学生卡读取姓名一样

(20)输入卡号和学生卡读取卡号一样

{

s[i]("0");赋0值

s[i]("0");

s[i]('0');

s[i]("0");

s[i]("0");

s[i]('0');

<<"卡号:

"<

"<

"

<

"<

<<"性别:

"<

"<

"

<

"<

=1;

;

}

(15)输入姓名和教师卡读取姓名一样

(21)输入卡号和教师卡读取卡号一样

{

t[i]("0");赋0值

t[i]("0");

t[i]('0');

t[i]("0");

t[i]("0");

t[i]('0');

<<"卡号:

"<

"<

<<"办卡时间:

"<

"<

<<"性别:

"<

"<

<<所属学院:

"<

"<

=1;

;

}

(16)输入卡号和临时卡读取卡号一样

(22)输入卡号和临时卡读取卡号一样

{

c[i]("0");赋0值

c[i]("0");

c[i]('0');

c[i]("0");

<<"卡号:

"<

"<

"

<

"<

<<"性别:

"<

"<

=1;

;

}

}

(1)

{

<<"该账户已成功删除!

!

!

"<<;

}

(0)姓名不匹配

{

<<"\n\n查无此人!

!

!

\n\n"<<;

}

{

=0;

}

;

4:

饭卡充值

m1;

<<"请输入待充值的卡号\n";

>>1;

(0<100)

{

1[i]();学生卡号

2[i]();教师卡号

3[i]();临时卡卡号

(11)

(s[i]()"")

{

<<"请输入充值数额\n";

>>m1;

s[i](m1);调用卡基类充值函数

=1;

;

}

(12)

(t[i]()"")

{

<<"请输入充值数额\n";

>>m1;

t[i](m1);

=1;

;

}

(13)

(c[i]()"")

{

<<"请输入充值数额\n";

>>m1;

c[i](m1);

=1;

;

}

}

(0)查无此人

{

<<"\n\n查无此人!

!

!

\n\n";

}

{

=0;

}

;

;

5:

<<"请输入待消费的卡号\n";

>>1;

(0<100)

{(1[i]())学生消费

{

<<"请输入消费金额\n";

>>m1;

s[i](m1);

=1;

;

}

(1[i]())老师消费

{

<<"请输入消费金额\n";

>>m1;

t[i](m1);

=1;

;

}

(1[i]())临时卡消费

{

<<"请输入消费金额\n";

>>m1;

c[i](m1);

=1;

;

}

}

(0)姓名卡号不匹配

{

<<"\n\n查无此人!

!

!

\n\n";

}

{

=0;

}

;

6:

<<"请选择排序—1;查询—2\n";

>>m;

(m)

{

1:

<<"现有用户按卡号从大到小排列为:

"<<;

(99>=0)

(c[i]()"0")临时卡信息

{

<<"卡号:

"<

"<

"<

"<

<<"性别(女—f;男—m):

"<

"<

}

(99>=0)

(t[i]()"0")教师信息

{

<<"卡号:

"<

"<

"<

"<

<<"性别(女—f;男—m):

"<

"<

"<

"<

}

(99>=0)学生信息

(s[i]()"0")

{

<<"卡号:

"<

"<

"<

"<

<<"性别(女—f;男—m):

"<

"<

"<

"<

}

;

2:

<<"请输入饭卡拥有者名字—1;饭卡号码—2\n";

>>m;

(m)

{

1:

<<"请输入饭卡查询的名字\n";

>>1;

(0<100)

{

4[i]();学生

5[i]();教师

6[i]();临时卡

(14)

{<<"卡号:

"<

"<

"<

"<

<<"性别(女—f;男—m):

"<

"<

"<

"<

=1;

;

}

(15)

{

<<"卡号:

"<

"<

"<

"<

<<"性别(女—f;男—m):

"<

"<

"<

"<

=1;

;

}

(16)

{

<<"卡号:

"<

"<

"<

"<

<<"性别(女—f;男—m):

"<

"<

=1;

;

}

}

(0)

{

<<"\n\n查无此人!

!

!

\n\n"<<;

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 动态背景

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1