超市存包系统C语言
课 程 设 计
课程名称C语言高级程序成员
2015——2016学年 第2学期
目录
所选题目与要求——————————————————1
问题分析—————————————————————1
3.算法设计—————————————————————1
程序源代码————————————————————3
5.运行效果—————————————————————6
6.研究总结—————————————————————7
所选题目与要求
超市门口的存物柜有n个小柜,一个柜门控制器。柜门控制器上有“存”和“取”两个按钮(可以用“0”表示“存”,“1”表示“取”)。顾客按“存”时,控制器检查是否有空柜子:如果有空柜子,就会自动打开其中一个柜子,顾客将东西放入柜子中,锁门时会输出一张用于取包的小密码纸条,上面有7位数字密码。密码的头两位对应柜子编号加上10,密码中剩下的5位是利用随机函数rand()任意产生。如果没有空柜子则提示“柜子已满!”。当顾客按“取”按钮时,要输入小密码纸条上指定的7位数字密码:若密码正确,则对应的柜子门就自动打开,控制器显示“请取走物品!”;否则控制器提示“欢迎下次光临!”,顾客取走物品后关门,则该柜子可继续为其他顾客提供服务。现编程实现柜门控制器的功能。
问题分析
实现对n个小柜子状态的管理问题。
存过物品的柜子会对应一个“有密码”状态,用字符串(7个数字字符)表示的密码。
最初或已取走物品后的柜子会对应初始状态—“无密码”
用户所有的存取操作会构成一个由0或1构成的请求序列ÿ