当前位置:首页 > 代码 > 正文

C餐饮管理系统代码(餐厅点餐系统代码c语言)

admin 发布:2022-12-19 03:50 126


本篇文章给大家谈谈C餐饮管理系统代码,以及餐厅点餐系统代码c语言对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

餐饮管理系统设计论文

餐饮行业在日常管理经营中仍然有很大一部分企业是在采取纯手工的管理模式,管理的整体科技含量较低。下面是我为大家整理的餐饮管理系统设计论文,供大家参考。

餐饮管理系统设计论文篇一

实体店餐饮管理系统设计与实现

餐饮管理系统设计论文摘要

摘要:随着我国市场经济的快速发展,人们的生活水平提高,餐饮业迅速蓬勃发展,传统的手工作业方式已经不能满足餐饮经营者的需求。通过餐饮管理系统对实体店进行管理,具有人工管理所无法比拟的优点,能够极大地提高餐饮管理的效率,增强企业的竞争力。

餐饮管理系统设计论文内容

关键词:餐饮;管理系统;数据库

一、引言

随着社会经济持续高速增长,社会财富迅速增加,广大人民群众收入水平不断提高,生活方式随之发生巨大变化。同时,随着市场经济体制的建立健全和迅速发展,社会物质产品极大丰富,餐饮业蓬勃发展,传统的手工作业方式已经不能满足餐饮经营者的需求了。人工记账、核算、查询等工作既费时、费力,也容易出错。通过在计算机中运行餐饮管理系统,既减少了人力资源,同时提高效率,能为餐饮业赚取更大的利润,同时为消费者提供了诸多方便。

近几年来,计算机网络、分布技术日趋成熟,随着科技的发展,餐饮业的竞争也越来越激烈。想在这样竞争激烈的环境下生存,就必须运用科学的管理思想与先进的管理 方法 ,使点餐与管理一体化。这样不仅可以提高工作效率,也避免了以前手工作业的麻烦,从而使管理者能够准确、有效地管理。因此,需要建立一个科学的餐饮管理系统。

二、系统分析

(一)可行性分析

1. 技术可行性

该系统是一个小型的餐饮管理系统。采用C/S模式,在前台计算机安装客户端,处理信息,将处理结果储存在数据服务器上。目前很多企业都采用SQL Server数据库,处理数据也相当方便,得到了广泛的应用,在技术上是可行的。

2. 经济可行性

对本系统的经济效益与开发成本进行分析。本系统采用C/S结构,只要拥有一台PC电脑,无需复杂设置即可实施,并且相对人工作业来说,节省人力、物力,具有较好的经济效益。

3. 操作可行性

操作可行性指系统的操作方式在用户组织中是否行得通。餐饮管理系统的功能较为简单,页面简单明了,没有那些繁琐的、不必要的操作。用户一看就能够知道应该怎么进行操作。管理员的界面也较为简单,都是些基本的操作,员工可以很快掌握,在操作方面也很容易实现。

(二)功能需求分析

餐饮管理系统是对餐饮流程的数字化的管理,既可以帮助餐厅更好地管理职员信息,又方便了顾客消费,并且不同的用户使用权限不同。具体功能有:用户的登录、基本信息、点/加菜、账单查询、结账、辅助功能、系统维护、系统设置等。

用户登录:用户选择自己的身份(超级管理员、经理、顾客)登录,若身份选择错误,则登不上。用户根据自己的账号、密码及正确的身份登录到系统主界面。

职员信息:超级管理员及经理有权限管理职员的基本信息。职员信息功能模块包括总体职员的查询、职员信息的添加、职员信息的修改以及职员信息的删除。

桌台信息:超级管理员及经理有权限管理桌台的基本信息。桌台信息功能模块包括桌台的查询、桌台信息的添加、桌台信息的修改及桌台信息的删除。

点/加菜:该功能实现顾客点菜及加菜。

账单查询:顾客可根据自己的消费情况,查询自己的账单。

结账:根据该桌台的消费情况及包间费,汇总出总价,并可计算实收与找零。

辅助功能:作为一个系统,应该具备一些辅助的功能,如日历及计算器。

系统维护:只有超级管理员才有这样的权限,可实现权限管理、系统备份、系统恢复。

系统设置:包括系统的口令设置及锁定系统。

三、系统设计与实现

