【软件质量保证与测试】练习4

编程题

7-1 后一日问题
根据给定的年、月和日,输出第二日的年月日。2月的日期区分闰年和非闰年。要求以优化程序结构的方式写代码。

输入格式:
依次输入年、月、日。年月日均在合法范围,年份所在范围[1800,2050] , 月份所在范围[1,12],日所在范围[1,31]

输出格式:
输出第二日的年、月、日。

输入样例1:
在这里给出一组输入。例如:

2020 12 31
结尾无空行

输出样例1:
在这里给出相应的输出。例如:

2021-1-1
结尾无空行

输入样例2:
在这里给出一组输入。例如:

2020 7 31
结尾无空行

输出样例2:
在这里给出相应的输出。例如:

2020-8-1
结尾无空行

答:

#include<bits/stdc++.h>

using namespace std;

const int num[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};

bool check(int x) {	//判断是否是闰年
    if((x%4==0&&x%100!=0)||x%400==0)
    	return true;
    return false;
}

void nextDate(int &year,int &month,int &day) {
    day ++;
    if(day > num[month]){
        if(month == 2 && check(year) && day == 29)
        	return;
        month ++;
        day = 1;
        if(month > 12){
            year ++;
            month = 1;
        }
    }
    return;
}

int main() {
    int year,month,day;
    while(cin>>year>>month>>day)
    {
        nextDate(year,month,day);
        cout<<year<<"-"<<month<<"-"<<day<<endl;
    }
    return 0;
}

主观题

8-2 独立路径测试01

简述独立路径测试的基本步骤。

答:
独立路径测试的基本步骤是:
步骤1:根据源程序导出程序控制流图(程序图),得到路径测试所需的路径地图。
步骤2:通过计算程序图的环复杂度,确定独立路径集合的规模大小。
步骤3:以包含判定节点最多的路径作为主路径,并以此为基础构建其他独立路径。
步骤4:注意剔除不可行路径,必要时补充其他重要路径。
步骤5:根据得到的路径集合对应设计测试用例。

8-1 独立路径测试02

根据以下代码,使用独立路径法,按要求回答问题:

(1)画出程序图

(2)求出程序环形复杂度

(3)给出测试的独立路径

(4)根据独立路径设计测试用例

答:
简略版:

————————————————————
详细版:
(1)程序图

(2)环形复杂度为4
(3)独立路径

(4)测试用例

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值