2014 360校園招聘技術(shù)類(lèi)筆試題

接下來(lái)的面試題傳送門(mén):

2014 360校園招聘技術(shù)類(lèi)面試題

<p>
</p>

選擇題

  1. 小畢最近電腦很慢,懷疑是中了病毒,于是找了三款殺毒軟件掃描了一下:

A軟件掃描結(jié)果:如果中了病毒X,那么也可能中了病毒Y
B軟件掃描結(jié)果:如果沒(méi)有中病毒X,那么一定中了病毒Y
C軟件掃描結(jié)果:中了病毒X

小畢不知道該相信哪個(gè),于是找360技術(shù)支持,360技術(shù)支持告訴他只有一個(gè)軟件的掃描結(jié)果是正確,那么請(qǐng)推斷:()
A 中了病毒X
B 中了病毒Y
C 兩個(gè)病毒都中了
D 兩個(gè)都沒(méi)中

  1. 一個(gè)富人雇1人為他做七天工,他給他的工錢(qián)是毗鄰在一起的七塊金條(天天一塊),要保證天天雇工拿到他應(yīng)拿工錢(qián)(不能多也不能少),富人只能掰斷二次連在一起的金條,問(wèn):最少掰斷幾次能做到按要求給雇工報(bào)酬()
    A. 2   B .3   C. 4   D .7

  2. 某學(xué)校有四名外國(guó)專(zhuān)家,分別來(lái)自美國(guó)、加拿大、韓國(guó)和日本。他們分別在電子、機(jī)械
    和生物三個(gè)系工作,其中:
    ① 日本專(zhuān)家單獨(dú)在機(jī)械系;
    ② 韓國(guó)專(zhuān)家不在電子系;
    ③ 美國(guó)專(zhuān)家和另外某個(gè)外國(guó)專(zhuān)家同在某個(gè)系;
    ④ 加拿大專(zhuān)家不和美國(guó)專(zhuān)家同在一個(gè)系。
    以上條件可以推出美國(guó)專(zhuān)家所在的系為 (D)
    (A) 電子
    (B) 機(jī)械系
    (C) 生物系
    (D) 電子系或生物系

  3. 五對(duì)夫婦甲乙丙丁戊聚會(huì),見(jiàn)面是互相握手問(wèn)候,每個(gè)人都可以和其他人握手,但夫婦之間不能握手,甲先生好奇地私下問(wèn)每個(gè)人(包括他太太)打聽(tīng)剛才握手的次數(shù),得到的回答是:0,1, 2,3,4,5,6,7,8,文甲太太握手( )次。
    A. 3   B. 4   C. 5   D. 6

  4. 甲、乙、丙、丁四個(gè)人,一個(gè)是教師,一個(gè)是售貨員,一個(gè)是工人,一個(gè)是老板。請(qǐng)你根據(jù)下面的情況判斷每個(gè)人的職業(yè)。
    (1) 甲和乙是鄰居,每天一起騎車(chē)去上班
    (2) 甲比丙年齡大
    (3) 甲和丁業(yè)余煉武術(shù)
    (4) 教師每天步行上班
    (5) 售貨員的鄰居不是老板
    (6) 老板和工人互不相識(shí)
    (7) 老板比售貨員和工人年齡都大

  5. 某商店以60元同時(shí)賣(mài)出兩件商品,已知其中一件賺20%,另一件虧20%,那么這個(gè)商店賣(mài)出這兩件商品是賺了()
    A -10   B 5   C -5  D 0

  6. 某城市發(fā)生了一起汽車(chē)撞人逃跑事件,該城市只有兩種顏色的車(chē),藍(lán)色15% 綠色85%,事發(fā)時(shí)有一個(gè)人在現(xiàn)場(chǎng)看見(jiàn)了,他指證是藍(lán)車(chē)。
    但是根據(jù)專(zhuān)家在現(xiàn)場(chǎng)分析,當(dāng)時(shí)那種條件能看正確的可能性是80%
    那么,肇事的車(chē)是藍(lán)車(chē)的概率到底是多少()
    A 12%   B 21%  C 41%   D 80%

  7. X是類(lèi)名稱(chēng),下面哪個(gè)寫(xiě)法是錯(cuò)誤的()
    A const X * x  B X const * x   C const X const *x  D X * const x

  8. 下面輸出什么?()

#include <stdio.h>
void main()
{
    for(int a = 1, b = 1; a <= 100; a++)
    {
        if(b >= 20) break;
        b += 3;
    }
    b = b - 5;
    printf("%d\n", a);
}