系统模块主要包括五个主要模块:基本信息模块、桌台操作模块、系统设置模块、辅助工具模块、退出模块。其中基本信息模块又分两个子模块:桌台基本信息和职员基本信息。桌台操作是本系统主要的功能,它包括对桌台实行开台、点菜的操作,同时针对某一个桌台可以进行消费查询及结账。系统设置模块主要包括口令设置和锁定系统,该模块主要是对系统的安全性的一个保障,也是本系统不可缺少的一部分。作为一个系统应该需要有一些辅助工具,如日历、计算器、记事本,所以该系统有一个辅助工具模块。一个完整的系统肯定有退出模块,即退出系统。

餐饮管理系统中主要功能的详细设计如下。

(一)登录模块设计

登录模块以登录的用户名、密码和用户权限作为搜索条件,在数据库中进行查询。单击登录按钮时,登录模块首先判断是否输入了用户名和密码,如果没有输入用户名和密码将弹出提示框,提示用户输入登录系统的用户名和密码;如果输入了用户名和密码,系统将判断用户名、密码和权限是否匹配。若匹配,则登录成功。

(二)主界面模块设计

成功登录后,会显示主界面,主界面中应该包括菜单栏、桌台显示和显示系统状态栏。在窗体加载时,首先判断登录用户的权限,根据用户登录的权限,分配不同的功能。当窗体焦点触发时,系统从数据库中检索出所有桌台的状态信息,然后调用自定义的AddItem方法添加桌台。用户点击某个桌台时,系统会根据该桌台当前的状态,弹出不同的右键菜单。

(三)开台模块设计

开台窗体中应该有桌台信息和职员信息及用餐人数,窗体加载时,将数据库中的所有的桌台信息和职员信息检索出来显示在ComboBox控件上。应在用餐人数文本框中输入用餐人数,并且用餐人数应是大于0的整数数字,保存后即对桌台进行开台操作。

(四)点菜模块设计

点菜模块可利用TreeView控件来显示所有的菜系,利用DataGridView控件显示顾客消费的所有信息。设计该模块时通过数据库中检索出所有的菜系名称显示到TreeView中,用户选择菜系后,应设计一个存储这些被选择的菜系的数据表,并在该模块中能显示出来,以便使误点的菜可以删除。

(五)结账模块设计

结账模块中,可在数据库中检索出顾客消费的所有项目,应有菜系的消费和包间的消费,根据两者的消费,显示出总的消费。顾客输入金额时,系统可自动找零,并显示到界面上。

(六)桌台基本信息模块设计

桌台基本信息应该具有对于桌台添加、删除、修改、查询等操作。添加桌台信息时,在数据库中检索桌台信息的数据表,并将信息添加到信息表中。查询桌台信息时,系统连接数据库,在数据库中检索到数据库的数据表,并将桌台信息显示到界面上。

四、小结

小型实体店餐饮管理系统是在.net平台上进行,结合后端的SQL Server 2000数据库技术,完成了桌台的管理、职员的管理、顾客开台,点菜/加菜、账目查询及消费账目结算等功能。系统信息查询灵活又方便、数据存储安全可靠、成本低。另外系统自身有如下优点。

一是使用较方便,用户上手快。

二是系统自动结账,结账速度快速且准确。

三是系统为提高客户服务质量提供了有效的技术保证。

通过小型实体店餐饮管理系统能能够切实有效地指导工作人员规范业务操作流程,更高效、快捷地实现业务的管理,保障顾客信息的安全,提高管理水平和工作效率,进而提高业务竞争能力。

餐饮管理系统设计论文文献

[1]吕品,陈凤培.某中小型餐饮店管理信息系统的设计与开发[J].桂林航天工业高等专科学校学报,2011(04).

[2]崔海龙,李允.电子商务在餐饮业中的运用[J].管理观察,2009(18).

[3]余伟,赵亮.基于SOA的银行中间交易平台的设计与架构[J].科技广场,2011(07).

餐饮管理系统设计论文篇二

餐饮管理系统中数据完整性的设计

餐饮管理系统设计论文摘要

摘 要: 以餐饮管理系统数据库中部分表为例,详细介绍个人对数据完整性设计思路和设计方法,通过实例阐述数据完整性在实践中的应用,并给出基于SQLSERVERDE语言的描述。

餐饮管理系统设计论文内容

关键词: 数据库;数据完整性;约束;触发器

中图分类号:TP311 文献标识码:A 文章 编号:1671-7597(2011)1210173-01

