2017年计算机统考408考研真题答案_第1页
2017年计算机统考408考研真题答案_第2页
2017年计算机统考408考研真题答案_第3页
2017年计算机统考408考研真题答案_第4页
2017年计算机统考408考研真题答案_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计算机学科专业基础综合试题

参考答案(2017年)

一、单项选择题

1.B2.C3.A4.B5.B

6.D7.B8.A9.B10.B

11.D12.C13.C14.A15.D

16.A17.C18.B19.A20.D

21.D22.B23.D24.C25.B

26.D27.B28.D29.B30.D

31.B32.B33.A34.D35.B

36.A37.D38.C39.A40.C

二、综合应用题

41.【答案要点】

(1)算法的基本设计思想

表达式树的中序序列加上必要的括号即为等价的中缀表达

式。可以基于二叉树的中序遍历策略得到所需的表达

式。(3分)

去达式树中分支结点所对应的子表达式的计算次序,由该分

支结点所处的位置决定。为得到正确的中缀表达式,需要在

生成遍历序列的同时,在适当位置增加必要的括号显然,表

达式的最外层(对应根结点)及操作数(对应叶结点)不需要添

加括号。(2分)

(2)算法实现(10分)

voidBt»-ceToE(BTree*root)

BtreeToExp(root,1);〃根的高度为1

voidBtrccToE\p(BTree*root,intdeep)

if(root==\lLL)return;

elseif(root->left==NULL&&root->right-=NULL)

//若为叶结点

printf(”%s”,root->dala);//输出操作数

else

if(deep>1)printf("(");//若有子表达式则加1层括号

BtreeToExp(root->left,deep+1);

printf("%s",root->data);//输出操作符

BtreeToExp(root->right,deep+1);

