c语言200例 019 模拟自动售货机

问题:设计一个自动售货机,运行程序,提示用户输入要选择的选项,当用户输入以后,提示所选择的内容

思路:多个分支的选择语句,可以用switch来解决

运行结果如下

参考代码如下 :

#include<stdio.h>
#include<stdlib.h>
#include<windows.h>
int main ()
{
	int button;
	system ("cls");
	printf ("***************************\n");
	printf ("*	可选择的按键:    *\n");
	printf ("*	1.巧克力       	  *\n");
	printf ("*	2.蛋糕		  *\n");
	printf ("*	3.可口可乐	  *\n");
	printf ("***************************\n");
	printf ("从1~3中选择按键:\n");
	scanf ("%d",&button);
	switch (button)
	{
		case 1:
			printf("你选择了巧克力");
			break;
		case 2:
			printf("你选择了蛋糕");
			break;
		case 3:
		 	printf("你选择了可口可乐");
		 	break;
	}
	printf("\n");
	return 0;
} 

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,下面我为你介绍一下如何用C语言模拟一个自动售货机。 首先,我们需要定义商品的种类和价格。我们可以使用结构体来表示一个商品。如: ``` struct Product { char name[20]; // 商品名称 int price; // 商品价格 int stock; // 商品库存 }; ``` 然后,我们需要定义一个商品数组来存储所有的商品信息。如: ``` struct Product products[3] = { {"可乐", 3, 10}, {"雪碧", 3, 10}, {"矿泉水", 2, 10} }; ``` 接着,我们需要编写一个函数来显示所有的商品信息。如: ``` void showProducts() { printf("编号\t名称\t价格\t库存\n"); for (int i = 0; i < 3; i++) { printf("%d\t%s\t%d\t%d\n", i+1, products[i].name, products[i].price, products[i].stock); } } ``` 然后,我们需要编写一个函数来处理用户购买商品的请求。如: ``` void buyProduct(int index, int amount) { if (index < 1 || index > 3) { printf("输入的商品编号不正确!\n"); } else if (amount <= 0) { printf("输入的购买数量不正确!\n"); } else if (products[index-1].stock < amount) { printf("该商品库存不足!\n"); } else if (amount * products[index-1].price > balance) { printf("余额不足!\n"); } else { products[index-1].stock -= amount; balance -= amount * products[index-1].price; printf("购买成功!\n"); } } ``` 最后,我们需要编写一个主函数来实现自动售货机的主要功能。如: ``` int main() { int choice; int amount; showProducts(); while (1) { printf("请选择要购买的商品编号(输入0退出):"); scanf("%d", &choice); if (choice == 0) break; printf("请输入购买数量:"); scanf("%d", &amount); buyProduct(choice, amount); } return 0; } ``` 以上就是一个简单的自动售货机C语言模拟代码,希望对你有所帮助。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值