数据库的创建是一件非常容易的事情,但是设计一个严谨、安全、可靠的数据库就不那么容易了,它需要你有扎实的理论知识做基础,还需要具备一定的分析问题解决问题的能力。数据库的设计经过需求分析、数据库概念机构设计、逻辑结构设计之后我们就应考虑数据完整性的设计了。数据完整性是最大限度的保证数据的正确性、可靠性、一致性。数据完整性包含三个方面的内容即实体完整性、参照完整性(引用完整性)和用户自定义完整性(域完整性)。

下面以餐饮管理系统部分可以实现点菜和结账的表为例阐述以上完整性的设计。餐饮管理涉及的表的关系模式为:桌台表zt(桌号zh,桌名zm,容纳人数rnrs,状态zt,类型lx),菜单表cd(菜品编号cpbh,菜品名称cpmc,规格gg,类别lb,单价dj,成本价cbj),订单表dd(订单编号ddbh,订单日期ddrq,桌号zh,消费金额xfje),点菜表dc(订单编号ddbh,菜品编号cpbh,数量sl)。以上四个表的定义如下:

Create table zt (zh char(4) primary key ,zm char(8) unique, rnrs int check (rnrs=0),zt bit,lx char(8) check (lx='大厅' or lx='包厢' lx='vip'))

Create table cd(cpbh char(5) primary key, cpmc char(12),gg char(10),lb char(8),dj numeric(6,1) check(dj=0),cbj numeric(6,1) check(cbj=0))

Create table dd (ddbh char(10) primary key,ddrq datetime,zh char(4) foreign key references zt(zh), xfje numeric(10,1))

Create table dc (ddbh char(10) foreign key references dd(ddbh),cpbh char(5) foreign key references cd(cpbh),sl int check(sl=0) default 1,primary key(ddbh,cpbh))

1 实体完整性(表完整性)

实体完整性又叫做表完整性,是对表中主键的约束。实体完整性的规则要求:在任何关系的任何一个元组中,主键的值不能为空值、也不能取重复的值。建立实体完整性的目的是用于保证数据库表中的每一个元组都是惟一的。是否可以改变主键值或删除一整行,取决于主键和其他表之间要求的完整性级别。实体完整性的定义比较简单。实现“实体完整性”的方法有primary key约束、unique约束、标识列、惟一索引。在此对桌台表zt中的桌号zh、菜单表cd表中的菜品编号cpbh以及订单表dd中的订单编号ddbh定义了primary key约束。在定义的时候一定要注意,一张完整的表定义只能有一个主键(PRIMARY KEY),但是可以没有UNIQUE约束。

2 参照完整性规则(引用完整性规则)

现实世界中的实体之间存在某种联系。在关系模型中实体及实体间的联系都是用关系来描述的,这样就自然存在着关系与关系间的引用。通过在同一个数据库的两个表中进行主键约束和外键约束来实现,参照的列和被参照的列的必须具有相同的属性。

参照完整性规则规则要求:“不引用不存在的实体”。即:不允许在一个关系中引用另一个关系中不存在的元组。其目的用于确保相关联的表间的数据保持一致。参照完整性是对外键的约束,要求外键的取值只能为两种情况:若取非空值,则它必须是主表中存在的值。要么取空值(null)。设置了参照完整性禁止在从表中插入包含主表中不存在的关键字的数据行;禁止删除在从表中的有对应记录的主表记录。

在如上四个表中对订单表dd的桌号zh、点菜表对此dc的订单编号ddbh及菜品编号cpbh分别设置了外键。另外外键的设计也可由触发器或编程语言来设定。以订单表dd为例触发器设置方法如下:

CREATE TRIGGER insert_xs ON dd

AFTER INSERT

AS

IF EXISTS

(SELECT * FROM INSERTED

WHERE zh IN (SELECT zh FROM zt))

PRINT '添加成功!’

ELSE

BEGIN

PRINT '桌号与存在的桌号不符!’

ROLLBACK TRANSACTION

END

同样可以对点菜表设置一个触发器要求dc的订单编号ddbh及菜品编号cpbh也具有参照性。参照完整性是用来维护相关数据表之间数据一致性的手段,通过实现引用完整性,可以避免因一个数据表的记录改变而使另一个数据表内的数据变成无效的值。

3 域完整性