if(deep>1)printf(")•');〃若布.F表达式则力口1层括号

【评分说明】

①若考生设计的算法满足题II的功能要求,则(】)、(2)根据所实

现算法的策略及输出结果给分,细则见下表。

分数备注

15采用中序遍历算:法H正确,括号嵌隹正确,层数适当

采用中序遍历算法且正确,括号嵌套正确,但括号嵌套层数

14过多例如,表达式处外层加1:括号,或操作数加括号如

(U)“

采用中序遗历算法,但括号嵌套层数不完全正确例如,左

11

右括号数=不匹配。

续我

分散备注

9果用中序遍历算法,但没行考虑括号

W7儿他

②若考生采用其他方法得到正确结果,可参照Q的评分标准给分。

③如果程序中使用了求结点深度等辅助函数,但没有给出相应的

实现过程,只要考生进行了必要的说明,可不扣分。

④若在算法的基本设计思想描述中因文字表达没有清晰反映出算

法思路,但在算法实现中能够表达出算法思想旦正确的,可参照

①的标准给分。

⑤若n法的基本设计思想描述或算法实现中部分正确,可参照①

中各种情况的相应给分标准酌情给分。

⑥参考答案中只给出了使用c语言的版本,使用C++语育的答案

参照以上评分标准。

42.【答案要点】

(1)依次选出的边为:

(A,D),(D,E),(C,E),(B,C)(4分)

【评分说明】每正确选对一条边fL次序正确,给।分。若考生选择

的边正确,但次序不完全正确,酌情给分。

(2)图C的MST是唯一的。(2分)

(3)当带权连通图的任意一个环中所包含的边的权值均不相同时,

其MST是唯一的。(2分)

【评分说明】

①若考生答案中给出的是其他充分条件,例如“带权连通图的所有

边的权值均不相同”,同样给分。

②若考生给出的充分条件对图的顶点数和边数做了某些限制,例

如,限制了图中顶点的个数(顶点个数少于3个)、限制「图的

形状(图中没有环)等,则最高给1分。

&答案部分正确,酌情给分,

43.【答案要点】

(1)由于i和。是unsigned型,故"i<=n-1”是无符号数比较,n=0

时,〃一1的机器数为全1,值是为unsigned型可衣示的最

大数,条件"i<=n-l”永真,因此出现死循环(2分)

若i和〃改为H类型,则不会出现死循环.(1分)

因为"i<=nT"是带符号整数比较,〃=0时,几-1的值是7,当

i=0时条件"i<=n-l”不J或立,此n寸退出for循环。(1分)

(2)口(23)与(2(23)的返|可值相等。(1分)

fl(23)MillOOFFFFFFH,(1分)

也(23)的tIL器数是4B7FFFFFH。(1分)

(3)当”24时,/(24)=11111)1111111111!11111111B,而

float型数只有24位才•效位.舍人后数值增大,所以f2(24)比

“(24)大lo(1分)

【评分说明】只要说明『2(24)需舍人处理即可给分。

(4)显然/(31)已超出了int型数据的表示范围,用fl(31)实现时

得到的机器数为32个1,作为int型数解释时其值为-1,即

fl(31)的返回值为-1。(1分)

因为int型最大可表示数是0后面加31个1,故使H(n)的返

回值与f(〃)相等的最大几值是30。(1分)

【评分说明】对于第二问,只要给出n=30即可给分。

(5)1EEE754标准用“阶码全1、尾数全0”表示无穷大。f2返

回值为“间型,机器数7F800000H对应的值是+8。

(1分)

当n=126时,/(126)=2,;7-1=1.1…1x23,对应阶码为127+

126=253,尾数部分舍入后阶码加1,最终阶码为254,是IEEE

754单精度格式表示的最大阶码。故使[2结果不溢出的最大n

值为126。(I分)

当建=23时,/(23)为24位1,float型数有24位有效位,所以不

需舍人,结果精确,故使f2获得精确结果的最大n值为23o

(1分)

【评分说明】对于第二问,只要给出〃=23,即可给分对于第三问,

只要给出n=126,即可给分。

44.【答案要点】

(1)M为CISC。(1分)

M的指令长短不一,不符合RISC指令系统特点。(1分)

(2)fl的机器代码占96Bo(1分)

因为fl的第一条指令"pushebp”所在的虚拟地址为0040

1020H,最后一条指令“rel”所在的虚拟地址为0040I07FH,所

以,力的机器指令代码长度为0040107FH-00401020H+1=

60H=96个字节。(1分)

(3)CF=1O(1分)

cmp指令实现i与几-1的比较功能,进行的是减法运算在执

行门(0)过程「打,n=0,当i=0时,i=00000000H,并H.n-1=

FFFFFFFFHC因此,当执行第20条指令时,在补码加/减运算

器中执行"0减FFFFFFFFH”的操作,即00000000H+0000

0000H+l=00000001H,此时,进位输出C=0,减法运算时的

借位标志CF=C㊉1=1。(2分)

(4)门中不能用shl指令实现power*2。(1分)

因为shl指令用来将一个整数的所有有效数位作为一个整体

左移;而f2中的变Mpower是floal型,其机器数中不包含最高

有效数位,但包含「阶码部分,将其作为一个整体左移时并不

能实现“乘2”的功能.因而[2中不能用shl指令实现power.2。

(2分)

45.【答案要点】

(1)函数门的代码段中所有指令的虚拟地址的高20位相同,因此

fl的机器指令代码在同一页中,仅占用1页。(1分)

(2)pushebp指令的虚拟地址的最高10位(页目录号)为000000

0001,中间10位(页表索引)为000000000】,所以,取该指令

时访问了页目一的第1个表项,a分)在对应的页表中访问r

第1个表项。(1分)

(3)在执行scunf()的过程中,进程P因等待输入而从执行态变为

阻塞态。(1分)输入结束时,P被中断处理程序唤醒,变为就

结态。(1分)P被调度程序调度,变为运行态。(1分)CPL状

态会从用户态变为内核态。(1分)

46.【答案要点】

semaphoremutex_yl=1;//mutex_y1用于threadI与thread3对变.

y的互斥访问。(1分)

semaphoremulex_y2=1;//mutex_y2用于thread2与thread?对'£:心

y的互斥访问。(1分)

semaphoremutex_z=1;//mutex_z用于变Mz的反斥访问o(।分)

互斥代码如下:(5分)

threadithread2lhread3

11

cnumw;cnumw;cnuinw;

wail(mutex_y1);wait(mutex\2);w.a=1;

w=u<ld(xty);wail(mulex_z);w.b=1;

signal(mutex_yl);w=add(y,z);wait(mulex_z);

signal(mutex_z);z=add(z,w);

1signa](mulex_v2);signal(inulrxz);

wail(mutrx.51);

1wail(mutex_y2);

y二add(y,w);

signal(mutex.y1);

signal(nwtex_y2);

【评分说明】

①各线程与变盘之间的互斥、并发情况及相应评分见下表。

ihrcad1和lhreud2和thread)和

给分

lhread2lhread

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论