问答题 .阅读下列说明,回答问题1至问题3。
    【说明】
    以下代码由C语言书写,能根据指定的年、月计算当月所含天数。
    int GetMaxDay(int year, int month)
    {
    int maxday=0;
    if(month>=1&&month<=12)
    {
    if(month==2)
    {
    if(year%4==0)
    {
    if(year%100==0)
    {
    if(year%400==0)
    maxday=29;
    else
    maxday=28;
    }
    else
    maxday=29;
    }
    else
    maxday=28;
    }
    else
    {
    if(month==4||month==6||month==9||month==11)
    maxday=30;
    else
    maxday=31;
    }
    }
    return maxday;
    }
问答题 1.  【问题1】
    请画出以上代码的控制流图。
【正确答案】
【答案解析】
问答题 2.  【问题2】
    请计算上述控制流图的环路复杂度V(g)。
【正确答案】V(g)=7
【答案解析】
问答题 3.  【问题3】
    假设year的取值范围是1000<year<2001,请使用基本路径测试法为变量year、month设计测试用例(写出year取值、month取值、maxday预期结果),使之满足基本路径覆盖要求。
【正确答案】
用例编号 year取值 month取值 Maxday
预期结果
1 1001~2000之间任意整数 [1,12]之外的任意整数 0
2 1001~2000之间不能被4整除的任意整
数,如1001、1002、1003等
2 28
3 1001~2000之间能被4整除但不能被
100整除的任意整数,如1004、1008、
1012、1016等
2 29
4 1001~2000之间能被100整除但不能被
400整除的任意整数,如1100、1300、
1400、1500、1700、1800、1900
2 28
5 1001~2000之间能被400整除的任意整
数,如1200、1600、2000
2 29
6 1001~2000之间任意整数 1、3、5、7、8、10、12中
的任意一个
31
7 1001~2000之间任意整数 4、6、9、11中的任意一个 30
【答案解析】