域完整性也称为列完整性或用户定义的完整性,用于限制用户向列中输入的内容。域完整性规则要求由用户根据实际情况,定义表中属性的取值范围。其目的用于保证给定字段中数据的有效性,即保证数据的取值在有效的范围内。

设置域完整性的方法是限制列的数据类型、精度、范围、格式和长度等。可以通过指定数据类型、CHECK约束、DEFAULT约束、NOT NULL约束和创建规则、默认值等数据库对象来实施。

数据库中存储的数据多种多样,为每一列指定一个准确的数据类型是设计表的第一步,列的数据类型规定了列上允许的数据值。当添加或修改数据时,其类型必须要符合建表时所指定的数据类型。这种方式为数据库中的数据完整性提供了最基本的保障。

约束是SQL Server提供的自动保持数据完整性的一种方法,是独立于表结构的。规则是实现域完整性的方法之一,用来验证一个数据库中的数据是否处于一个指定的值域范围内,是否与特定的格式相匹配。当数据库中的数据值被更新或插入时,就要检查新值是否遵循规则。如果不符合规则就拒绝执行更新或插入操作。

在餐饮系统相关表中我们对相应的列设置了数据类型及长度度限制,并对菜单表cd的单价dj设置了check(dj=0)的约束,对点菜表dc的数量sl列(sl int check(sl=0) default 1)设置了check约束和默认值的约束。当然对于以上约束我们都可通过定义规则的方法实现。如:

用create rule dyl as@x=0来定义一个大于零的约束,然后用sp_bindrule dyl,'cd.dj‘语句和sp_bindrule dyl,'dc.sl'语句将其绑定到菜单表cd的单价dj列及点菜表dc的数量sl列上。

对于菜品编号cpbh我们规定菜类必须以类别的代表字母作为第一个字符,小分类的代表字母为第二个字符后面跟3位数字来表示。如CL001表示青菜类、LN001可表示奶类饮料。类别分类如表1:

表1 菜单类别表

为了实现上述编码我们用规则来实现如下:

Create rule cpbm as

@BM like 'C[LQRT][0-9][0-9][0-9]'

Or @BM like 'J[PBNM][0-9][0-9][0-9]'

Or @BM like 'Y[CNGT][0-9][0-9][0-9]'

Or @BM like 'z[fm][0-9][0-9][0-9]'

sp_bindrule cpbm, 'cd.cpbh'

4 触发器实现数据完整性

当用户对数据的完整性要求更为特殊,更为复杂,以上3种完整性就无法满足用户的要求。在这种情况下,用户需要自己定义所需的完整性。实现自定义完整性的重要方法是创建触发器。触发器是一种数据库对象。是一种表或视图执行insert、delete、update操作时,被系统自动执行的特殊的存储过程。创建触发器的目的是对表实现复杂的数据完整性约束,以防止不正确的操作。它与数据库中的某个表的数据修改操作相关联,修改操作可以是INSERT、UPDATE、和DELETE这3种操作中其中一种或几种。当用户对相关表执行触发器相关的修改操作时触发器自动执行。常用于数据的参照完整性限制及级联删除、级联更新等操作的设置。以级联更新为例,分析当菜单表中的菜品编号修改时,点菜表中的菜品编号同时更新这样的操作用触发器如何实现:

create trigger upd on cd after update

as

declare @jbh char(5),@xbh char(5)

select @jbh=deleted.cpbh, @xbh= inserted.cpbh

from deleted,inserted where deleted.cpbh=inserted.cpbh

print '准备级联更新点菜表中的菜品编号信息….'

update dc set cpbh=@xbh where cpbh=@jbh

print '已经级联更新了点菜表原菜品编号为'+ @jbh +'的信息'

5 应用接口编程

应用接口编程对数据库应用设计来说是负担最重的方法,但同时又是最基本、最灵活的方法。不论数据库管理系统提供了多么丰富的完整性的约束手段,利用编程接口保证数据完整性仍是所有数据库应用设计者必须掌握的关键技术之一。

6 总结

保证数据库的数据完整性,在数据库管理系统中是十分重要的。合理地使用SQL Server为数据完整性提供的各项 措施 ,对数据进行所需的约束限制,可以有效降低数据库在使用过程中可能出现的错误,提高数据库系统的可用性,减少处理数据错误所耗的费用。

餐饮管理系统设计论文文献

[1]陈伟,Sql Server2005应用系统开发教程[M].北京:清华大学出版社.

