有一个饮料自动售货机(处理单价为5角钱)的控制处理软件,它的软件规格说明如下: 若投入5角钱的硬币,按下“橙汁”或“啤酒”的按钮,则相应的饮料就送出来。若投入1元钱的硬币,同样也是按“橙汁”或“啤酒”的按钮,则自动售货机在送出相应饮料的同时退回5角钱的硬币。 用程序模拟该自动售货机(注:用屏幕输入、输出来模拟售货机的动作),使用判定表设计方法进行用例设计。c语言程序代码及完整的决策表设计和测试用例设计
时间: 2024-02-03 19:12:48 浏览: 73
以下是该自动售货机的C语言程序代码,包括决策表设计和测试用例设计。
```c
#include <stdio.h>
int main()
{
int coin, choice;
printf("Please insert a coin (0.5 yuan or 1 yuan): ");
scanf("%d", &coin);
if (coin == 0.5)
{
printf("Please choose your drink:\n1. Orange juice\n2. Beer\n");
scanf("%d", &choice);
switch (choice)
{
case 1:
printf("Here is your orange juice.\n");
break;
case 2:
printf("Here is your beer.\n");
break;
default:
printf("Invalid choice.\n");
break;
}
}
else if (coin == 1)
{
printf("Please choose your drink:\n1. Orange juice\n2. Beer\n");
scanf("%d", &choice);
switch (choice)
{
case 1:
printf("Here is your orange juice, and 0.5 yuan change.\n");
break;
case 2:
printf("Here is your beer, and 0.5 yuan change.\n");
break;
default:
printf("Invalid choice.\n");
break;
}
}
else
{
printf("Invalid coin.\n");
}
return 0;
}
```
接下来是该自动售货机的判定表设计。
|条件|操作1:投入0.5元硬币|操作2:投入1元硬币|
|:-:|:-:|:-:|
|橙汁按钮被按下|送出橙汁|送出橙汁,退回0.5元硬币|
|啤酒按钮被按下|送出啤酒|送出啤酒,退回0.5元硬币|
|其它按钮被按下|无操作|无操作|
最后是该自动售货机的测试用例设计。
|测试用例编号|测试条件|预期结果|
|:-:|:-:|:-:|
|1|投入0.5元硬币,按下橙汁按钮|屏幕输出“Here is your orange juice.”|
|2|投入0.5元硬币,按下啤酒按钮|屏幕输出“Here is your beer.”|
|3|投入0.5元硬币,按下其它按钮|屏幕无输出|
|4|投入1元硬币,按下橙汁按钮|屏幕输出“Here is your orange juice, and 0.5 yuan change.”|
|5|投入1元硬币,按下啤酒按钮|屏幕输出“Here is your beer, and 0.5 yuan change.”|
|6|投入1元硬币,按下其它按钮|屏幕无输出|
|7|投入0.2元硬币,按下橙汁按钮|屏幕输出“Invalid coin.”|
|8|投入1.5元硬币,按下啤酒按钮|屏幕输出“Invalid coin.”|
阅读全文