A 6  B 7   C 8   D 9

  1. 下面說(shuō)法正確的是()
    for(int i = 0, k = 1; k = 0; i++, k++)
    A 判斷循環(huán)的條件不合法
    B 陷入無(wú)限循環(huán)
    C 循環(huán)一次也不執(zhí)行
    D 循環(huán)只執(zhí)行一次

  2. 假設(shè)指針變量p定義為:int *p = new int[100],下面釋放p所執(zhí)行內(nèi)存的操作中正確的是()
    A delete p  B delete *p  C delete &p  D delete []p

  3. 選擇填空()

#include <stdio.h>
void test(void *data)
{
    unsigned int value = 填空處;
    printf("%d\n", value);
}
void main()
{
    unsigned int data = 10;
    test(&data);
}

A *data   B (unsigned int) *data
C (unsigned *)data   D *(unsigned int *)data

  1. 在C++中下面哪個(gè)可以成為對(duì)象繼承之間的轉(zhuǎn)換()
    A static_cast   B dynamic_cast  C const_static  D reinterpret_cast

  2. 下面程序的輸出結(jié)果是()

 A *pa = new A();
    pa->f();
    B *pb = (B*)pa;
    pb->f();
    delete pa, pb;
    pa = new B();
    pa->f();
    pb = (B*)pa;
    pb->f();

A. AABA   B. AABB  C. AAAB  D. ABBA

  1. 輾轉(zhuǎn)相除法求兩個(gè)非負(fù)整數(shù)之間的最大公約數(shù)()
long long gcd(long long x, long long y)
{
    if(y == 0)  return 0;
    else return gcd(y, x % y);
}

