问题 问答题

针对以下C语言程序,请按要求回答问题。
已知weekday.c源程序如下:
#inelude<sgidio.h>
#include<conio.h>
/*主函数*/
Int main ()

Char letter;
Printf("please input the first letter,"Y"to exit!\n");
While ((letter=getch ()) !="Y")//当输入字母为Y是结束

Switch (letter)

Case ’S’:
Printf ("%c\n", letter);
Printf("please input second letter\n"); //输入第二个字母
If((letter=getch())==’a’)
Printf ("Saturday\n");
Else if (letter==’u’)
Printf ("Sunday\n");
Else printf("data error\n");
Break;
Case ’F’:
Printf ("fridaykn");
Break;
Case’M’:
Printf ("mondayha");
Break;
Case’T’:
Printf("%c\n",letter);
Printf("please input second letter\a"); //输入第二个字母
If ((letter=getch ()) ==’u’)
Printf("Tuesday\n");
Else if(letter==’h’)
Printf ("Thursday\n");
Break;
Case’W’:
Printf ("Wednesday\n");


Return 0;

Main函数的语句覆盖率能否达到100%如果认为无法达到,则说明原因。

答案

参考答案:不能达到100%,一些独立的路径如此程序中的“输入”,往往不是完全孤立的,有时它是程序正常的控制流的一部分,这时,这些路径的测试可以是另一条路径测试的部分。

判断题
填空题