西北农林科技大学计算机组成原理,2017年西北农林科技大学信息工程学院846计算机组成原理,C语言,数据结构(3门选2门)考研仿真模拟题...

一、选择题

1. 设有一个n 行n 列的对称矩阵A ,将其下三角部分按行存放在一个一维数组B 中,放于

中,那么第i 行的对角元素【答案】A

【解析】

中列标不大于行标,

存放在

中,

所以

存放的位置为

存放于B 中( )处。

2. 下列排序算法中,其中( )是稳定的。

A. 堆排序,起泡排序 B. 快速排序,堆排序 C. 直接选择排序,归并排序 D. 归并排序,起泡排序 【答案】D

3. n 个结点的完全有向图含有边的数目( )。

A.n*n

B.n (n+l) C.n/2

D.n*(n-l )

【答案】D

【解析】在有向图中,如果任意两个顶点之间都存在边,则称为有向完全图。顶点个数为n 的无向图,最多有

条边。如是有向图,需要在无向图的最多边的基础上乘以2,则

为n (n-l )。

4. 若一个用户进程通过read 系统调用读取一个磁盘文件中的数据,则下列关于此过程的叙述中,正确的是( )。

I. 若该文件的数据不在内存,则该进程进入睡眠等待状态;II. 请求read 系统调用会导致CPU 从用户态切换到核心态;III. read系统调用的参数应包含文件的名称

A. 仅 I 、II B. 仅 I 、III C. 仅 II 、III D.I 、II 和III

【答案】A

,原进程【解析】对于I ,当所读文件的数据不再内存时,产生中断(缺页中断、缺段中断),直到所需数据从外村调入内存后,将该进程唤醒,使其变为就绪进入睡眠等待状态(阻塞状态)

状态。对于II , read系统调 用CPU 将从用户态切换到核心态,从而获取操作系统提供的服务。对于III ,在操作系统中,要读一个文件首先要open 系统调用将该文件打开。Open 系统调用的参数需要包含文件的路径名与文件名,而read 系统调用只需使用open 返回的文件描述符,并不使用Read 系统调用要求用户提供三个输入参数:文件名作为参数。①文件描述 符;②buf 缓冲区首址;③传送的字节数n 。read 系统调用的功能是试图从fd 所指示的文件中读入n 个字节的数据,并将它们送至由指针buf 所指示的缓冲区中。

5. 下面关于串的叙述中,不正确的是( )。

A. 串是字符的有限序列 B. 空串是由空格构成的串 C. 模式匹配是串的一种重要运算

D. 串既可以采用顺序存储,也可以采用链式存储 【答案】B

【解析】

空格构成的串称空格串。空串用表示。零个字符的串称为空串,空格也是一个字符,因此B 项不正确。

6. 下述文件中适合于磁带存储的是( )。

A. 顺序文件 B. 索引文件 C. 哈希文件 D. 多关键字文件 【答案】A

【解析】磁带存储是一种顺序存储,顺序文件

是记录按其在文件中的逻辑顺序

依次进入存储介质而建立的,即顺序文件中物理记录的顺序和逻辑记录的顺序是一致的。因此顺序文件适合磁带存储。

7. 在对n 个元素的序列进行排序时,堆排序所需要的附加存储空间是( )。

【答案】B

【解析】堆排序需要一个空间用于交换,因此堆排序所需要的附加存储空间为

8. 有两个并发执行的进程P1和P2, 共享初值为1的变量x 。P1对x 加1, P2对x 减1。加1和减1操作的指令序列分别如下所示。

//取x 到寄存器R1中

两个操作完成后,2的值( )。 A. 可能为-1或3 B. 只能为1 C. 可能为0、1或2 D. 可能为-1、0、1或2 【答案】C

【解析】这是在数据库中常有的操作。为保证数据的正确,避免产生错误,系统必须保证数据的同步。而保证数据的同步一般采取加锁的方法,让进程P1和P2互斥访问共享变量X 。当然用信号量和P 、V 操作也是可以 保证互斥操作,达到数据同步的。本例中,由于没有采取保证数据同步的相应措施,则最后结果就会出现差错。 例如,当正常情况下,进程P1和P2先后对x 操作,可以看到x 值的变化为初始1→2→1的过程,若P2, P1先后操作,则x 值的变化为初始1→0→1,这是正确的。若考虑一种并发的情况,进程P1和P2先后执行了取数load 的操作,它们得到的x 值均为1,运算后,P1和P2的x 值分别为2和0, 此时要看哪个进程后执行存数store 的 操作了,哪个进程后操作,结果就是那个进程的x 值,所以可能的结果为0或2, 加上前面正确的x 值1, 则可能的结果就有3种了。

9. —个栈的入栈序列为的个数是( )

A.n-3 B.n-2 C.n-1

D. 无法确定

【答案】C

【解析】除了3本身以外,其他的值均可以取到,因此可能取值的个数为n-1。

10.下列选项中,会导致用户进程从态切换到内核的操作是( )

I. 整数除以零 II. Sin( )函数调用 III. read系统调用 A. 仅 I 、II B .仅 I 、III C. 仅II 、III D. I、II 和III 【答案】B

【解析】对于I ,系统发生异常,需要进入内核态由操作系统进行处理,而read 系统调用函数也是在内核态执行,sin ( )就是普通的用户函数,在用户态执行,故答案为C 。

其出栈序列是若,则则可能取值

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值