首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和C程序,将应填入(n)处。 [说明] 某种传感器的输出值Ratio依赖于环境温度temp(-40℃≤temp≤50℃)。对一组环境温度值(ITEMS个),人们已经测量得到了相应的Ratio值(见表1)。该表粗略地描述了曲线Ratio(t
阅读以下说明和C程序,将应填入(n)处。 [说明] 某种传感器的输出值Ratio依赖于环境温度temp(-40℃≤temp≤50℃)。对一组环境温度值(ITEMS个),人们已经测量得到了相应的Ratio值(见表1)。该表粗略地描述了曲线Ratio(t
admin
2008-04-03
58
问题
阅读以下说明和C程序,将应填入(n)处。
[说明]
某种传感器的输出值Ratio依赖于环境温度temp(-40℃≤temp≤50℃)。对一组环境温度值(ITEMS个),人们已经测量得到了相应的Ratio值(见表1)。该表粗略地描述了曲线Ratio(temp)。
校正系数K是Ratio的倒数,因此也依赖于环境温度temp。在数据处理中,人们需要用更多的列表值细致地描述曲线K(temp),如表2所示。在表2中,各温度值所对应的K值是对表1进行线性插值再求倒数得到的,具体的计算方法如下:
1.根据temp值,在表1中用二分法查找;
2.若找到相应的温度值,则按相应的Ratio值求倒数得到K值:
3.若没找到相应的温度值,则可确定temp所在的温度区间[Tp1, Tp2],同时获得了相应的Ratio1和Ratio2,再按如下公式计算K值:
Step=(Ratlo1-Ratio2)/(Tp1-Tp2)
K=1.0/(Ratio1+Step*(temp-Tp1))
在程序中,当temp高于50℃或低于-40℃时,设定K=0。
[程序]
#include <stdio.h>
typedef struct {
int Temp; /*环境温度*/
double Ratio; /*传感器的输出值*/
}CURVE;
#define ITEMS 7
double GetK(int, CURVE*, int);
void main()
{
int Degree;
double k;
CURVE Curve[ITEMS]={ {-40,0.2},{-20,0.60},{-10,0.8},{0,1,0},
{10,1.17},{30,1.50}, {50,1.8} };
printf("环境温度 校正系数\n");
for( Degree= 40; Degree<=50; Degree++){
k=GetK(Degree, Curve, ITEMS);
printf(" %3d %4.2f\n",Degree,k);
}
}
double GetK(int Temp, CURVE *p, int n)
{/*用二分法在n个元素的有序表p中查找与Temp对应的传感器输出值*/
int low,high,m; double Step;
low=0; high=n-1;
if((Temp<p->Temp) ||( Temp>(p+high)->Temp))
return 0.0; /*超出温度范围时返回0.0*/
while (low<=high){
m=(1) ;
if(Temp==(p+m)->Temp)
return (2);
if (Temp<(p+m)->Temp)high=m-1;
else low=(3);
}
p+= high;
Step=((4))/((p+1)->Temp-p->Temp);
return 1.0/(p->Ratio +Step *((5)));
}
选项
答案
(1)(low+high)/2 (2)1.0/(p+m)->Ratio (3)m+1 (4)(p+1)->Ratio-p->Ratio (5)Temp-p->Temp
解析
本题考查了线性插值计算及二分查找。
函数GetK(int Temp,CURVE *p,int n)用二分法在n个元素的有序表p中查找与Temp对应的传感器输出值,表中的元素已经按照温度值有序排列。进行二分查找时,首先计算表的中间位置,即[(low+high)/2],若待查元素等于中间位置上的元素,则查找成功并结束查找过程;若待查元素大,则在后半区间([m+1,high])继续进行二分查找:否则,在前半区间(pow,m-1])进行二分查找。如下图所示。
以查找温度值-25为例,由于-25<0,因此设置下一个查找区间为[0,2],如下图所示。
由于-25<-20,所以取high等于m-1,进一步,由于-25>-40,所以取low等于 m+1,如下图所示,至此,由于查找区间为空(10w>high),则可确定查找失败。
因此,空(1)处应填入“(low+high)/2”,空(3)处应填入“m+1”。根据题干的描述,若找到相应的温度值,则按相应的Ratio值求倒数得到K值,因此空(2)处应填入“1.0/(p+m)->Ratio”。若未找到相应的温度值,则结束查找时low>high。
根据题干中描述的线性插值再求倒数计算方法和p+=high:可得到计算Step和K的算式:
Step=((p+1)->Ratio-p->Ratio)/(Tp1-Tp2)
K=1.0/(p->Ratio+Step*(Temp-p->Temp))
转载请注明原文地址:https://www.kaotiyun.com/show/IsjZ777K
本试题收录于:
程序员下午应用技术考试题库软考初级分类
0
程序员下午应用技术考试
软考初级
相关试题推荐
在重要的数据处理过程中,领导常会来询问工作进展状况。数据处理技术员在描述进展状况时,以下叙述中,最适宜的是______。
在Word的编辑状态下,文档窗口显示水平标尺,则当前的视图方式______。
银行的信息非常重要,对信息以及信息处理的安全性要求很高。安全性包括多项任务,但不(24)。
在Excel工作表中,已输入的数据如下所示:按回车键后,B6单元格显示的值为()。
下列选项中,不属于信息处理基本要求的是(22)。
在调查某地区各类用户所喜欢的电视栏目时,信息处理技术员小王制作了用户类(U)与电视栏目(V)关系图。下面的示意图描述了五类用户(从上到下U1~U5)与四个电视栏目(从上到下V1~V4)之间的关系:如果某类用户大多喜欢某个电视栏目,则在它们之间画一条连线。从
在PowcrPoint2010中,将一张幻灯片中的图片及文本框设置成一致的动画显示效果后,________________。
________________不会是信息系统的功能。
为了调查某学校3000名学生的身高,抽取了100名学生进行身高测量,以下叙述中正确的是(23)。
防火墙包过滤规则的默认策略为拒绝,下表给出防火墙的包过滤规则配置界面。若要求内部所有主机能使用IE浏览器访问外部IP地址为202.117.118.23的Web服务器,为图中(1)~(4)空缺处选择正确答案。(1)A.允许B.拒绝(2)A.192
随机试题
以台湾人Y先生的话作为副题的诗歌是()
下列特性穴中,治疗急性病证应首先选用
A.副作用B.毒性反应C.停药反应D.后遗反应E.变态反应服用苯巴比妥钠第二天上午呈现宿醉现象,这属于药物的
化脓性脑膜炎患儿脑脊液外观特点为
产妇,28岁。自然分娩一女婴,产后3小时出血约800ml。为处理产后出血,使用宫颈填塞纱布条的情形是
某多层民用建筑的第二层为舞厅,建筑面积1200m2。该场所设有室内消火栓系统、自动喷水灭火系统、火灾自动报警系统及防排烟系统,并按严重危险等级配置灭火器。若在该层设置3个灭火器设置点,每处设置干粉灭火器2具,则每具灭火器的灭火级别应为()。
当简单线性相关系数为0时,说明两个变量之间( )。
社会工作服务机构在制定社区工作计划时,可以运用SWOT、分析法,找出能发挥优势因素、克服弱点因素、利用机会因素、化解威胁因素的对策,形成一项或几项社区工作的策略。下列因素中,属于社会工作服务机构外部机会因素的有()
文物从来都不只是见证历史的“藏品”,更是滋养未来的“甘泉”。故宫“石渠宝笈特展”引发“故宫跑”,首都博物馆汉代海昏侯国文物特展带来“首博热”,就连《我在故宫修文物》这部纪录片也让不少90后“泪目”……当传统文化与现代相遇,文物“活”了起来。为了让文物“活”
D根据Unfortunately和theneedieststudents定位到D段。原文说,很不幸,最差的老师通常会被降级去教贫穷的少数族裔学生。本题句子与原文意思一致。
最新回复
(
0
)