多益网络2018秋招试题
多以网络的秋招试题,有单选、填空、问答、编程四种题型
单选题
1、能正确表示a和b同时为正或同时为负的逻辑表达式是( )。
A.(a>=0||b>=0)&&(a<0||b<0) B.(a>=0&&b>=0)&&(a<0&&b<0) C.(a+b>0)&&(a+b<=0)
D.b>0
参考答案:D
2、某公司有数据库,其中有一个表包含几十万个数据,但用户抱怨说查询速度太慢,下面哪种方法能提高查询的速度?( )
A.收缩数据库
B.减少数据占用空间
C.建立聚集索引和非聚集索引
D.换个高档服务器
3、下列哪个选项可以正确用以表示八进制值8.( )
A. 0x8
B. 0x10
C. 08
D. 010
4、设有5000个待排序的记录关键字,如果需要用最快的方法选出其中最小的10个记录关键字,用下列( )方法可以达到此目的。
A.快速排序
B.插入排序
C.归并排序
D.堆排序
填空题
简答题
1、【英文翻译中文】Although the compiler ignores comments ,readers of our code do not .Programmers tend to believe comments even when other parts of the system documentation are out of date .An incorrect comment is worse than no comment at all because it may mislead the reader .When you change your code .be sure to update the comments。
参考答案:
尽管编译器忽略了注释,但我们的代码的读者却没有。即使系统文档的其他部分已经过时,程序员也倾向于相信评论。不正确的评论比没有评论更糟糕,因为它可能误导读者。当你改变你的代码。一定要更新注释。
(1)写一个SQL语句,查询工资金额为8000的职工工号和姓名。
(2)写一个SQL语句,查询职工张三的出勤率。
(3)写一个SQL语句,查询3次出勤率为0的职工姓名和工号。
(4)写一个SQL语句,查询出勤率为10并且工资金额小于2500的职工信息。
参考答案:
(1)
SELECT eml.num,eml.name FROM Employee AS eml
WHERE eml.num =
(
SELECT Wage.num FROM Wage WHERE Wage.amount=8000
);
(2)
SELECT Attend .attendance FROM Attend WHERE Attend.num IN
(
SELECT eml.num FROM Employee AS eml WHERE eml.name LIKE‘张三’
);
(3)SELECT eml.name ,eml.num FROM Employee AS eml WHERE
(
SELECT count(*) FROM Attend WHERE Attend.num=eml.num AND attendance=0
) = 3;
(4)
SELECT * FROM Employee AS eml WHERE
(
SELECT Attend.No FROM Attend WHERE Attend.num=eml.num AND Attend.attendance=10
) =
(
SELECT Wage.No FROM Wage WHERE Wage.amount < 2500
)
与建立连接的“三次握手”类似,断开一个TCP连接则需要“四次握手”。
第一次挥手:主动关闭方发送一个FIN,用来关闭主动方到被动关闭方的数据传送,也就是主动关闭方告诉被动关闭方:我已经不 会再给你发数据了(当然,在fin包之前发送出去的数据,如果没有收到对应的ack确认报文,主动关闭方依然会重发这些数据),但是,此时主动关闭方还可 以接受数据。
第二次挥手:被动关闭方收到FIN包后,发送一个ACK给对方,确认序号为收到序号+1(与SYN相同,一个FIN占用一个序号)。
第三次挥手:被动关闭方发送一个FIN,用来关闭被动关闭方到主动关闭方的数据传送,也就是告诉主动关闭方,我的数据也发送完了,不会再给你发数据了。
第四次挥手:主动关闭方收到FIN后,发送一个ACK给被动关闭方,确认序号为收到序号+1,至此,完成四次挥手。
public static void mySqrt(int a)throws MyException {
if(a<0)
throw new MyException();
System.out.println(Math.sqrt(a));
}
public static void main(String[] args){
try {
mySqrt(25);
mySqrt(-5);
}catch (MyException e) {
System.out.println(" Caught "+e);
}
}
class MyException extends Exception{
public String toString(){
return "negative";
}
}
参考答案:
5
编程题
1、实现对数组(9,1,4,3,8)的冒泡排序。
(用Java语言实现,先写编程思路,再写代码,不写编程思路扣分)
import java.io.;
public class Test
{
public static void main(string[] args) throws java.lang.Exception
{
//这里继续添加代码,或者清除模板后自己添加代码
System.out.println(“Hello World!”);
}
}
/这里写解题思路
/
参考答案:
import java.io.;
public class Test
{
public static void BubbleSort(int []arr)
{
if (arr.length==0) {
return;
}
int temp;
for (int i = 0; i < arr.length-1; i++) {
for (int j =i+1; j < arr.length; j++) {
if (arr[i]>arr[j]) {
temp=arr[i];
arr[i]=arr[j];
arr[j]=temp;
}
}
}
}
public static void main(String[] args) throws java.lang.Exception
{
int arr[]= {9,1,4,3,8};
for(int i : arr) {
System.out.print(i+" ");
}
BubbleSort(arr);
System.out.println();
for(int i : arr) {
System.out.print(i+" ");
}
}
}
import java.io.;
public class Test
{
public static void main(string[] args) throws java.lang.Exception
{
//这里继续添加代码,或者清除模板后自己添加代码
System.out.println(“Hello World!”);
}
}
/这里写解题思路
*/
参考答案:(略)