[2]Andrew J.Brust Stephen Forte著,精通SQLServer 2005程序设计,贾洪峰译,清华大学出版社,2007.

[3]萨师煊、王珊,数据库系统概论(第三版)[M].北京:高等 教育 出版社,2004.

有关餐饮管理系统设计论文推荐:

1. 浅谈餐饮服务与管理论文

2. 高档餐饮服务管理研究毕业论文

3. 酒店管理系统毕业论文

4. 有关餐饮服务与管理论文

5. 学生管理系统论文

6. 学籍管理系统毕业设计论文

C语言课程设计 酒店管理程序

没有时间写,只有一点,朋友给的!

酒店管理

#includestdio.h

void xx();

void search();

main()

{ int f;

printf(" ▲***********************▲\n");

printf(" △ 欢迎来到XXX饭店△\n");

printf(" ▲************************▲\n");

printf("1.进入. 2退出.\n");

scanf("%d",f);

if(f==1)

search();

else

printf("输入错误");

}

void search()

{

int d[15],g[3],a,b,c,x,y,h;

printf("请选择您需要的号码:\n1.预定房间\n2.退定房间\n");

scanf("%d",a);

if(a3 || a1)

{printf("您输入有误请您重试!\n");

}

else switch(a)

{ case 1:

{ printf("请您输入您的身份证号码\n");

scanf("%d",d[15]);

printf("您已登陆成功^-^\n");

printf("请您选择退定种类:\n");

printf("1.单人间/夜150元\n2.双人间/夜200元\n3.标准间/夜300元\n4.总统套房/夜600元\n");

scanf("%d",b);

switch(b)

{ case 1:printf("请输入预定天数\n");

scanf("%d",x);

printf("请预交款为%d元\n",x*150);

printf("1.确定 2.返回");

scanf("%d",h);

printf("您已预定成功★房间号码为202.\n");break;

case 2:printf("请输入预定天数\n");

scanf("%d",x);

printf("请预交款为%d元\n",x*200);

printf("1.确定 2.返回");

scanf("%d",h);

printf("您已预定成功★房间号码为305.\n");break;

case 3:printf("请输入预定天数\n");

scanf("%d",x);

printf("请预交款为%d元\n",x*300);

printf("1.确定 2.返回");

scanf("%d",h);

printf("您已预定成功★房间号码为208.\n");break;

case 4:printf("请输入预定天数\n");

scanf("%d",x);

printf("请预交款为%d元\n",x*600);

printf("1.确定 2.返回");

scanf("%d",h);

printf("您已预定成功★房间号码为306.\n");break;

default :printf("您的输入有错请您重试");

}

}break;

case 2:

{printf("请您输入您的身份证号码\n");

scanf("%d",d[15]);

printf("您已登陆成功^-^\n");

printf("请您选择退订服务种类:\n");

printf("1.单人间/夜150元\n2.双人间/夜200元\n3.标准间/夜300元\n4.总统套房/夜600元\n");

scanf("%d",c);

switch(c)

{case 1:printf("请您输入要退定的房间号码\n");

scanf("%d",g[3]);

printf("请您输入要退订的天数\n");

scanf("%d",y);

printf("我们将退您%d元\n",y*150);

printf("您退定成功: 谢谢您的光临 !\n");break;

case 2:printf("请您输入要退定的房间号码\n");

scanf("%d",g[3]);

printf("请您输入要退订的天数\n");

scanf("%d",y);

printf("我们将退您%d元\n",y*200);

printf("您退定成功.谢谢您的光临 !");break;

case 3:printf("请您输入要退定的房间号码\n");

scanf("%d",g[3]);

printf("请您输入要退订的天数\n");

scanf("%d",y);

printf("我们将退您%d元\n",y*300);

printf("您退定成功:谢谢您的光临 !\n");break;

case 4:printf("请您输入要退定的房间号码\n");

scanf("%d",g[3]);

printf("请您输入要退订的天数\n");

scanf("%d",y);

printf("我们将退您%d元\n",y*600);

printf("您退定成功:谢谢您的光临 !\n");break;

default:printf("您的输入有错请您重试");}

}break;}

{

int n;

printf("谢谢光顾\n是否要再预定? 1.是2.否");

scanf("%d",n);

if(n==1)

search();

else

printf("再见");

}

}

c++课程设计 小型饭店管理信息系统

