首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下关于某嵌入式系统多路数据采集的说明,回答问题1至问题3,将解答填入答题纸的对应栏内。 【说明】 某嵌入式系统中,存在16路数据采集通道,为了提高数据采集的可靠性,对16路采集通道均采用双余度设计,为了监控采集通道是否发生故障,对各路双余度通
阅读以下关于某嵌入式系统多路数据采集的说明,回答问题1至问题3,将解答填入答题纸的对应栏内。 【说明】 某嵌入式系统中,存在16路数据采集通道,为了提高数据采集的可靠性,对16路采集通道均采用双余度设计,为了监控采集通道是否发生故障,对各路双余度通
admin
2016-11-11
26
问题
阅读以下关于某嵌入式系统多路数据采集的说明,回答问题1至问题3,将解答填入答题纸的对应栏内。
【说明】
某嵌入式系统中,存在16路数据采集通道,为了提高数据采集的可靠性,对16路采集通道均采用双余度设计,为了监控采集通道是否发生故障,对各路双余度通道采集值进行比较,只有当该通道两个余度设备采集值均不小于45时,才表示该路通道正常。设计人员设计函数num of passer用于统计无故障通道数目,在该函数的设计中考虑了如下因素:
(1)采用如下数据结构存储通道号及采集值:
Struct value
{unsigned int No; //通道号,1到16
unsigned short Value1; //余度1采集值
unsigned short Value2; //余度2采集值
}
(2)当输入参数异常时,函数返回-1;
(3)若正确统计了无故障通道数目,则返回该数目;
(4)该函数需要两个输入参数,第一个参数是用于存储通道号及余度采集值的数组,第二个参数为通道总数目。
开发人员根据上述要求使用ANSI C对代码实现如下(代码中第一个数字代表行号):
1)unsigned int num_of_passer(struct value array[],unsigned int num)
{
2) unsigned int n=0; //循环变量
3) unsigned int counter; //无故障通道数目
4) if((array==NULL)||(num==0)||(num>16))
5) return-i; //当输入参数异常时,函数返回-1
6) for in=0; n<=num; n++)
{
7) if((array[n].Value1>45)&&((array[n].Value2>45)))
8) counter=counter+1;
}
9) return counter;
}
【问题2】
作为测试人员,请参照表3-1序号1的方式使用代码审查的方法找出该程序中所包含的至少3处错误。
选项
答案
[*]
解析
代码审查是不执行软件代码,而通过阅读软件代码发现代码可能存在的错误的过程。代码审查的测试内容包括检查代码和设计的一致性;检查代码执行标准的情况;检查代码逻辑表达的正确性;检查代码结构的合理性;检查代码的可读性。通过对说明的阅读,按照说明中描述的要求进行函数num of passer的代码审查。
阅读第1行代码,函数返回值定义为unsigned int;而在说明的第(2)条描述了当输入参数异常时,函数返回一1;这样发现说明和代码不一致,显然代码定义的unsigned int不能返回.1,此为第1处错误。修改函数返回值的定义为int类型即可。
阅读第3行代码,定义了无故障通道数目counter,在定义时未进行初始化,并且在第8行使用前依然未初始化。这就导致counter的初值为非确定值,可能出错,此为第2处错误。在第3行定义counter时初始化为0或者在使用前进行初始化为0均可。
阅读第4行代码,对模块输入参数进行合法性检查,num合法值为1至16;然后查找使用num之处,在第6行对num进行了使用,但第6行使用时却从0开始,而且是小于等于num,这就意味着如果第4行num值为最大值16,在第6行就需要循环判断17次(0到16),而本题的说明中描述很清楚,最多就16路通道,此为第3处错误。但此问题的更改有两种方案,方案1可以更改第4行num>16为num>=16,缩小此参数的合法范围;方案2可以更改第6行n<=num为n<num减少循环次数。
阅读第7行代码,对每个通道采集的双余度值进行有效性判断。按照说明,当余度设备采集值均不小于45时,才表示该路通道正常;但代码中使用当余度设备采集值均大于45时,表示该路通道正常,在对边界点45的处理上与说明不一致,此为第4处错误。将第7行代码中的两个“>”符号修改为“>=”即可与说明一致。
转载请注明原文地址:https://kaotiyun.com/show/xQWZ777K
本试题收录于:
嵌入式系统设计师下午应用技术考试题库软考中级分类
0
嵌入式系统设计师下午应用技术考试
软考中级
相关试题推荐
下列描述的因素中,不属于数据库物理设计应该考虑的是(64)________________。
下表中两个事务的调度带来的问题是(54)________________。
假设某企业信息管理系统中的5个实体:部门(部门号,部门名,主管,电话),员工(员工号,姓名,岗位号,电话),项目(项目号,名称,负责人),岗位(岗位号,基本工资),亲属(员工号,与员工关系,亲属姓名,联系方式)。该企业有若干个部门,每个部门有若干名员工;每
若系统正在将(20)________________文件修改的结果写回磁盘时系统发生崩溃,则对系统的影响相对较大。
某本科髙校新建教务管理系统,支撑各学院正常的教学教务管理工作。经过初步分析,系统中包含的实体有学院、教师、学生、课程等。考虑需要将本科学生的考试成绩及时通报给学生家长,新增家长实体;考虑到夜大、网络教育学生管理方式的不同,需要额外的管理数据,新增进修学
在数据库系统运行中,经常会找出频繁执行的SQL语句进行优化。常见的优化策略有:尽可能减少多表查询或建立(65);用带(66)的条件子句等价替换OR子句;只检索需要的属性列等。(65)
B-树是一种平衡的多路查找树。以下关于B-树的叙述中,正确的是()。
在Windows系统中,磁盘碎片整理程序可以分析本地卷,以及合并卷上的可用空间使其成为连续的空闲区域,从而使系统可以更高效地访问()。
随机试题
Whatistheaimoftheannouncement?
生产经营全面预算主要包括哪些内容?它们之间的相互关系怎样?
A.基础代谢率增高B.甲状腺摄133I率增高C.血压忽高忽低D.具备以上一种特征E.具备以上两种特征甲状腺功能亢进
患者,女,28岁。因右上肺结核,用异烟肼、利福平、链霉素三联抗痨治疗6个月,因自觉症状明显好转停药,1年后胸片提示左锁骨下浸润性病灶。此时治疗上应首选
致病性大肠杆菌食物中毒属于
在进行成本分析时,首先假定众多因素中的一个因素发生了变化,而其他因素则不变,然后逐个替换,分别计算结果,以确定各个因素的变化对成本的影响程度,这种成本分析的方法是()。
利用政府预算,通过调整税率和政府支出水平来影响总需求的一种政策是()。
岗位规范的具体内容不包括()
在进行初中数学七年级下册的“相交线”一课时,你将怎样开展教学,请完成以下任务:本课的“过程与方法”的教学目标是什么?
直接经验来源于实践,但是间接经验、书本知识则并不来源于实践。()
最新回复
(
0
)