设计小程序

设计小程序

自动售货机模拟 内容 开发一个售货机模拟小程序 (一)首先显示某售货机可售商品清单如下: 1号商品(农夫山泉),单价1元,库存量100瓶 2号商品(东北大板)单价8元,库存量20根 3号商品(雀巢薯片),单价5元,库存量30袋 4号商品(笔记本),单价2元,库存量5本 (二)然后 (1)按提示输入商品编号,购买数量 (2)根据(1)判断商品编号是不是存在,如果存在,判断购买数量是不是s库存,如果购买数量≤库存,提示应付款(单价数量),进入付款步骤(3)。 (3)付款,首先输入货币面值,包括10、20、50、100,共四种,如果输入的不是.上述四种,提示不合法,重新输入。然后,输入货币的张数。最后根据货币面值张数-应付款显示出应找零多少元,如果货币面值张数-应付款<0,同时提示付款不足,交易失败 (感兴趣的同学可以再此添加完善追加支付功能)。 步骤(4)如果货币面值张数-应付款>=0,提示付款成功,更新库存量为当前库存量-购买数量,然后进入步骤(4)。 (4)列出当前各项商品的最新编号-名称、单价、库存量。 (5)进入步骤(1)等待再次交易。

实现代码

#include "stdio.h"
#define pa 1
#define pb 8
#define pc 5
#define pd 2
int main()
{   int a=100,b=20,c=30,d=5,i,n,q;
   int e,x,y;
   for(;;)//设置死循环;
  {
       printf("一号商品(农夫山泉),单价%d元,库存量%d瓶\n",pa,a);
       printf("二号商品(东北大板),单价%d元,库存量%d根\n",pb,b);
       printf("三号商品(雀巢薯片),单价%d元,库存量%d袋\n",pc,c);
       printf("四号商品(笔记本),单价%d元,库存量%d本\n",pd,d);
       printf("请输入商品编号和购买数量\n");
       scanf("%d%d",&n,&q);
       if(n>&& n<5)
      {
           if(n==1)//分别对不同情况进行赋值;
          {
               pa;
               a;
               a-q;
          }
           if(n==2)
          {
               pb;
               b ;
               b-q;
          }
           if(n==3)
          {
               pc;
               c;
               c-q;
          }
           if(n==4)
          {
               pd;
               d;
               d-q;
          }
               if(q<=y)
              {
                   printf("总共花费%d元,请进行付款\n",x*q);
                   printf("请输入货币面值,总共包括10、20、50、100四种,以及货币数量\n");
                   A:    scanf("%d%d",&e,&i);//获得货币面值;
                   if(e==10 || e==20 || e==50 || e==100 )
                  {
                       if(e*i-x*q>=0)
                       printf("付款成功!需找零%d元\n",e*i-x*q);
                       else
                      {
                           printf("付款不足,交易失败\n");
                      }
                  }
                   else
                  {
                       printf("输入不合格,请重新输入!\n");

                       goto A;
                  }

              }
               else
              {
                   printf("库存不足,请重新输入!\n");
              }

          }
           else
          {
               printf("您输入的商品编号并不存在!请重新输入!\n");
          }
       
  }
}

2021年11月24日,对程序进行优化;
#include "stdio.h"
int main()
{
   int price[4]={1,8,5,2},commodity[4]={100,20,30,5};
   int num,q;
   int e ,i;
   while(1)
  {
       printf("一号商品(农夫山泉),单价%d元,库存量%d瓶\n",price[0],commodity[0]);
       printf("二号商品(东北大板),单价%d元,库存量%d根\n",price[1],commodity[1]);
       printf("三号商品(雀巢薯片),单价%d元,库存量%d袋\n",price[2],commodity[2]);
       printf("四号商品(笔记本),单价%d元,库存量%d本\n",price[3],commodity[3]);

       scanf("%d%d",&num,&q);
       num num -1;
       
       if(num>=&& num<4)
      {
           if(q<=commodity[num])
          {
               printf("总共花费%d元,请进行付款\n",price[num]*q);
               printf("请输入货币面值,总共包括10、20、50、100四种,以及货币数量\n");
               A:    scanf("%d%d",&e,&i);//获得货币面值;
               if(e==10 || e==20 || e==50 || e==100 )
              {
                   if(e*i-price[num]*q>=0)
                   printf("付款成功!需找零%d元\n",e*i-price[num]*q);
                   else
                  {
                       printf("付款不足,交易失败\n");
                  }
              }
               else 
              {
                   printf("输入不合格,请重新输入!\n");
                   goto A;
              }
               
               commodity[num] -= q;

          }
           else 
          {
               printf("库存不足,请重新输入!\n");
          }
      }
       else
      {
           printf("您输入的商品编号并不存在!请重新输入!\n");
      }

  }
}
 
posted @ 2021-10-27 15:36  eliotJones  阅读(267)  评论(0)    收藏  举报