#include "stdafx.h"

#include "FinanceBook.h"

#include "AccountDaily.h"

// CAccountDaily 对话框

IMPLEMENT_DYNAMIC(CAccountDaily, CDialog)

CAccountDaily::CAccountDaily(CWnd* pParent /*=NULL*/)

: CDialog(CAccountDaily::IDD, pParent)

{

EnableAutomation();

}

CAccountDaily::~CAccountDaily()

{

}

void CAccountDaily::OnFinalRelease()

{

// 释放了对自动化对象的最后一个引用后,将调用

// OnFinalRelease。基类将自动

// 删除该对象。在调用该基类之前,请添加您的

// 对象所需的附加清理代码。

CDialog::OnFinalRelease();

}

void CAccountDaily::DoDataExchange(CDataExchange* pDX)

{

CDialog::DoDataExchange(pDX);

}

BEGIN_MESSAGE_MAP(CAccountDaily, CDialog)

ON_BN_CLICKED(IDOK, CAccountDaily::OnBnClickedOk)

END_MESSAGE_MAP()

BEGIN_DISPATCH_MAP(CAccountDaily, CDialog)

END_DISPATCH_MAP()

// 注意: 我们添加 IID_IAccountDaily 支持

// 以支持来自 VBA 的类型安全绑定。此 IID 必须同附加到 .IDL 文件中的

// 调度接口的 GUID 匹配。

// {535CE23C-51E3-4FD9-96FB-DB8A8C13BE92}

static const IID IID_IAccountDaily =

{ 0x535CE23C, 0x51E3, 0x4FD9, { 0x96, 0xFB, 0xDB, 0x8A, 0x8C, 0x13, 0xBE, 0x92 } };

BEGIN_INTERFACE_MAP(CAccountDaily, CDialog)

INTERFACE_PART(CAccountDaily, IID_IAccountDaily, Dispatch)

END_INTERFACE_MAP()

// CAccountDaily 消息处理程序

BOOL CAccountDaily::OnInitDialog()

{

CDialog::OnInitDialog();

// TODO: 在此添加额外的初始化

CButton *pRadioButton = (CButton*)GetDlgItem(IDC_PAYOUT);

pRadioButton-SetCheck(true);

CButton *pCheckBox = (CButton*)GetDlgItem(IDC_FORMAT_DAILY);

pCheckBox-SetCheck(true);

return TRUE; // return TRUE unless you set the focus to a control

// 异常: OCX 属性页应返回 FALSE

}

void CAccountDaily::CheckEnter()

{

//该函数的作用是检查输入格式,判断RadioButton和CheckBox的状态

CButton *pRadioButton = (CButton*)GetDlgItem(IDC_PAYOUT);

CButton *pCheckBox = (CButton*)GetDlgItem(IDC_FORMAT_DAILY);

int IsRadioButtonChecked = pRadioButton-GetCheck(),

IsCheckBox = pCheckBox-GetCheck();

GetDlgItemText(IDC_DATE_DAILY,dateTime);

GetDlgItemText(IDC_RESUME,resume);

GetDlgItemText(IDC_AMOUNT_DAILY,amount);

GetDlgItemText(IDC_REMARK_DAILY,remark);

if(!resume.GetLength())

{

MessageBox(L"费用摘要 不能为空! ",L"重要提示",MB_ICONWARNING);

GetDlgItem(IDC_RESUME)-SetFocus();

}

else if(!amount.GetLength())

{

MessageBox(L"发生金额 不能为空! ",L"重要提示",MB_ICONWARNING);

GetDlgItem(IDC_AMOUNT_DAILY)-SetFocus();

}

else

{

if(IsRadioButtonChecked)

type = L"支出";

else

type = L"收入";

int dot = 0, space = 0, ch = 0;

CString str;

for(int index = 0; index != amount.GetLength(); ++index)

{

if(amount.GetAt(index) == '.')

dot++;

if(amount.GetAt(index) == ' ')

space++;

if(amount.GetAt(index) '0' || amount.GetAt(index) '9')

{

str = amount.GetAt(index);

ch++;

}

}

if(ch 0)

{

/***BUG:当字串中有其他字符,形如“a.6”时,会认为格式正确。***/

if(str != '.' str != ' ' || (space 0 || dot 1) )

{

MessageBox(L"金额格式有误,请您检查输入! ",L"重要提示",MB_ICONWARNING);

amountIsRigth = false;

GetDlgItem(IDC_AMOUNT_DAILY)-SetFocus();

}

else

amountIsRigth = true;

}

if(IsCheckBox)

amount = L"¥" + amount;

}

}

