python从入门到放弃篇9.2(字典dict,列表list,for嵌套,if嵌套)实现贩卖机程序升级版v3.0

今天的第二篇文章,本来在研究一个猜想,但是因为有点难搞,所以先放在一旁,然后,看一下原来做的贩卖机等程序,然后刚刚想出了升级版。在这个版本里,我让贩卖机程序更加便捷了,设置了倍数,你可以买任意倍数的商品。然后,确保合计价格的正确性。

现在是2020/7/10/16:12。我发完这篇文章,准备睡一会觉,感觉有点困了。毕竟又研究了一下午,没有睡午觉。

老规矩,上代码:
在这里插入图片描述
运行结果:
在这里插入图片描述
最后,感谢大家前来观看鄙人的文章,不胜感激,文中或有诸多不妥之处,还望指出和海涵。若有朋友有新的思路或者是建议,可以与我两个一起私聊探讨。

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
#include<stdio.h> bool GetCharge(int Sum,int Money); void Getsmalcharge(int Money,int *ChargeNum); void main() { char state='N'; int Sum=0; char Pro; printf("\n********************************\n"); while(true) { state='N'; Sum=0; while(state=='N'||state=='n') { printf("\n输入购买物品(a,b,c):"); scanf("%c",&Pro;); getchar(); switch(Pro) { case 'a': Sum=Sum+1; break; case 'A': Sum=Sum+1; break; case 'b': Sum=Sum+5; break; case 'B': Sum=Sum+5; break; case 'c': Sum=Sum+10; break; case 'C': Sum=Sum+10; break; default: printf("\n输入物品有误!!!!\n"); break; }; printf("\n是否完成(Y/N):"); scanf("%c",&state;); getchar(); } int Money; printf("\n购买总价为:%d",Sum); bool st=false; while(!st) { printf("\n输入金额:"); scanf("%d",&Money;); getchar(); st=GetCharge(Sum,Money); }; printf("\n----------------购买结束------------\n"); printf("\n"); printf("\n"); printf("\n"); } } //---------------------------------------------------- bool GetCharge(int Sum,int Money) { int ChargeNum[4]; for(int i=0;i<4;i++) { ChargeNum[i]=0; } if(Sum>Money) { printf("\n金额不够,请重新输入....."); return false; } else if(Sum==Money) { printf("\n余额为0"); return true; } else { int Result=Money-Sum; Getsmalcharge(Result,ChargeNum); printf("\n余额为%d元,应找零\n1 元%d张\n2 元%d张\n5 元%d张\n10元%d张\n",Result,ChargeNum[0],ChargeNum[1],ChargeNum[2],ChargeNum[3]); }//end if return true; } //------------------------------------ void Getsmalcharge(int Money,int *ChargeNum) { if(Money<0) return; int Sum=Money; int charge[4]={1,2,5,10}; ChargeNum[3]=Sum/charge[3]; Sum=Sum%charge[3]; ChargeNum[2]=Sum/charge[2]; Sum=Sum%charge[2]; ChargeNum[1]=Sum/charge[1]; Sum=Sum%charge[1]; ChargeNum[0]=Sum/charge[0]; Sum=Sum%charge[0]; } 或者这个试试#include<stdio.h> main() { int x,n,y; float sum=0.0; printf("请选择: 1.日用品 2.文具 3. 食品\n"); scanf("%d",&x); switch(x) { case 1: printf("请选择:1.牙刷(3.5元/支) 2.牙膏(6.2元支)\n"); printf(" 3.肥皂(2元/块) 4.毛巾(8.6元/条)\n"); scanf("%d",&y); printf("数量?"); scanf("%d",&n); switch(y)/*匹配顾客选择的具体商品*/ { case 1: sum=3.5*n ; break; case 2: sum=6.2*n ; break; case 3: sum=2*n ; break; case 4: sum=8.6*n ; break; } break; case 2: printf("请选择:1.笔( 3元/支) 2.笔记本(1.2元/个)\n"); printf(" 3.文件夹(12元/个) 4.文具盒(8.6元/个)\n"); scanf("%c",&y); printf("数量?"); scanf("%d",&n); switch(y) { case 1: sum=3*n; break; case 2: sum=1.2*n; break; case 3: sum=12*n; break; case 4: sum=8.6*n; break; } break; case 3: printf("请选择:1.白糖(3.6元/包) 2.盐(1元/包)\n"); printf(" 3.饼(2元/个) 4.方便面(3.6元/条)\n"); scanf("%c",&y); printf("数量?"); scanf("%d",&n); switch(y) { case 1: sum=3.6*n; break; case 2: sum=1*n; break; case 3: sum=2*n; break; case 4: sum=3.6*n; break; } break; } printf("总计:%.2f 元\n",sum); }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不羁_神话

感谢支持,欢迎交流。

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值