范文一:中兴专业面试试题 (9)
本试卷分三部分,公共部分、C++部分和JA V A 部分,其中公共部分为必考部分,C++与JA V 部分,两者选一完成。试卷满分100分。
公共部分(50分)
1:分页式存贮管理中,页表是用来指出作业的 的对应关系。逻辑页号,主存块号 (顺序可交换) (4分)
2:影响局域网络的三种主要技术是和。传输介质、拓扑结构,访问控制方式 (顺序可交换) (6分)
3:若给定有n 个元素的向量,则建立一个有序单向链表的时间复杂性的量级是( C )(3分)
A. O(1)
B. O(n)
C. O(n2)
D. O(nlog2n)
4:设单链表的结点结构为(data,next),已知指针q 所指结点是指针p 所指结点的直接前驱,如在*q与*p之间插入结点*s,则应执行的操作为( B )(3分)
A. s->next=p->next; p->next=s;
B. q->next=s; s->next=p;
C. p->next=s-next; s->next=p;
D. p->next=s; s-next=q;
5:在一个具有n 个结点的单链表中查找值为m 的某结点,若查找成功,则平均比较( D )个结点。(3分)
A. n
B. n /2
C. (n-1)/2
D. (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 AND 100000 (或者 WHERE 预算>= 50000 AND 预算<=>=>
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 C) 不输出任何内容 D) 陷入死循环
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))="">=>
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; i b[n-i-1]=a[i]; } 模板函数,把数组a 的每个元素按逆序放入数组b 中。 JA V A 部分(共50分) 方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义。 方法是不能被当前类的子类重新定义的方法。 抽象(abstract)方法、最终(final)方法(4分) 2. 请判断下面的代码片段的执行结果:()C (4分) void func(int a, String b, String c) { a = a + 1; b.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); } A. 0, Hello World, OK B. 1, HelloWorld, HelloWorld C. 0, HelloWorld, OK D. 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分) A) x <10 ||="" x=""> 10 ________________ B) !(x < y="" +="" z)="" ||="" (x="" +="" 10=""><= 20)="">=> 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分) 本试卷分三部分,公共部分、C++部分和JA V A 部分,其中公共部分为必考部分,C++与JA V 部分,两者选一完成。试卷满分100分。 公共部分(50分) 1:从资源管理(分配)的角度出发,I/O设备可分为、和_ 三种类型。(6分) 独享,共享,虚拟 (顺序可交换) 2:文件的物理组织有顺序、_______和索引。(2分) 链接 3:影响局域网络的三种主要技术是 、和。(6分) 传输介质、拓扑结构,访问控制方式 (顺序可交换) 4:在TCP/IP层次模型中与OSI 参考模型第四层相对应的主要协议有 和 ,其中后者提供无连接的不可靠传输服。(4分) TCP (传输控制协议)和UDP (用户数据报协议) (顺序可交换) 5:恢复和并发控制的基本单位是_______ 事务(2分) 6:什么是分布式数据库? (6分) 答:数据库分布在计算机网络的不同计算机上, 网络中的每个节点具有独立处理的能力(场地自治),可以执行局部应用, 同时,每个节点也能通过网络通信子系统执行全局应用。 7:TCP 为何采用三次握手来建立连接,若采用二次握手可以吗?(10分) 答案:三次握手是为了防止已失效的连接请求再次传送到服务器端。 (2分) 二次握手不可行,(2分) 因为:如果由于网络不稳定,虽然客户端以前发送的连接请求以到达服务方,但服务方的同意连接的应答未能到达客户端。则客户方要重新发送连接请求,若采用二次握手,服务方收到重传的请求连接后,会以为是新的请求,就会发送同意连接报文,并新开进程提供服务,这样会造成服务方资源的无谓浪费。(6分) 问题: 假设在“职工”表中的“年龄”和“月工资”字段上创建了索引,下列的查询语句可能不会促使查询优化器使用索引,从而降低了效率,请写出可以完成相同功能又可以提高查询效率 的SQL 语句 SELECT 姓名,年龄,月工资 FROM 职工 WHERE 年龄 > 45 OR 月工资 <> SELECT 姓名,年龄,月工资 FROM 职工 WHERE 年龄 > 45 UNION SELECT 姓名,年龄,月工资 FROM 职工 WHERE 月工资 <> C++部分(50分) 1. 以下程序段,(4分) int c1=1,c2=2,c3; c3=1/c2*c1; 则执行后,c3中的值是 A A) 0 B) 0.5 C) 1 D) 2 2. 有如下程序(4分) main0 { int x=1,a=0,b=0; switch(x){ case 0: b++; case 1: a++; case 2: a++;b++; } printf(“a=%d,b=%d\n”,a,b); } 该程序的输出结果是 A A) a=2,b=1 B) a=1,b=1 C) a=1,b=0 D) a=2,b=2 3. 有如下程序(4分) main0 { int x=23; do { printf(“%d”,x--);} while(!x); } 该程序的执行结果是 B A) 321 B) 23 C) 不输出任何内容 D) 陷入死循环 4. 请找出下面代码中的所有错误(14分) 说明:以下代码是把一个字符串倒序,如“abcd ”倒序后变为“dcba ”。 #include"string.h" main() { char*src="hello,world"; char* dest=NULL; int len=strlen(src); dest=(char*)malloc(len); char* d=dest; char* s=src[len]; while(len--!=0) d++=s--; printf("%s",dest); return 0; } #include"string.h" #include "malloc.h" //加一行这个 main() { char*src="hello,world"; char* dest=NULL; int len=strlen(src); dest=(char*)malloc(len); char* d=dest; char* s=src[len];//改成char* s=&src[len-1]; while(len--!=0) { //加入大括号 *d = *s; d++; s--; }//前面三行改成这样 printf("%s",dest); return 0; } 5. static 有什么用途?(请至少说明两种)(9分, 每点3分) (1)使得变量或对象的存储形式变成静态存储; (2)它会把变量的可见范围限制在编译单元中,使它成为一个内部连接; (3)类中的static 成员。 6. 在C++ 程序中调用被 C 编译器编译后的函数,为什么要加 extern “C”声明?(10分) C++语言支持函数重载,C 语言不支持函数重载。函数被C++编译后在库中的名字与C 语言的不同。假设某个函数的原型为: void foo(int x, int y);该函数被C 编译器编译后在库中的名字为_foo , 而C++ 编译器则会产生像_foo_int_int 之类的名字。C++提供了C 连接交换指定符号extern “C ”来解决名字匹配问题。 (考察点:c 细节) 7. 头文件中的 ifndef/define/endif 干什么用(5分) 防止该头文件被重复引用。 JA V A 部分(50分) 1. 在Java 的基本数据类型中,char 型采用Unicode 编码方案,每个Unicode 码占 用 字节内存空间,这样,无论是中文字符还是英文字符,都是占 用 字节内存空间。(4分) 2 、2 方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义。 方法是不能被当前类的子类重新定义的方法。(4分) 抽象(abstract)方法、最终(final)方法 3. 设有数组定义:int MyIntArray[ ] = { 10 , 20 , 30 , 40 , 50 , 60 , 70}; 则执行以下几个语句后的输出结果是 。 120(4分) int s = 0 ; for ( int i = 0 ; i < myintarray.length="" ;="" i="" +="" +=""> if ( i % 2 = = 1 ) s += MyIntArray[i] ; System.out.println( s ); 4、下列哪些关键字既能够被用于局部变量的修饰,也可以用做类变量的修饰()C (4分) A. public B. transient C. static D. finally 5. 下面的哪些叙述为真( )D (4分) A. equals()方法判定引用值是否指向同一对象。 B. = = 操作符判定两个不同的对象的内容和类型是否一致。 C. equals()方法只有在两个对象的内容一致时返回true 。 D. 类File 重写方法equals()在两个不同的对象的内容和类型一致时返回true 。 6 . Java有没有goto? &和&&的区别。(8分) Goto 是java 中的保留字,现在没有在java 中使用。 &是位运算符。&&是布尔逻辑运算符。 7. 按照下图写出代码。(22分) Public class JCheckbocDemo{ Public static void main(String agrs[]){ Container con = new JFrame(“JCheckBox 演示窗口”); Panel panel1= new Panel(); Panel panel2= new Panel(); ButtonGroup sex = new ButtonGroup(); //定义性别单选框 JRadioButton box1 = new JRadioButton(“男”,true); JRadioButton box2 = new JRadioButton(“女”,false); sex.add(box1); sex.add(box2); panel1.add(box1); panel2.add(box2); JCheckBox box3 = new JCheckBox(“计算机”,false); //定义系别复选框 JCheckBox box4 = new JCheckBox(“英语”,true); panel2.add(box3); panel2.add(box4); myframe.setSize(300,300); con.setLayout(new BoxLlayout(con,BoxLayout.Y_AXIS)); //设置窗体布局 con.add(new Label(“性别选择:”)); con.add(panel1); con.add(new Label(“系别选择:”)); con.add(panel2); myframe.show(); } } 本试卷分三部分, 公共部分、 C++部分和 JA V A 部分, 其中公共部分为必考部分, C++与 JA V 部分,两者选一完成。试卷满分 100分。 公共部分 (50分 ) 1:Internet 采用哪种网络协议?该协议的主要层次结构? (10分 ) Internet 采用 TCP/IP协议 物理层,数据链路层,网络层 (IP),应用层 2:Internet 物理地址和 IP 地址转换采用什么协议? (2分 ) ARP 协议 3:IP 地址的编码分为哪俩部分? (4分 ) 网络号 主机号 4:请解释什么是操作系统的优先级反转?其解决的办法是什么? (4分 ) 优先级反转发生在高优先级的任务在等待低优先级的任务释放它所需要的资源时, 此时高优 先级任务的运行实时性将得不到保证。 (2分 ) 采用优先级继承的方法可以避免优先级反转。 (2分 ) 5:写出以太网数据帧格式。 (10分 , 每点 2分 ) 6:设职工 ---社团数据库有三个基本表:(20分 ) 职工(职工号,姓名,年龄,性别) ; 社会团体(编号,名称,负责人,活动地点) ; 参加(职工号,编号,参加日期) ; 其中: 1)职工表的主键为职工号。 2)社会团体表的主键为编号;主键为负责人,被参照表为职工表,对应属性为职工号。 3)参加表的职工号和编号为主键;职工号为外码,其被参照表为职工表,对应属性为职 工号;编号为外码,其被参照表为社会团体表,对应属性为编号。 试用 SQL 语句表达下列操作: 1)定义职工表、社会团体表和参加表,并说明其主键和参照关系。 2)建立下列两个视图。 社团负责人(编号,名称,负责人职工号,负责人姓名,负责人性别) ; 参加人情况(职工号,姓名,社团编号,社团名称,参加日期) 3)查找参加唱歌队或篮球队的职工号和姓名。 4)求参加人数超过 100人的社会团体的名称和负责人。 答: 1) CREA T TABLE 职工(职工号 CHAR (10) NOT NULL , 姓名 CHAR (8) NOT NULL , 年龄 SMALLINT , 性别 CHAR (2) , CONSTRAINT C1_PKPRIMARY KEY (职工号) ; CREA T TABLE 社会团体(编号 CHAR (8) NOT NULL , 名称 CHAR (12) NOT NULL , 负责人 CHAR (8) , 活动地点 V ARCHAR (50) , CONSTRAINT C2_PK PRIMARY KEY (职工号) CONSTRAINT C2FOREIGN KEY (负责人) REFERENCES 职工 (职工号) ) ; CREA T TABLE 参加(职工号 CHAR (8) , 编号 CHAR (8) , 参加日期 DA TA , CONSTRAINT C3_PKPRIMARY KEY (职工号,编号) , CONSTRAIN C3 FOREIGN KEY(职工号 )REFERENCES 职工(职工号) ) ; 2) CREA T VIEW 社团负责人(编号,名称,负责人职工号,负责人姓名,负责人性别) AS SELECT 编号,名称,负责人,姓名,性别 FROM 社会团体,职工 WHERE 社会团体 . 负责人=职工 . 职工号 ; CREA T VIEW参加人情况(职工号,姓名,社团编号,参加日期) AS SELECT 参 加 . 职 员 号 , 姓 名 , 社 会 团 体 . 编 号 , 名 称 , 参 加 日 期 FROM 职工,社会团体,参加 WHERE 职工 . 职工号=参加 . 职工号 AND 参加 . 编号=社会团体 . 编号 ; 3) SELECT 职工号,姓名 FROM 职工,社会团体,参加 WHERE 职工 . 职工号=参加 . 职工号 AND 参加 . 编号=社会团体 . 编号 AND 社会团体 . 名称 IN (' 唱歌队 ' , ' 篮球队 ' ) ; 4) SELECT 社会团体 . 名称,职工 . 姓名 FROM 职工,社会团体,参加 WHERE 社会团体 . 编号=参加 . 编号 AND 社会团体 . 负责人=职工 . 职工号 GROUP BY 参加 . 编号 HA VING COUNT (参加 . 编号)>100; C++部分 (50分 ) 1. 设单链表的结点结构为 (data,next),已知指针 q 所指结点是指针 p 所指结点的直接前驱, 如在 *q与 *p之间插入结点 *s,则应执行的操作为 ( ) B (4分 ) A. s->next=p->next; p->next=s; B. q->next=s; s->next=p; C. p->next=s-next; s->next=p; D. p->next=s; s-next=q; 2. 阅读以下程序: main() { int x; scanf( if(x--<5)>5)> else printf( } 程序运行后,如果从键盘上输人 5,则输出结果是 ( ) B (4分 ) A. 3 B. 4 C. 5 D. 6 3.有如下程序 (4分 ) main0 { int x=23; do { printf(“%d”,x --);} while(!x); } 该程序的执行结果是 ( ) B A. 321 B. 23 C. 不输出任何内容 D. 陷入死循环 4. 你认为在软件项目中,测试应该在以下哪个阶段介入 ( ) A (4分 ) A. 需求阶段 B. 设计阶段 C. 编码阶段 D. 编码结束后 5. 请简述以下两个 for 循环的优缺点:(16分 ) (1) for (i = 0; i < n;=""> { if (condition) { DoSomething(); } else { DoOthers(); } } (2) if (condition) { for (i = 0; i < n;=""> { DoSomething(); } } else { for (i = 0; i < n;=""> { DoOthers(); } } (1) 优点:程序简洁; (4分 ) 缺点:多执行了 N-1 次逻辑判断,并且打断了循环“流水线”作业,使得编译器不能对 循环进行优化处理,降低了效率。 (4分 ) (2) 优点:循环的效率高; (4分 ) 缺点:程序不简洁。 (4分 ) (考察点:程序代码性能侧重点) 6. 为什么不用 malloc 为对象分配空间? (6分 ) 内存空间未初始化, (3分 ) 同时构造函数不能得到运行。 (3分 ) 7. 写一个函数,判定运算环境 (16位以上字长 ) 是 little-endian 还是 big-endian (12分 ) /* 函数返回 0:little endian,非零:big endian */ int is_little_endian(void) { int v = 1; if(*((char *)&v) == 1) return 0; return 1; } JA V A 部分 (50分 ) 1.假设 x= 10, y= 20, z= 30; 计算下列表达式的值 (6分 ) A) x <10 ||="" x=""> 10 ________________ B) !(x < y="" +="" z)="" ||="" (x="" +="" 10=""><= 20)="" _____________="" c)="" z-y="=" x="" &&="" math.abs(y-z)="" !="">=> false true false 2. Collection 的 四种主要接口是 、 、 、 Collection , List , Map , Set (8分 ) 3. ______是线程安全的,也就是说是同步的,而 _______是线程序不安全的,不是同步的 Vector , ArrayList (4分 ) 4. 以下那些陈述是正确的:() D (3分 ) A. 一旦一个线程被创建,它就立即开始运行。 B. 使用 start()方法可以使一个线程立即开始运行。 C. 当一个线程因为抢先机制而停止运行,它被放在可运行队列的前面。 D. 一个线程可能因为不同的原因停止(cease )并进入就绪状态。 5. 方法 resume()负责恢复哪些线程的执行:() D (3分 ) A. 通过调用 stop()方法而停止的线程。 B. 通过调用 sleep()方法而停止运行的线程。 C. 通过调用 wait()方法而停止运行的线程。 D. 通过调用 suspend()方法而停止运行的线程。 6. 对于以下的方法体,如果 TimedOutException 直接继承 Exception 类,那么哪一个方法 声明适合以下的方法体代码?() B (3分 ) { success = connect(); if (success = = 1) { throw new TimedOutException(); } } A. public void method() B. public void method() throws Exception C. public void method() throw TimedOutException D. public throw TimedOutException void method() 7.一个函数定义的返回值是 float ,它不能在 return 语句中返回的值的类型是() D (3 分 ) A. char B. float C. long D. double 8. 当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变 化后的结果,那么这里到底是值传递还是引用传递 ? 为什么? (6分 ) 是值传递。 (2分 ) Java 编程语言只由值传递参数。当一个对象实例作为一个参数被传递到方法中时,参数的 值就是对该对象的引用。 对象的内容可以在被调用的方法中改变, 但对象的引用是永远不会 改变的。 (4分 ) 9. class Ex(14分 ) { public static void main(String[] args) { Fx f=new Fx(5); } Ex() { System.out.println( } Ex(int i) { System.out.println( } } class Fx extends Ex { Fx() { Super(); System.out.println( } Fx(int i) { This(); System.out.println( } } Ex,no-args Fx,no-args Fx,int 本试卷分三部分, 公共部分、 C++部分和 JA V A 部分, 其中公共部分为必考部分, C++与 JA V 部分,两者选一完成。试卷满分 100分。 公共部分 (50分 ) 1:SQL 语言中,下列涉及空值的操作,不正确的是 (C ) (3分 ) A.AGE IS NULL B.AGE IS NOT NULL C.AGE=NULL D.NOT(AGE IS NULL) 2:下面关于函数依赖的叙述中,不正确的是 (B ) (3分 ) A .若 X → Y , X → Z ,则 X → YZ B .若 XY → Z ,则 X → Z , Y → Z C .若 X → Y , WY → Z ,则 XW → Z D .若 X → Y ,则 XZ → YZ 3:A TM 采用的线路复用方式为 C (3分 ) A. 频分多路复用 B. 同步时分多路复用 C. 异步时分多路复用 D. 独占信道 4:IP 地址为 140.111.0.0 的 B 类网络,若要切割为 9个子网,而且都要 连上 Internet ,请 问子网掩码设为() 。 D (3分 ) A. 255.0.0.0 B. 255.255.0.0 C. 255.255.128.0 D. 255.255.240.0 5:写出 float x 与“零值”比较的 if 语句 (4分 ) const float EPSINON = 0.00001; if ((x >= - EPSINON) && (x <=>=> 6:写出 char *p 与“零值”比较的 if 语句 (4分 ) if (p == NULL) 7:操作系统中进程调度策略有哪几种? (10分 , 每点 2分 ) 先来先服务 (FIFO),时间轮转法调度(时间片调度) ,优先权调度,多级反馈队列(反馈循 环队列) ,保证调度 8:设有关系 EMP (ENO , ENAME , SALARY , DNO ) ,其中各属性的含义依次为职工号、 姓名、工资和所在部门号,以及关系 DEPT (DNO , DNAME , MANAGER ) ,其中各属性 含义依次为部门号、部门名称、部门经理的职工号。 (回答下列题目) (20分 ) 1. 列出各部门中工资不低于 600元的职工的平均工资。 (10分 ) 2. 请用 SQL 语句将“销售部”的那些工资数额低于 600的职工的工资上调 10%。 (10分 ) 1.SELECT DNO, AVG (SALARY) FROM EMP WHERE SALARY>=600 GROUP BY DNO 2.UPDATE EMP SET SALARY=SALARY*1.1 WHERE ENO IN (SELECT ENO FROM EMP, DEPT WHERE EMP.DNO=DEPT.DNO AND DNAME='销售部 ' AND SALARY<> 或者 UPDATE EMP SET SALERY = SALERY * 1.1 FROM EMP A,ENO B WHERE A.DNO = B.DNO AND B.DNAME='销售部 ' AND B.SALARY<> C++部分 (50分 ) 1. 下列程序执行后的输出结果是 B (4分 ) main() { int a[3][3], *p,i; p=&a[0][0]; for(i=0; i<9; i++)="" p[i]="">9;> printf( } A) 3 B) 6 C) 9 D) 随机数 2. 设有以下说明语句 (4分 ) struct ex { int x ; float y; char z ;} example; 则下面的叙述中不正确的是 B A) struct是结构体类型的关键字 B) example是结构体类型名 C) x,y,z都是结构体成员名 D) struct ex是结构体类型 3. 以下程序运行后 , 输出结果是 C (4分 ) main() { char *s= s+=2; printf( } A) cde B) 字符 c 的 ASCII 码值 C) 字符 c 的地址 D) 出错 4. 什么函数不能声明为虚函数? (6分 , 每点 3分 ) 全局函数和静态函数 5. 引用与指针有什么区别? (12分 , 每点 4分 ) 1) 当引用被创建时,它必须被初始化。 (指针则可以在任何时候被初始化。 ) 2) 一旦一个引用被初始化为指向一个对象,它就不能被改变为对另一个对象的引用。 (指 针则可以在任何时候指向另一个对象。 ) 3) 不可能有 N U L L引用。必须确保引用是和一块合法的存储单元关连。 6. 设计一个学生类 Stud ,除了包括 no(学号 ) 、 name(姓名 ) 和 deg(成绩 ) 数据成员外,有两 个静态变量 sum 和 num , 分别存放总分和人数, 另有两个普通成员函数 setdata()和 disp(), 分别用于给数据成员赋值和输出数据成员的值,另有一个静态成员函数 avg(),它用于计算 平均分。在 main()函数中定义了一个对象数组用于存储输入的学生数据。 (20分 ) #include #include #define N 3 class Stud { int no; char name[10]; int deg; static int num; static int sum; public: void setdata(int n,char na[],int d) { no=n; deg=d; strcpy(name,na); sum+=d; num++; } static double avg() { return sum/num; } void disp() { printf( }; int Stud::sum=0; int Stud::num=0; void main() { Stud st[N]; int i,n,d; char na[10]; for(i=0;i<> { printf( st[i].setdata(n,na,d); } printf( printf( for(i=0;i<> st[i].disp(); printf( JA V A 部分 (50分 ) 1. 判断以下 Teacher 类的 main 方法的运行结果() B (4分 ) public class Teacher extends Person { public Teacher () { super(); } public Teacher(int a) { System.out.println (a); } public void func() { System.out.print ( public static void main(String[] args) { Teacher t 1 = new Teacher (); Teacher t2 = new Teacher(3); } } class Person { public Person () { func(); } public void func() { System.out.println( } A. 1, 1, 3 B. 2, 2, 3 C. 1, 3 D. 2, 3 2. 以下那个方法声明能够被加入到 Child 类中,编译正确?() B (4分 ) public class Parent { public int addValue( int a, int b) { return a+b; } } class Child extends Parent { } A. int addValue( int a, int b ){// do something...} B. public void addValue (){// do something...} C. public void addValue( int b, int a ){// do something...} D. public int addValue( int a, int b )throws MyException {//do something...} 3. 请阅读以下的代码片断,判断以下那些陈述是正确的:() D (4分 ) try { ...... // 打开文件 ...... // 读写文件 return; } catch(IOException e) { e.printStackTrace(); throw e; } finally { throw new IllegalArgumentException(“ ...... ” ); } A. 如果在文件操作中出现异常, 那么该代码抛出 IOException 和 IllegalArgumentException 。 B. 如果在文件操作中出现异常,那么该代码抛出 IOException 。 C. 如果在文件操作一切正常,那么该代码直接返回,不抛出异常。 D. 如果在文件操作一切正常,那么该代码抛出 IllegalArgumentException 。 4、对于以下的方法体,如果 TimedOutException 直接继承 Exception 类,那么哪一个方法声 明适合以下的方法体代码?() B (4分 ) { success = connect(); if (success = = 1) { throw new TimedOutException(); } } A. public void method() B. public void method() throws Exception C. public void method() throw TimedOutException D. public throw TimedOutException void method() 5. 如果一个对象仅仅声明实现了 cloneable 接口,但是不声明 clone 方法,外部能够调用其 clone 方法吗?() B (4分 ) A. 能 B. 不能 C. 不确定 6 .写出下列程序所完成的功能:(15分 ) import java.io.* ; public class Reverse { public static void main(String args[ ]) { int i , n =10 ; int a[ ] = new int[10]; for ( i = 0 ; i < n="" ;="" i="" ++=""> try { BufferedReader br = new BufferedReader( new InputStreamReader(System.in)); a[i] = Integer.parseInt(br.readLine( )); } catch ( IOException e ) { } ; for ( i = n - 1 ; i >= 0 ; i -- ) System.out.print(a[i]+ System.out.println( ); } } 从标准输入 (即键盘 ) 读入 10个整数存入整型数组 a 中,然后逆序输出这 10个整数。 7. Java 编程 , 打印昨天的当前时刻。 (15分 ) public class YesterdayCurrent{ public void main(String[] args){ Calendar cal = Calendar.getInstance(); cal.add(Calendar.DATE, -1); System.out.println(cal.getTime()); } } 本试卷分三部分,公共部分、C++部分和JA V A 部分,其中公共部分为必考部分,C++与JA V 部分,两者选一完成。试卷满分100分。 公共部分(50分) 1:分时操作系统通常采用___ B ____策略为用户服务。(4分) A. 可靠性和灵活性 B. 时间片轮转 C. 短作业优先 D. 时间片加权分配 2:进程从运行状态进入就绪状态的原因可能是___ D ____。(4分) A. 被选中占有处理机 B. 等待某一事件 C. 等待的事件已发生 D. 时间片用完 3:不能激活触发器执行的操作是:( D )(4分) A .DELETE B.UPDA TE C.INSERT D.SELECT 4:简述中断装置的主要职能。(6分) 中断装置的职能主要有三点: 1) 检查是否有中断事件发生。(2分) 2) 若有中断发生,保护好被中断进程的断点及现场信息,以便进程在适当时候能恢复运行。(2分) 3) 启动操作系统的中断处理程序。(2分) 5:面向连接和非连接的服务的特点是什么(8分) 面向连接的服务,通信双方在进行通信之前,要事先在双方之间建立起一个完整的可以彼此沟通的通道,在通信过程中,整个连接的情况一直可以被实时地监控和管理。(4分) 而非连接的服务,不需要预先建立起一个联络两个通信节点的连接,需要通信的时候,发送节点就可以往“网络”上送出信息,让信息自主地在网络上去传,一般在传输的过程中不再加以监控。(4分) 6:请给出预防死锁的若干方法(6分) 预防死锁通常有以下两种方法: (1)一次封锁法,就是要求每个事务必须一次将所有要使用的数据全部加锁,否则该事务不能继续执行;(3分) (2)顺序封锁法,是预先对数据对象规定一个封锁顺序,所有事务都按这个顺序实行封锁。 (3分) 7:主键和唯一索引的区别(8分, 每点2分) A 主键顺序为数据的物理顺序 B 主键不能空,唯一索引可以为空 C 主键每个表只能有一个,唯一索引可以多个 D 主键:默认将是聚簇索引 唯一索引: 默认将是非聚簇索引 C++部分(50分) 1. 表达式8&3的结果是__________。0(2分) 2. 设一维整型数组data 已进行了初始化,则其元素个数可由操作符sizeof 通过表达式__________________________计算出来。sizeof(data/data[0]) (2分) 3. 在继承机制下,当对象消亡时,编译系统先执行________的析构函数,然后再执行_______的析构函数。子类 父类(4分) 4. 设int f(int);和int g(int);是函数f 和g 的原形,以下将f 作为语句调用的是( )。B (3分) A g(f(3)) B f(g(3)) C g(f(3)+2) D p= f(g(3)+1) 5. 设int * p2=&x,* p1=a;p2= *b;则a 和b 的类型分别是( )。B (3分) A int * 和int B int * 和int ** C int 和int * D int * 和int * 6. 程序员规范中要求不要写出类似(++i)+(i++) 或 f(++i,i++)这样的代码,请说明原因。(8分) 计算子表达式的顺序由编译器决定的,虽然参数的压栈顺序在给定的调用方式下式固定的, 但参数表达式的计算顺序也由编译器决定的。不同的编译器或不同的表达式计算的顺序可能不一致。 7. 说明类中的public 、 protected和 private成员函数分别在public 、protected 和private 继承方式下在派生类中的可访问性。(10分) 重点是基类中的任何Private 在派生类中都是不可访问的。 8. 请指出这个程序里的不正确的地方(18分) char *getString() { return (char*)malloc(800); } int main() { char *str; str = getString(); pintf("%s",str); return 0; } 错误在于: 在前面的函数中。malloc 分出来的空间被放在了一个栈上面 主函数使用了这个函数后操作系统后弹出栈顶 也就是这块空间被shi 放了(9分) 后面那个printf 打印的本来是指向栈顶的那个地址的。。 但现在弹出了 所以不知道指到哪里去了 也不会得到自己想要的打印结果(9分) JA V A 部分(50分) 1. int x=4; (3分) System.out.println("value is " +((x>4)?99.9:9)); A 、9 B 、9.0 C 、99.9 D 、99 B 2. 下面哪个类可以被继承? C (3分) A 、java.lang.Double B 、java.lang.Math C 、java.lang.Thread D 、java.lang.Class 3. 接口的继承(3分) interface A{ int meth1(); } interface B{ int meth2(); } interface C extends A,B{ int meth3(); } class JC implements C{ public int meth1(){ return 1; } public int meth2(){ return 2; } public int meth3(){ return 3; } public int meth4(){ return 4; } } class Jkou{ public static void main(String args[]){ JC j = new JC(); System.out.println(j.meth1()); System.out.println(j.meth2()); System.out.println(j.meth3()); System.out.println(j.meth4()); } } A 、4 3 2 1 B 、1 2 3 4 C 、1 3 2 4 D 、1 4 2 3 B 4、class Check4{(3分) public static void main(String args[]) { int x=0; x=x++; System.out.println(x); int y=x; System.out.println(y); } }输出结果为: 0 0 5. Collection 的 四种主要接口是 、 、 、 Collection ,List ,Map ,Set (8分) 6. Error与Exception 有什么区别?(6分) Error 表示系统级的错误和程序不必处理的异常, Exception 表示需要捕捉或者需要程序进行处理的异常。 7. 多线程有几种实现方法, 都是什么? 同步有几种实现方法, 都是什么? (12分) 多线程有两种实现方法,(2分) 分别是继承Thread 类(2分) 与实现Runnable 接口 (2分) 同步的实现方面有两种,(2分) 分别是synchronized,wait (2分) 与notify (2分) 8. Java 编程, 打印昨天的当前时刻。(12分) public class YesterdayCurrent{ public void main(String[] args){ Calendar cal = Calendar.getInstance(); cal.add(Calendar.DATE, -1); System.out.println(cal.getTime()); } } 转载请注明出处范文大全网 » 中兴专业面试试题(9)范文二:中兴专业面试试题 (4)
范文三:中兴专业面试试题 (7)
范文四:中兴专业面试试题 (5)
范文五:中兴专业面试试题 (1)