void CAccountDaily::OnBnClickedOk()

{

// TODO: 在此添加控件通知处理程序代码

//OnOK();

CheckEnter();

if(resume.GetLength() amount.GetLength() amountIsRigth)

MessageBox(dateTime + L"\n\n" + resume + L"\n\n" + type + L"\n\n" + amount + L"\n\n" + remark);

}

我的C语言项目是餐饮管理系统,求个源代码

include "stdio.h" /*I/O函数*/

#include "stdlib.h" /*其它说明*/

#include "string.h" /*字符串函数*/

#include "conio.h" /*屏幕操作函数*/

#include "mem.h" /*内存操作函数*/

#include "ctype.h" /*字符操作函数*/

#include "alloc.h" /*动态地址分配函数*/

struct score

{

int mingci;

char xuehao[8];

char mingzi[20];

float score[6];

}data,info[1000];

int i,j,k=0;

char temp[20],ch;

FILE *fp,*fp1;

void shuru()

{

if((fp=fopen("s_score.txt","ab+"))==NULL)

{

printf("cannot open this file.\n");

getch();exit(0);

}

for(i=0;i=1000;i++)

{

printf("\nPlease shuru xuehao:");

gets(data.xuehao);

printf("Please shuru mingzi:");

gets(data.mingzi);

printf("Please shuru yuwen score:");

gets(temp);data.score[0]=atof(temp);

printf("Please shuru shuxue score:");

gets(temp);data.score[1]=atof(temp);

printf("Please input yingyu score:");

gets(temp);data.score[2]=atof(temp);

printf("Please shuru wuli score:");

gets(temp);data.score[3]=atof(temp);

printf("Please shur huaxue score:");

gets(temp);data.score[4]=atof(temp);

data.score[5]=data.score[0]+data.score[1]+data.score[2]+data.score[3]+data.score[4];

fwrite(data,sizeof(data),1,fp);

printf("another?y/n");

ch=getch();

if(ch=='n'||ch=='N')

break;

} fclose(fp);

}

void xianshi()

{

float s;int n;

if((fp=fopen("s_score.txt","rb+"))==NULL)

{

printf("Cannot reading this file.\n");

exit(0);

}

for(i=0;i=1000;i++)

{

if((fread(info[i],sizeof(info[i]),1,fp))!=1)

break;

}

printf("\nxuehao mingzi yuwen shuxue yingyu wuli huauxue zhongfen\n");

for(j=0,k=1;ji;j++,k++)

{

info[j].mingci=k;

printf("%6s %8s %3.1f %3.1f %3.1f %3.1f %3.1f %3.1f\n",info[j].xuehao,info[j].mingzi,info[j].score[0],info[j].score[1],info[j].score[2],info[j].score[3],info[j].score[4],

info[j].score[5]);

}

getch();

fclose(fp);

}

void xiugai()

{

if((fp=fopen("s_score.txt","rb+"))==NULL||(fp1=fopen("temp.txt","wb+"))==NULL)

{

printf("Cannot open this file.\n");

exit(0);

}

printf("\nPLease shuru xiugai xuehao:");

scanf("%d",i); getchar();

while((fread(data,sizeof(data),1,fp))==1)

{

j=atoi(data.xuehao);

if(j==i)

{

printf("xuehao:%s\nmingzi:%s\n",data.xuehao,data.mingzi);

printf("Please shuru mingzi:");

gets(data.mingzi);

printf("Please shuru yuwen score:");

gets(temp);data.score[0]=atof(temp);

printf("Please shuru shuxue score:");

gets(temp);data.score[1]=atof(temp);

printf("Please input yingyu score:");

gets(temp);data.score[2]=atof(temp);

printf("Please input wuli score:");

gets(temp);data.score[3]=atof(temp);

printf("Please input huaxue score:");

gets(temp);data.score[4]=atof(temp);

data.score[5]=data.score[0]+data.score[1]+data.score[2]+data.score[3]+data.score[4];

} fwrite(data,sizeof(data),1,fp1);

}

fseek(fp,0L,0);

fseek(fp1,0L,0);

while((fread(data,sizeof(data),1,fp1))==1)

{

fwrite(data,sizeof(data),1,fp);

}

fclose(fp);

fclose(fp1);

}