假設(shè)x和y中較大的數(shù)長(zhǎng)度為n,則此算法的時(shí)間復(fù)雜度是(B)
A O(1)  B O(lgn)   C O(n)   D O(n ^ 2)

  1. 進(jìn)程間通訊方式中哪種訪(fǎng)問(wèn)速度最快?()
    A 管道  B消息隊(duì)列   C 共享內(nèi)存  D 套接字

  2. TCP關(guān)閉過(guò)程中,正確的是()
    A、處于TIME_WAIT狀態(tài)的鏈接等待2MSL后真正關(guān)閉鏈接
    B、對(duì)一個(gè)established狀態(tài)的TCP連接,在調(diào)用shutdown函數(shù)之前調(diào)用close接口,可以讓主動(dòng)調(diào)用的一方進(jìn)入半關(guān)閉狀態(tài)
    C、主動(dòng)發(fā)送FIN消息的連接端,收到對(duì)方回應(yīng)ack之前不能發(fā)只能收,在收到對(duì)方回復(fù)ack之后不能發(fā)也不能收,進(jìn)入CLOSING狀態(tài)
    D、在已經(jīng)成功建立連接的TCP連接上,任何情況下都不允許丟失數(shù)據(jù)。

  3. 下列說(shuō)法錯(cuò)誤的是()
    A、單線(xiàn)程異步非阻塞模式通常在單核CPU情況下能夠比多線(xiàn)程更充分利用資源
    B、采用鎖來(lái)訪(fǎng)問(wèn)現(xiàn)場(chǎng)共享資源時(shí),如果加鎖和解鎖操作處在同一個(gè)線(xiàn)程中,則不會(huì)導(dǎo)致死鎖
    C、一個(gè)程序枝梢有一個(gè)進(jìn)程,一個(gè)進(jìn)程至少有一個(gè)線(xiàn)程
    D、一個(gè)同步方法是一段時(shí)間內(nèi)只允許一個(gè)線(xiàn)程進(jìn)入執(zhí)行

  4. 代碼生成階段的主要任務(wù)是(把中間代碼變換成依賴(lài)具體機(jī)器的目標(biāo)代碼)。

  5. 詞法分析器用來(lái)識(shí)別(C )
    A 句子  B 句型   C 單詞  D 生產(chǎn)式

  6. 下列哪一個(gè)可以作為對(duì)象繼承之間的轉(zhuǎn)換(A)
    A static_cast   B dynamic_cast   C const_cast   D reinterpret_cast

  7. 下列說(shuō)法中,哪個(gè)是錯(cuò)誤的(C)
    A、若進(jìn)程A和進(jìn)程B在臨界段上互斥,那么當(dāng)進(jìn)程A處于該臨界段時(shí),它不能被進(jìn)程B中斷
    B、虛擬存儲(chǔ)管理中采用對(duì)換策略后,用戶(hù)進(jìn)程可使用的存儲(chǔ)空間似乎增加了
    C、虛擬存儲(chǔ)管理中的抖動(dòng)現(xiàn)象是指頁(yè)面置換時(shí)用于換頁(yè)的時(shí)間大于程序執(zhí)行時(shí)間
    D、進(jìn)程可以由程序、數(shù)據(jù)和進(jìn)程控制塊描述

  8. 操作系統(tǒng)采用分頁(yè)式存儲(chǔ)管理中,要求(B)
    A、每個(gè)進(jìn)程擁有一張頁(yè)表,且進(jìn)程的頁(yè)表駐留在內(nèi)存中
    B、每個(gè)進(jìn)程擁有一張頁(yè)表,但只要執(zhí)行進(jìn)程的頁(yè)表駐留在內(nèi)存中,其他進(jìn)程的頁(yè)表不必駐留在內(nèi)存中
    C、所有進(jìn)程共享一張頁(yè)表,以節(jié)約有限的內(nèi)存空間,但頁(yè)表必須駐留在內(nèi)存中
    D、所有進(jìn)程共享一張頁(yè)表,只有頁(yè)表中當(dāng)前使用的頁(yè)面必須駐留在內(nèi)存中,以最大限度的節(jié)約有限的內(nèi)存空間

  9. linux中調(diào)用write發(fā)送網(wǎng)絡(luò)數(shù)據(jù)返回n(n > 0)表示()
    A 對(duì)方已收到n個(gè)字節(jié)
    B 本地已發(fā)送n個(gè)字節(jié)
    C 系統(tǒng)網(wǎng)絡(luò)buff已收到n個(gè)字節(jié)
    D 系統(tǒng)調(diào)用失敗

  10. HTTP應(yīng)答中的500錯(cuò)誤是指()
    A 服務(wù)器內(nèi)部錯(cuò)誤   B 文件未找到   C 客戶(hù)端網(wǎng)絡(luò)不通   D 沒(méi)有訪(fǎng)問(wèn)權(quán)限

  11. 根據(jù)自己的理解描述下Android數(shù)字簽名。
    答:(1)所有的應(yīng)用程序都必須有數(shù)字證書(shū),Android系統(tǒng)不會(huì)安裝一個(gè)沒(méi)有數(shù)字證書(shū)的應(yīng)用程序
    (2)Android程序包使用的數(shù)字證書(shū)可以是自簽名的,不需要一個(gè)權(quán)威的數(shù)字證書(shū)機(jī)構(gòu)簽名認(rèn)證
    (3)如果要正式發(fā)布一個(gè)Android ,必須使用一個(gè)合適的私鑰生成的數(shù)字證書(shū)來(lái)給程序簽名,而不能使用adt插件或者ant工具生成的調(diào)試證書(shū)來(lái)發(fā)布。
    (4)數(shù)字證書(shū)都是有有效期的,Android只是在應(yīng)用程序安裝的時(shí)候才會(huì)檢查證書(shū)的有效期。如果程序已經(jīng)安裝在系統(tǒng)中,即使證書(shū)過(guò)期也不會(huì)影響程序的正常功能。

  12. 如何判斷大小端?
    big endian(大端法)是指低地址存放最高有效字節(jié)(MSB),而little endian(小端法)則是低地址存放最低有效字節(jié)(LSB)。

#include <iostream>
using namespace std;
int main()
{
    unsigned int a = ~0;
    if( a>65536 )
    {
    cout<<"32 bit"<<endl;
    }
    else
    {
    cout<<"16 bit"<<endl;
    }
    return 0;
}

編程題

有一堆磚,工人每天搬剩下的一半,然后老板說(shuō)不夠,再加三塊。n天搬完,問(wèn)一共多少磚。

主觀(guān)題

  1. 在審計(jì)某一開(kāi)源項(xiàng)目的代碼時(shí),假設(shè)有下面一個(gè)foo()子函數(shù)的實(shí)現(xiàn)。從安全的角度看,會(huì)存在安全漏洞嗎?有的話(huà),請(qǐng):
    (1)描述漏洞細(xì)節(jié);
    (2)說(shuō)明可以利用的方法;
    (3)還有該怎么修補(bǔ)漏洞。沒(méi)有的話(huà),也請(qǐng)說(shuō)明為什么。
int foo( (void*funcp)() ){
     char * ptr = pointer_to_an_array;
     char  buf[128];
     gets(buf);
     strncpy(ptr, buf, 8);
     (*funcp)();
}
  1. 編寫(xiě)一個(gè)函數(shù)求一個(gè)數(shù)組中的第二大數(shù)。
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀(guān)點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容