中兴公司招聘计算机专业应届生笔试试卷第十套
本试卷分三部分,公共部分、C++部分和 JAVA 部分,其中公共部分为必考部分,C++与 JAV
部分,两者选一完成。试卷满分 100 分。
公共部分(50 分)
1:分页式存贮管理中,页表是用来指出作业
的
存块号 (顺序可交换) (4 分)
与
的对应关系。逻辑页号,主
2:影响局域网络的三种主要技术是
____
和
质、拓扑结构,访问控制方式 (顺序可交换) (6 分)
、
。传输介
3:若给定有 n 个元素的向量,则建立一个有序单向链表的时间复杂性的量级是( C )(3
分)
1. O(1)
2. O(n)
3. O(n2)
4. O(nlog2n)
4:设单链表的结点结构为(data,next),已知指针 q 所指结点是指针 p 所指结点的直接前驱,
如在*q 与*p 之间插入结点*s,则应执行的操作为( B )(3 分)
1. s->next=p->next; p->next=s;
2. q->next=s; s->next=p;
3. p->next=s-next; s->next=p;
4. p->next=s; s-next=q;
5:在一个具有 n 个结点的单链表中查找值为 m 的某结点,若查找成功,则平均比较( D )
个结点。(3 分)
1. n
2. n/2
3. (n-1)/2
4. (n+1)/2
6:面向连接和非连接的服务的特点是什么。(8 分)
面向连接的服务,通信双方在进行通信之前,要事先在双方之间建立起一个完整的可以彼此
沟通的通道,在通信过程中,整个连接的情况一直可以被实时地监控和管理。(4 分)
而非连接的服务,不需要预先建立起一个联络两个通信节点的连接,需要通信的时候,发送
节点就可以往“网络”上送出信息,让信息自主地在网络上去传,一般在传输的过程中不再
加以监控。(4 分)
7:什么是分布式数据库?(5 分)
数据库分布在计算机网络的不同计算机上, 网络中的每个节点具有独立处理的能力(场地
自治),可以执行局部应用, 同时,每个节点也能通过网络通信子系统执行全局应用。
8:设工程—零件数据库中有四个基本表:(18 分)
供应商(供应商代码,姓名,所在城市,联系电话);
工程(工程代码,工程名,负责人,预算);
零件(零件代码,零件名,规格,产地,颜色);
供应零件(供应商代码,工程代码,零件代码,数量)
试用 SQL 语句完成下列操作:
1) 查找预算在 50000~100000 元之间的工程的信息,并将结果按预算降序排列。
2
) 找出使用上海产的零件的工程名称。
3) 将由供应商 S5 供给工程代码为 J4 的零件 P6 改为由 S3 供应,并将零件 P6 的产地改为
S3 供货商的所在城市。
4)从供应商关系中删除 S2 的记录,并从供应零件关系中删除相应的记录。
1.SELECT*
FROM 工程
WHERE 预算 BETWEEN 50000
50000
AND 预算<= 1000000)
AND 100000
(或者 WHERE 预算>=
ORDER
BY 预算 DESC;
2.SELECT 工程名
FROM 供应商,供应零件,工程
WHERE 供应商.供应商代码=供应零件.供应商代码 AND
供应零件.工程代码=工程.工程代码 AND
供应商.所在城市=’上海’;
3.UPDATE 供应零件
SET 供应商代码=’S3′
WHERE 供应商代码=’S5′ AND 工程代码=’J4′ AND 零件代码=’P6′;
UPDATE 零件
SET 产地 = B. 所在城市
FROM 零件 A, 供应商 B
WHERE A. 零件代码 = ‘P6′
AND B. 供应商代码 = ‘S3′;
4.DELETE
FROM
供应零件
WHERE
供应商代码=’S2′;
DELETE
FROM
供应商
WHERE
供应商代码=’S2′;
C++部分(50 分)
1.有如下程序(4 分)
main0
{ int x=23;
do
{ printf(“%d”,x–);}
while(!x);
}
该程序的执行结果是 B
A) 321
容
B)23
D) 陷入死循环
C) 不输出任何内
2. “零值”可以是 0, 0.0 , FALSE 或者“空指针”。例如 int 变量 n 与“零值”比较的
if 语句为:if ( n == 0 ),则 BOOL flag 与“零值”比较的 if 语句为:
____________________________;float x 与“零值”比较的 if 语句为:
____________________________。
if ( flag ) (2 分)
const float EPSINON = 0.00001;if ((x >= – EPSINON) && (x <= EPSINON)) (2 分)
3.以下程序运行后,输出结果是 C(4 分)
main()
{ char *s=”abcde”;
s+=2;
printf(“%ld\n”,s);
}
A) cde
出错
B) 字符 c 的 ASCII 码值
C) 字符 c 的地址
D)
4. 假定 DD 为一个类,则执行“DD a[10],*P”语句时,系统自动调用该类构造函数的次数
为(
)B(4 分)
A、11
B、10
C、1
D、0
5. 说明类中的 public、 protected 和 private 成员函数分别在 public、protected 和
private 继承方式下在派生类中的可访问性。(12 分)
重点是基类中的任何 Private 在派生类中都是不可访问的。
6. 写出此函数的功能(12 分)
struct StrNode {
char name[15];
// 字符串域
StrNode * next;
// 指针域
};
void QB(StrNode * & f ,int n) {
if (n==0) { f=NULL; return; }
f=new StrNode;
cin >>f->name;
StrNode * p=f;
while (–n) {
p=p->next=new StrNode;
cin >>p->name;
}
p->next=NULL;
}
建立一个具有 n 个结点的链表,每个结点的字符串值由键盘输入,链表的表头指针由引用变
量 f 带回。
7. 写出下面函数的功能(10 分)
template
void WE(Type a[],Type b[],int n) {
for (int i=0; ib.trim();
c = b;
}
public static void main(String[] args) {
int a = 0;
String b = “Hello
World”;
String c = “OK”;
func(a, b, c);
System.out.println(“” + a + “, ” + b + “, ” + c);
}
World, OK
1. 0, Hello
2. 1, HelloWorld, HelloWorld
3. 0,HelloWorld,OK
4. 1, Hello
World, Hello World
3. 下面哪个类可以被继承?
C(4 分)
A、java.lang.Double
B、java.lang.Math
C、java.lang.Thread
D、java.lang.Class
4、MAX_LENGTH 是 int 型 public 成员变量, 变量值保持为常量 100,用简短语句定义这个变
量()D(4 分)
A、public int MAX_LENGTH=100;
B、final int MAX_LENGTH=100;
C、final public int MAX_LENGTH=100;
D、public final int MAX_LENGTH=100.
5. 假设 x= 10, y= 20, z= 30; 计算下列表达式的值(12 分)
B) !(x < y + z) || (x + 10
<= 20)
A) x <10 || x > 10 ________________
_____________
C) z-y == x && Math.abs(y-z) != x
false
true
false
6. Java 编程,打印昨天的当前时刻。(14 分)
public class YesterdayCurrent{
public void main(String[] args){
Calendar cal = Calendar.getInstance();
cal.add(Calendar.DATE, -1);
System.out.println(cal.getTime());
}
}
7. 谈谈 HashMap 和 Hashtable 的区别?(8 分)
都属于 Map 接口的类,实现了将惟一键映射到特定的值上。(2 分)
HashMap 类没有分类或者排序。它允许一个 null 键和多个 null 值。 (3 分)
Hashtable 类似于 HashMap,但是不允许 null 键和 null 值。它也比 HashMap 慢,因为
它是同步的。(3 分)