void chazhao()

{

if((fp=fopen("s_score.txt","rb"))==NULL)

{

printf("\nCannot open this file.\n");

exit(0);

}

printf("\nPLease shuru xuehao chakan:");

scanf("%d",i);

while(fread(data,sizeof(data),1,fp)==1)

{

j=atoi(data.xuehao);

if(i==j)

{

printf("xuehao:%s mingzi:%s\nyuwen:%f\n shuxue:%f\n yingyu:%f\n wuli:%f\n huaxue:%f\n ",data.xuehao,data.mingzi,data.score[0],data.score[1],data.score[2],data.score[3],data.score[4],data.score[5]);

}getch();

}

}

void shanchu()

{

if((fp=fopen("s_score.txt","rb+"))==NULL||(fp1=fopen("temp.txt","wb+"))==NULL)

{

printf("\nopen score.txt was failed!");

getch();

exit(0);

}

printf("\nPlease input ID which you want to del:");

scanf("%d",i);getchar();

while((fread(data,sizeof(data),1,fp))==1)

{

j=atoi(data.xuehao);

if(j==i)

{

printf("Anykey will delet it.\n");

getch();

continue;

}

fwrite(data,sizeof(data),1,fp1);

}

fclose(fp);

fclose(fp1);

remove("s_score.txt");

rename("temp.txt","s_score.txt");

printf("Data delet was succesful!\n");

printf("Anykey will return to main.");

getch();

}

main()

{

while(1)

{

clrscr(); /*清屏幕*/

gotoxy(1,1); /*移动光标*/

textcolor(YELLOW); /*设置文本显示颜色为黄色*/

textbackground(BLUE); /*设置背景颜色为蓝色*/

window(1,1,99,99); /* 制作显示菜单的窗口,大小根据菜单条数设计*/

clrscr();

printf("*************welcome to use student manage******************\n");

printf("*************************menu********************************\n");

printf("* ========================================================= * \n");

printf("* 1shuru 2xiugai * \n");

printf("* 3shanchu 4chazhao * \n");

printf("* 5xianshi 6exit * \n");

printf("* * \n");

printf("* --------------------------------------------------------- * \n");

printf(" Please input which you want(1-6):");

ch=getch();

switch(ch)

{

case '1':shuru();break;

case '2':xiugai(); break;

case '3':shanchu(); break;

case '4':chazhao(); break;

case '5':xianshi(); break;

case '6':exit(0);

default: continue;

}

}

马上就毕业了,vc饭店点餐管理系统的设计是毕业论文的题目,不太懂呢!

目录 可行性研究报告 1可行性研究报告引言 2可行性研究的前提 3对现有系统的分析 4所建议的系统 4.1对所建议系统的说明 4.2功能说明 4.4影响 4.4.1对软件的影响 4.4.2对用户单位机构的影响 4.4.3对开发的影响 4.4.4对经费开支的影响 5配置方案 6结论 项目开发计划 1.项目开发计划引言 2.项目概述 3.实施计划 4.人员组织及分工 5.交付期限 6.专题计划要点 软件需求说明书 1软件需求说明引言 2任务概述 3需求规定 3.2.1精度 3.2.2时间特性要求 a. 后台任务管理器因该以误差上下不超过10秒的60秒间隔,在用户界面的指定位置显示状态信息 b. 如果后台进程处理正常会显示任务已完成的百分数/比 c. 任务完成时会显示相关的信息 d. 后台任务出错会显示错误信息 3.2.3灵活性 3.2.4动态数值需求 3.2.5静态数值需求 a. 支持的终端数为1台; b. 处理1个文件及20条记录; 餐饮管理系统数据流图 餐饮管理系统用户手册 启动并登录 营业设置 酒菜设置 折扣设置 开台与点菜 结账 报表查询 员工资料的设置 员工工作情况统计

C餐饮管理系统代码的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于餐厅点餐系统代码c语言、C餐饮管理系统代码的信息别忘了在本站进行查找喔。

版权说明:如非注明,本站文章均为 AH站长 原创,转载请注明出处和附带本文链接;

本文地址:http://ahzz.com.cn/post/1942.html


取消回复欢迎 发表评论:

分享到

温馨提示

下载成功了么?或者链接失效了?

联系我们反馈

立即下载