欢迎访问第一题库!

逻辑覆盖法是设计白盒测试用例的主要方法之一,通过对程序逻辑结构的遍历实现程序的覆盖。针对以下由C语言编写的程序,按要求回答问题。int XOR(char * filename,unsigned lon

第一题库 分享 时间: 加入收藏

考试:中级软件水平考试

科目:(中级) 软件评测师(在线考试)

问题:

逻辑覆盖法是设计白盒测试用例的主要方法之一,通过对程序逻辑结构的遍历实现程序的覆盖。针对以下由C语言编写的程序,按要求回答问题。int XOR(char * filename,unsigned long key){ FILE * input = NULL , *output =NULL; //i char * outfilename = NULL; int len = strlen(filename); unsigned char buffer; if( (filename[len-2] == '.')&& (filename[len-1] == 'c') ) { //2,3 outfilename = new char[len+1]; //4 strcpy(outfilename, filename); outfilename[len-2] = '0'; } else{ //5 outfilename = new char[len+5]; strcpy(outfilename, filename); strncat(outfilename,".c",2); } input =fopen(filename,"rb"); if( input == NULL) { //6 cout << "Error opening file " << filename << endl; //7 delete [] outfilename; outfilename = NULL; return 1; } output =fopen(outfilename,"wb"); if( output == NULL ) { //8 cout << "Error creating output file " << outfilename << endl; //9 delete [] outfilename; outfilename = NULL; return 1; } while( ! feof(input) ) { //10 if(fread(&buffer,sizeof(unsigned char),1,input) != 1 ) { //11 if( ! feof(input) ) { //12 delete [] outfilename; //13 outfilename = NULL; fclose(input); fclose(output); return 1; } } else{ //14 buffer ^= key; fwrite(&buffer,sizeof(unsigned char),1,output); } } fclose(input); //15 fclose(output); delete [] outfilename; return 0; }请给出满足100%DC(判定覆盖)所需的逻辑条件。

答案:


相关标签:

(中级)软件评测师     程序     逻辑     覆盖     遍历     软件评测    

推荐文章

主机host1对host2进行域名查询的过程如下图所示,下列说法中正确的是( ) 对下图所示流程图采用白盒测试方法进行测试,若要满足路径覆盖,则至少需要( )个测试用例 阅读下列说明,回答下列问题。[说明]某商店为购买不同数量商品的顾客报出不同的价格,其报价规则如表1所示。如买11件需要支付10×30+1×27=327元,买35件需要支付10×30+10×27+10× 某计算机系统中的进程管理采用三态模型,那么下图所示的PCB(进程控制块)的组织方式采用(请作答此空),图中( ) 。 快速排序算法在排序过程中,在待排序数组中确定一个元素为基准元素,根据基准元素把待排序数组划分成两个部分,前面一部分元素值小于等于基准元素,而后面一部分元素值大于基准元素。然后再分别对前后两个部分进一步 某公司内部网络如图所示。公司要求在上班时间(8:00至17:30)才能允许vlan10访问公司内部服务器(IP地址为192.168.100.100 /24),vlan20禁止访问内部服务器,但是可以可 在Windows的cmd命令行中窗口中,输入(60)命令将会得到如下图所示的结果。 设数组A[1..m,1..n]的每个元素占用1个存储单元,对于数组元素A[i,j](1≤i≤m,1≤j≤n),在按行存储方式下,其相对于数组空间首地址的偏移量为( );在按列存储方式下,其相对于数组空 以太网工作在半双工的情况下,需要使用( )协议来避免产生信息干扰。在产生干扰的情况下,以太网采用截断二进制退避算法来确定重传时机,(请作答此空)表示的是发送方并不持续侦听信道,而是在冲突时等待一段时间 国家标准《计算机软件文档编制规范GB/T8567—2006》规定了在软件开发过程中文档编制的要求,这些文档从使用的角度可分为用户文档和开发文档两大型。以下 ( ) 属于用户文档。
221381
领取福利

微信扫码领取福利

微信扫码分享