ImageVerifierCode 换一换
格式:DOCX , 页数:17 ,大小:17.90KB ,
资源ID:9135402      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/9135402.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(自动售货机系统源代码.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

自动售货机系统源代码.docx

1、自动售货机系统源代码#include #include #include #include goods.h bool GetCharge(int Sum,int Money); void Getsmalcharge(int Money,int *ChargeNum); int KouLing(); char ChooseJieMian(); char SaleCenter(); void loadGoodsFrom* gs); char ManageCenter(); void KunCun(); void Sale(); void ShangJia(); void TongJiFun();

2、Goods goods3; TongJi tj3; void init() for(int i = 0; i 3; +i) tji.jrxl = 0; tji.jrzje = 0; void main() /初始化 init(); int op = 0; /读取商品信息 loadGoodsFrom); char c = ChooseJieMian(); while(true) system(cls); if( c = 1) c = SaleCenter(); else if(c = 2) op = KouLing(); if(op = 1) /进入管理界面 c = ManageCenter()

3、; /system(pause); else if(op = 0) /进去销售界面 c = SaleCenter(); /- /* * return 1销售界面 2管理界面 */ char SaleCenter() char state=N; int Sum=0; char Pro = d; / printf(n*n); while(true) state=N; Sum=0; while(!(Pro = c | Pro = a | Pro = b | Pro = q) system(cls); printf(nt*); printf(nt*顾客您好,请选择商品*n); printf(nta商品

4、%s b商品%s c商品%s q管理n,goods0.name,goods1.name,goods2.name); printf(nt -%d- -%d- -%d- (单位:件),goods0.totalCount,goods1.totalCount,goods2.totalCount); printf(nt*ntt); Pro = getchar(); if(Pro = q) break; switch(Pro) case a: Sum=Sum+2; printf(nt商品A价格为%d,请投币,Sum); break; case A: Sum=Sum+2; printf(nt商品A价格为%d

5、,请投币,Sum); break; case b: Sum=Sum+3; printf(nt商品B价格为%d,请投币,Sum); break; case B: Sum=Sum+3; printf(nt商品B价格为%d,请投币,Sum); break; case c: Sum=Sum+6; printf(nt商品C价格为%d,请投币,Sum); break; case C: Sum=Sum+6; printf(nt商品C价格为%d,请投币,Sum); break; default: printf(nt输入物品有误!n); break; ; int Money; bool st=false; wh

6、ile(!st) / printf(n输入金额:); scanf(%d,&Money); getchar(); st=GetCharge(Sum,Money); ; Pro = d; system(PAUSE); return 2; bool GetCharge(int Sum,int Money) int ChargeNum4; for(int i=0;iMoney) printf(nt所投金额不足支付所选商品,请重新投币); return false; else if(Sum=Money) printf(nt所投金额等于商品价格,请在商品出口处拿取商品n); /销售成功的操作 if(Sum

7、 = goods0.price) goods0.totalCount -; Sale(); tj0.jrxl +; tj0.jrzje += Sum; else if(Sum = goods1.price) goods1.totalCount -; Sale(); tj1.jrxl +; tj1.jrzje += Sum; else if(Sum = goods2.price) goods1.totalCount -; Sale(); tj2.jrxl +; tj2.jrzje += Sum; return true; else int Result=Money-Sum; Getsmalcha

8、rge(Result,ChargeNum); printf(nt所投金额大于商品价格,为您找零%d元n,Result); printf(ntt-壹元面值 %d张-n,ChargeNum0); printf(ntt-贰元面值 %d张-n,ChargeNum1); printf(ntt-伍元面值 %d张-n,ChargeNum2); printf(ntt-拾元面值 %d张-n,ChargeNum3); printf(nt请在商品出口处拿取商品n); / printf(n余额为%d元,应找零n1 元%d张n2 元%d张n5 元%d张n10元%d张n,Result,ChargeNum0,ChargeN

9、um1,ChargeNum2,ChargeNum3); /end if /销售成功的操作 if(Sum = goods0.price) goods0.totalCount -; Sale(); tj0.jrxl +; tj0.jrzje += Sum; else if(Sum = goods1.price) goods1.totalCount -; Sale(); tj1.jrxl +; tj1.jrzje+= Sum; else if(Sum = goods2.price) goods2.totalCount -; Sale(); tj2.jrxl +; tj2.jrzje+= Sum; r

10、eturn true; /* 成功卖出操作的后台操作 */ void Sale() FILE* fp; if (fp = fopen(d:goods.out, w) = NULL) printf (未找到文件d:goods.out.系统将退出n ); exit(0); fprintf(fp,%s %d %dn,goods0.name,goods0.totalCount,goods0.price); fprintf(fp,%s %d %dn,goods1.name,goods1.totalCount,goods1.price); fprintf(fp,%s %d %dn,goods2.name,

11、goods2.totalCount,goods2.price); /关闭文件 fclose(fp); fp = NULL; /- void Getsmalcharge(int Money,int *ChargeNum) if(Money0) return; int Sum=Money; int charge4=1,2,5,10; ChargeNum3=Sum/charge3; Sum=Sum%charge3; ChargeNum2=Sum/charge2; Sum=Sum%charge2; ChargeNum1=Sum/charge1; Sum=Sum%charge1; ChargeNum0=

12、Sum/charge0; Sum=Sum%charge0; /* *return 1 口令正确 0 口令错误,并返回销售界面 */ int KouLing() char kl50; int count = 0,ret = 0; char rkl50 = admin; while(strcmp(rkl,kl) != 0) if(count = 0) printf(nt*); printf(nt*管理口令验证*n); printf(ntTip 忘记口令,输入“cancel”,进入销售界面n); printf(nt*ntt); else printf(nt*); printf(nt*管理口令验证*n

13、); printf(ntTip 忘记口令,输入“cancel”,进入销售界面n); printf(nt*); printf(ntttt输入错误次数:%d次ntt,count); count+; scanf(%s,kl); system(CLS); if(strcmp(kl,cancel) = 0) break; if(strcmp(kl,cancel) = 0) ret = 0; else ret = 1; return ret; /* * return 1 , 2 */ char ChooseJieMian() char c = 3; while(true) system(cls); pri

14、ntf(nt*); printf(nt*界面选择*n); printf(nt1 -销售界面- 2 -管理界面-n); printf(nt*ntt); c = getchar(); if(c = 1 | c = 2) break; system(cls); return c; char ManageCenter() while(true) int op = 7; while( !(op = 1| op = 2 | op = 3 | op = 4| op = 5 | op = 6) system(cls); printf(nt*); printf(nt*欢迎您,管理员*n); printf(nt1

15、 -库存查询- 2 -商品上架-n); printf(nt3 -销售查询- 4 -会计查询-n); printf(nt5 -结算功能- 6 -销售界面-n); printf(nt*ntt); scanf(%d,&op); bool flag = false; switch(op) case 1: KunCun(); break; case 2: ShangJia(); break; case 3: TongJiFun(); break; case 4:break; case 5:break; case 6: flag = true; break; default:break; if(flag)

16、 break; else system(PAUSE); return 1; /* *从文件里读取商品信息 return 商品列表 */ void loadGoodsFrom* gs) /获得FILE 指针 FILE* fp; if (fp = fopen(d:goods.out, r) = NULL) printf (未找到文件d:goods.out.系统将退出n ); exit(0); /Goods gs3; int i = 0; while(!feof(fp) fscanf(fp,%s %d %d,gsi.name,&gsi.totalCount,&gsi.price); i+; /关闭文

17、件 fclose(fp); fp = NULL; void KunCun() int i = 0; printf(nt商品名称 商品价格(元) 商品余量(件)n); for(i = 0; i 3; +i) printf(n t-%s-tt-%d-tt-%d-n,goodsi.name,goodsi.price,goodsi.totalCount); void ShangJia() printf(ntTip正数增加,负数减少商品 n); int gs1 = 0,gs2 = 0,gs3 = 0; printf(ntt-商品%s(余%d件): ,goods0.name,goods0.totalCou

18、nt); scanf(%d,&gs1); printf(ntt-商品%s(余%d件): ,goods1.name,goods1.totalCount); scanf(%d,&gs2); printf(ntt-商品%s(余%d件): ,goods2.name,goods2.totalCount); scanf(%d,&gs3); goods0.totalCount = gs1 + goods0.totalCount 0 ? 0:gs1 + goods0.totalCount; goods1.totalCount = gs2 + goods1.totalCount 0 ? 0:gs2 + good

19、s1.totalCount; goods2.totalCount = gs3 + goods2.totalCount 0 ? 0:gs3 + goods2.totalCount; /写文件 /获得FILE 指针 FILE* fp; if (fp = fopen(d:goods.out, w) = NULL) printf (未找到文件d:goods.out.系统将退出n ); exit(0); fprintf(fp,%s %d %dn,goods0.name,goods0.totalCount,goods0.price); fprintf(fp,%s %d %dn,goods1.name,go

20、ods1.totalCount,goods1.price); fprintf(fp,%s %d %dn,goods2.name,goods2.totalCount,goods2.price); /关闭文件 fclose(fp); fp = NULL; void TongJiFun() printf(nt今日商品销售情况一览n); printf(ntt-商品%s %d件 共%d元-n,goods0.name,tj0.jrxl,tj0.jrzje); printf(ntt-商品%s %d件 共%d元-n,goods1.name,tj1.jrxl,tj1.jrzje); printf(ntt-商品%s %d件 共%d元-n,goods2.name,tj2.jrxl,tj2.jrzje); printf(nt 共计%d件,%d元 n,tj0.jrxl + tj1.jrxl+tj2.jrxl,tj0.jrzje+tj1.jrzje+tj2.jrzje); /Goods.htypedef struct _Goods char name50; int totalCount; int price;Goods;typedef struct _TongJi int jrxl; int jrzje;TongJi;

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

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