软件测试实验报告一
南昌航空大学实验报告
2012年11月30日
课程名称: 软件测试与质量保证 实验名称: 被测程序的设计
班级: 姓名: 同组人:
指导教师评定: 签名:
实验目的
通过对于被测程序的设计,为后续实验的实施做好准备。
实验内容
1、设计三角形问题的程序
2、设计Nextdate函数的程序
3、设计佣金问题的程序
概要设计
设计三角形问题的程序
实现的功能主要是通过C语言代码实现通过用户输入的三角形三条边的值来确定符合这三条边的三角形是那种三角形或者是非三角形。
设计Nextdate函数的程序
该程序的功能就是实现根据今天日期来得出明天的日期。
3、设计佣金问题的程序
该程序主要是解决佣金问题,也就是要生成月份销售报表,汇总出该销售人员当月枪机、枪托和枪管的销售总量、总销售额以及应得佣金。
详细设计
设计三角形问题的程序
该程序的核心代码为判断三角形的代码,位于TRIANGLE.C主函数中:
if(a
flag=1;
else
flag=0;
if(flag==1)
{
if(a==b && b==c)//在满足时三角形的条件下判断其为等边三角形
printf("The triangle is equailateral triangle!\n");
else if(a!=b && b!=c && a!=c)//不为等边三角形的条件
printf("The triangle is isoscele triangle!\n");
else
printf("The triangle is isosceles triangele!\n");
}
else
printf("The triangle is not a triangle!\n");
}
设计Nextdate函数的程序
该程序的主要代码就是在DATE.C文件下主函数中的switch分支判断:
switch(month){//通过switch来选择不同的月份下的情况
case 1:
case 3:
case 5:
case 7:
case 8:
case 10://上面的月份都是31天的,下面代码实现31天情况下的月份
if(day<31){
tomorrowDay=day+1;
tomorrowMonth=month;
tomorrowYear=year;
}
else
{
tomorrowDay=1;
tomorrowMonth=month+1;
tomorrowYear=year;
}
break;
case 4:
case 6:
case 9:
case 11://上面的月份都是30天的,下面代码实现30天情况下的月份
if(day<30)
{
tomorrowDay=day+1;
tomorrowMonth=month;
tomorrowYear=year;
}
else
{
tomorrowDay=1;
tomorrowMonth=month+1;
tomorrowYear=year;
}
break;
case 12://由于12月一过,年份要加一,故单独把12月拿出
if(day<31)
{
tomorrowDay=day+1;
tomorrowMonth=month;
tomorrowYear=year;
}
else
{
tomorrowDay=1;
tomorrowMonth=1;
if(year==2012){
printf("The 2012 is over!\n");
exit(0);
}
else
tomorrowYear=year+1;
}
break;
case 2://根据是否闰年来判断二月的天数,故把二月单独拿出来
if(day<28)
{
tomorrowDay=day+1;
tomorrowMonth=month+1;
tomorrowYear