问题 单项选择题

通过对某事项留下的实际痕迹来获取信息的方法是()

A.直接观察法 

B.实际痕迹测量法 

C.店铺观察法 

D.试点调查法

答案

参考答案:B

解析:

本题考查的知识点是实际痕迹测量法。

[要点透析] 实际痕迹测量法是通过对某事项留下的实际痕迹来获取信息。例如,企业在几种报纸杂志上刊登同一广告,在广告下面附有一张表格或回条,请读者阅后把表格或回条剪下分别寄回企业的有关部门,便于企业了解在哪种报纸或杂志上刊登广告最为有效,为今后选择广告媒体和测定广告效果提供可靠资料。

问答题

已知检查括号匹配及注释、字符串处理的C源程序如下:

#include<stdio.h>

int brace,brack,paren;

void in_quote(int c);

void in_comment(void);

void search(int c);

/*rudimentary syntax checKer for C program*/

int main()

int c;

extern int brace,brack,paren;

while((c=getchar())!=EOF)

if(c==’/’)

if((c=getchar())==’*’)

in_comment(); /*inside comment*/

else

search(C) ;

else if(c==’\"||c=="")

in_quote(c); /*inside quote*/

else

search(c);

if(brace<0) /*output errors*/

printf("Unbalanced braces\n");

brace=0;

else if(brack<0)

printf("Unbalanced brackets\n");

brack=0;

else if(paren<0)

printf("Unbalanced parentheses\n");

paren=0;

if(brace>0) /*output errors*/

printf("Unbalanced braces\n");

if(brack>0)

printf("Unbalanced brackets\n");

if(paren>0)

printf("Unbalanced parentheses\n");

return 0;

/*search:search for rudimentary syntax errors*/

void search(int c)

extern int brace,brack,paren;

if(c==’’)

++brace;

else if(c==’’)

--brace;

else if(c==’[’)

++brack;

else if(c==’]’)

--brack;

else if(c==’(’)

++paren;

else if(c==’)’)

--paren;

/*in_comment:inside of a valid comment*/

void in_comment(void)

int c,d;

c=getchar();

d=getchar(); /*curr character*/

while(c!=’*’||d!=’/’) /*search for end*/

c=d;

d=getchar();

/*in_quote:inside quote*/

void in_quote(int c)

int d;

while((d=getchar())! =c) /*search end quote*/

if(d==’\\’)

getchar(); /*ignore escape seq*/

设计一组测试用例,使该程序所有函数的语句覆盖率和分支覆盖率均能达到100%。如果认为该程序的语句覆盖率或分支覆盖率无法达到100%,需说明为什么。

选择题