毕业考试试卷A
请将填空题的答案填入表格中
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 |
一、选择题(每题1分*30=30分)
1. 下面的网络协议中,连接的的协议面向是: 。
A 传输控制协议 B 用户数据报协议 C 网际协议 D 网际控制报文协议
2. 在使用mkdir命令创建新的目录时,在其父目录不存在时先创建父目录的选项是 。
A –m B -d C -f D -p
3. 下列关于链接描述,错误的是 。
A 硬链接就是让链接文件的i节点号指向被链接文件的i节点
B 硬链接和符号连接都是产生一个新的i节点
C 链接分为硬链接和符号链接
B 硬链接和符号连接都是产生一个新的i节点
C 链接分为硬链接和符号链接
D 硬连接不能链接目录文件
4. 不同的代码块有不同的作用域(scope),编译器利用作用域决定一个变量名指代的内容。内层的作用域可以屏蔽外层的作用域。如果符号'a>b'表示 'a' 屏蔽 'b',则屏蔽的顺序为_____
A 内层代码块变量>外层代码块变量 > 局部变量 > 文件域变量 > 全局变量
A 内层代码块变量>外层代码块变量 > 局部变量 > 文件域变量 > 全局变量
B 全局变量 > 文件域变量 > 局部变量 > 内层代码块变量 > 外层代码块变量
C 文件域变量 > 全局变量 > 局部变量 > 外层代码块变量 > 内层代码块变量
D 内层代码块变量 > 外层代码块变量 > 文件域变量 > 全局变量 > 局部变量
5. 命令可以从文本文件的每一行中截取指定内容的数据。
A cp B dd C fmt D cut
A cp B dd C fmt D cut
6. 下列不是Linux系统进程类型的是 。
A 交互进程 B 批处理进程 C 守护进程 D 就绪进程
7. 在vi编辑器中的命令模式下,键入 可在光标当前所在行下添加一新行。
A <a>; B <o>; C <I>; D A
A <a>; B <o>; C <I>; D A
8. 建立一个新文件可以使用的命令为 。
A chmod B more C cp D touch
A chmod B more C cp D touch
9. 已知某用户stud1,其用户目录为/home/stud1。分页显示当前目录下的所有文件的文件或目录名、用户组、用户、文件大小、文件或目录权限、文件创建时 间等信息的命令是 。
A more ls –al B more –al ls C more < ls –al D ls –al | more
A more ls –al B more –al ls C more < ls –al D ls –al | more
10. 用命令ls -al显示出文件ff的描述如下所示,由此可知文件ff的类型为 。
-rwxr-xr-- 1 root root 599 Cec 10 17:12 ff
A 普通文件 B 硬链接 C 目录 D 符号链接
-rwxr-xr-- 1 root root 599 Cec 10 17:12 ff
A 普通文件 B 硬链接 C 目录 D 符号链接
11. 不是进程和程序的区别。
A 程序是一组有序的静态指令,进程是一次程序的执行过程
B 程序只能在前台运行,而进程可以在前台或后台运行
C 程序可以长期保存,进程是暂时的
D 程序没有状态,而进程是有状态的
A 程序是一组有序的静态指令,进程是一次程序的执行过程
B 程序只能在前台运行,而进程可以在前台或后台运行
C 程序可以长期保存,进程是暂时的
D 程序没有状态,而进程是有状态的
12. 以下叙述中不正确的是
A. 在不同的函数中可以使用相同名字的变量
B. 函数中的形式参数是局部变量
C. 在一个函数内定义的变量只在本函数范围内有效
D. 在一个函数内的复合语句中定义的变量在本函数范围内有效
13. 数组定义为“ int a [ 4 ][ 5 ];”,下列哪一个引用是错误的
A.*a
B.*(*(a+2)+3)
C.&a [ 2 ][ 3 ]
进程间通信 共享内存 D.++a
14. 设int x;则执行printf(″%x\n″,~x^x);的结果是
A.0
B.1
C.ff
D.ffffffff
15. 下列程序的运行结果是
# define A 5
# define B A+1
main( )
{ int a;
a=B;
printf(″%d\n″a--);
}
A.6
B.5
C.4
D.出错
16. 设int i,x[3][3]={1,2,3,4,5,6,7,8,9};则下面语句
for(i=0;i<3;i++)
printf(″%d″,x[i][2-i]);
的输出结果是
A.147
B.159
C.357
D.369
17. 设有以下程序段:int a=1, b=10, c=1, x; x=a&&b||++c;printf(″%d, %d\n″,x,c);执行后输出的结果是
A.0,0
B.0,1
C.1,0
D.1,1
18. 假定a和b为int型变量,则执行下述语句组后,b的值为
a=1;
b=10;
do
{
b-=a;
a++;
} while (b--<0);
A.9
B.-2
C.-1
D.8
19. 设int a = 3;则表达式a<1&& - - a>1的运算结果和a的值分别是
A.0和2
B.0和3
C.1和2
D.1和3
20. 包含纯虚函数的类是_____。
A 基类 B派生类 C抽象类 D虚基类。
他+
21. 对A *p用new A或(A *)malloc(sizeof (A))赋值,如下叙述正确的是_____。
A new分配内存后会调用构造函数初始化,但malloc函数不会。
B malloc分配内存后会调用构造函数初始化,但new函数不会。
C new和malloc分配内存后都会调用构造函数初始化。
D new和malloc分配内存后都不会调用构造函数初始化。
22. 表达式“sizeof(int [1][2])/sizeof(int)”的值为_____。
A 1 B 2 C 3 D 4
23. 类A定义了构造函数A( )、A(int)、A(int,int)、A(int,int,int),则new A[2][3]会调用_____。
A.A( )。 (B) A(int)。 (C) A(int, int)。(D) A(int, int, int)。
24. 指向类A的一个非静态整型只读成员的非只读指针p定义为_____。
A const int A::*const p;
B int A::* const p;
C int A::* p;
D const int A::* p;
25. 一个类的友元不是该类的成员,与该类的关系密切,所以它( )。 (2分)
A.有this指针,有默认操作的对象
B.没有this指针,可以有默认操作的对象
C.有this指针,不能执行默认操作
D.没有this指针,也就没有默认操作的对象
A.有this指针,有默认操作的对象
B.没有this指针,可以有默认操作的对象
C.有this指针,不能执行默认操作
D.没有this指针,也就没有默认操作的对象
26. 假定AA为一个类,a为该类私有的数据成员,GetValue()为该类公有函数成员,它返回a的值,x为该类的一个对象,则访问x对象中数据成员a的格式为( )。
A. x.a
B. x.a()
C. x->GetValue()
D. x.GetValue()
A. x.a
B. x.a()
C. x->GetValue()
D. x.GetValue()
27. 有如下类声明:class Foo {int bar; };则Foo类的成员bar是 ( )
A.公有数据成员
B.公有成员函数
C.私有数据成员
D.私有成员函数
A.公有数据成员
B.公有成员函数
C.私有数据成员
D.私有成员函数
28. 关于封装,下列说法中不正确的是( )。
A.通过封装,对象的全部属性和操作结合在一起,形成一个整体
B.通过封装,一个对象的实现细节被尽可能地隐藏起来(不可见)
C.通过封装,每个对象都成为相对独立的实体
D.通过封装,对象的属性都是不可见的
A.通过封装,对象的全部属性和操作结合在一起,形成一个整体
B.通过封装,一个对象的实现细节被尽可能地隐藏起来(不可见)
C.通过封装,每个对象都成为相对独立的实体
D.通过封装,对象的属性都是不可见的
29. 若每一条指令都可以分解为取指、分析和执行三步。已知取指时间t取指=4△t,分析时间t分析=3△t,执行时间t执行=5△t。如果按串行方式执行完100条指令需要 (4) △t。如果按照流水线方式执行,执行完100条指令需要 (5) △t。
(4)A. 1190 B. 1195 C. 1200 D. 1205
(5)A. 504 B. 507 C. 508 D. 510
30.类的静态函数可以访问
A.类的私有成员
B. 类的保护成员
C. 类的静态成员
B. 类的保护成员
C. 类的静态成员
D. 类的公有成员
二、填空题 (每题2分*15=30分)
1. NFS 协议用于实现Unix(/linux)主机之间的文件系统共享。
2. 安装Linux系统对硬盘分区时,必须有两种分区类型: 根分区 和 交换分区 。
3. linux中当前父进程通过 wait() 函数来回收僵尸子进程, init 进程会自动清理所有它继承的僵尸进程。
4. 面向对象的程序设计有四大特征,它们是 封装 、 继承 、 多态 、 抽象 。
5. 请写出将my.c编译生成libmy.so的gcc命令:______________________________.检查库的依赖关系的命令是_________。
6. 进程退出的三种方式: Dalvik VM的本地方法 , 任务管理器方法 , 根据Activity的声明周期 。
7. 进程调用wait(int *status)等待子进程退出时,__________进行子进程的退出值status进行解释。主线程等待子线程退出的函数:__extern int pthread_join(pthread_t ,void** )_________.
8. 线程间通信的三种基本方式分别为: 全局变量 , 消息机制 , 共享内存 。
9. 线程取消的种类分为 关 , 推迟 , 异步 。
10. 结构体中的数据一般和总线宽度对齐。在一个32位机器上,数据采用4字节对齐,表达式 sizeof(a)的值为__4__
11. 编写的Shell程序运行前必须赋予该脚本文件 执行 权限。
12. 进程的运行有两种方式,即 和 。
13. 进程控制块的三类信息:进程标识信息,__进程控制信息__________,__处理器状态信息__________.
14. C++有各种一元、二元、三元的操作符,并且各有优先级。括号的优先级最高。表达式bool b = 1+2*3 && (4*0 || !5) 的值是__ture__
15. 数组定义 int ai[10] = {1,2}; 则 ai[1]= _2_,ai[2]=_0__,ai[9]=_0__, ai[10]=_随机值__。
三、简答题(每题5分*8=40分)
1. 在多线程间同步的时候 ,为什么通常是信号量和互斥锁结合使用。在什么情况下引入条件变量进行多线程间同步?
为了防止资源竞争,
2. 在进程间通信的时候,需要满足哪些条件的时候,就会产生死锁?如何来防止进程间的死锁?进程的饥饿是如何产生?
互斥,请求与保持,环路等待,不可剥夺
银行家算法,有序资源分配
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论