1. <tt id="5hhch"><source id="5hhch"></source></tt>
    1. <xmp id="5hhch"></xmp>

  2. <xmp id="5hhch"><rt id="5hhch"></rt></xmp>

    <rp id="5hhch"></rp>
        <dfn id="5hhch"></dfn>

      1. 迅雷校園招聘筆試題

        時(shí)間:2023-02-10 17:45:09 筆試題目 我要投稿
        • 相關(guān)推薦

        迅雷2014校園招聘筆試題

          一、單選題(20題,每題2分)

        迅雷2014校園招聘筆試題

          1、有變量int i = 0; int a = i++; int b=++a; int c = a+b; 請問表達(dá)式 a?b:c 的值是()

          A、0 B、1 C、2 D、3

          2、32位環(huán)境下,int *p=new int[10];請問sizeof(p)的值為()

          A、4 B、10 C、40 D、8

          3、有語句char str[] = "abcde";請問表達(dá)式sizeof(str)的值是() 后面還有\(zhòng)0

          A、1 B、4 C、5 D、6

          4、有函數(shù)int func(int i)的實(shí)現(xiàn)為()

          int func(int i)

          {

          if(i > 1)

          return i*func(i-1);

          else

          return 1;

          }

          int func(int i)

          {

          if(i > 1)

          return i*func(i-1);

          else

          return 1;

          }

          請問函數(shù)調(diào)用f(5)的返回值是多少()階乘計(jì)算

          A、5 B、15 C、20 D、120

          5、請問以下說法,哪個(gè)是正確的()

          A、每個(gè)類都有一個(gè)無參數(shù)的構(gòu)造函數(shù)

          B、每個(gè)類都有一個(gè)拷貝構(gòu)造函數(shù)

          C、每個(gè)類能有多個(gè)構(gòu)造函數(shù)

          D、每個(gè)類能有多個(gè)析構(gòu)函數(shù)

          6、用class關(guān)鍵字定義的類,其成員默認(rèn)的訪問屬性為()

          A、private B、protected C、public D、無定義

          7、類的成員有三種訪問屬性,分別是public、protected、private,子類能夠訪問的成員是()

          A、都能訪問

          B、public和protected

          C、public和private

          D、protected和private

          8、請問對一個(gè)排好序的數(shù)組進(jìn)行查找,時(shí)間復(fù)雜度為()

          A、O(n) B、O(lgn) C、O(nlgn) D、O(1)

          9、以下二叉樹:

          后序遍歷的結(jié)果是()

          A、丙乙丁甲戊己 B、甲乙丙丁戊己 C、丙丁乙己戊甲 D、丙丁己乙戊甲

          10、看以下代碼:

          A *pa = new A[10];

          delete pa;

          則類A的構(gòu)造函數(shù)和析構(gòu)函數(shù)分別執(zhí)行了幾次()

          A、1 1 B、10 10 C、1 10 D、10 1

          11、看以下代碼:

          class A

          {

          public:

          ~A();

          };

          A::~A()

          {

          printf("delete A ");

          }

          class B : public A

          {

          public:

          ~B();

          };

          B::~B()

          {

          printf("delete B ");

          }

          class A

          {

          public:

          ~A();

          };

          A::~A()

          {

          printf("delete A ");

          }

          class B : public A

          {

          public:

          ~B();

          };

          B::~B()

          {

          printf("delete B ");

          }

          請問執(zhí)行以下代碼

          A *pa = new B();

          delete pa;

          輸出的串是()A

          A、delete A B、delete B C、delete B delete A D、delete A delete B

          12、文件長度是一個(gè)大于0的整數(shù),用變量unsigned file_length; 來表示,把文件分成塊,每塊的長度也是一個(gè)大于0的整數(shù),用變量unsigned block_length; 來表示,則文件被分成的塊數(shù)為()

          A、file_length/block_length B、file_length/block_length+1

          C、(file_length+block_length-1)/block_length D、((file_length-1)/block_length+1

          13、整數(shù)int i = 0xFE78DA45; int k = 0xAC3189B2;則i^k的值為()

          A、0x524953f7 B、0xAC308800 C、0xFE79DBF7 D、0X0000001

          14、看以下代碼:

          class parent

          {

          public:

          virtual void output();

          };

          void parent::output()

          {

          printf("parent!");

          }

          class son : public parent

          {

          public:

          virtual void output();

          };

          void son::output()

          {

          printf("son!");

          }

          class parent

          {

          public:

          virtual void output();

          };

          void parent::output()

          {

          printf("parent!");

          }

          class son : public parent

          {

          public:

          virtual void output();

          };

          void son::output()

          {

          printf("son!");

          }

          則以下程序段:

          son s;

          ::memset(&s , 0 , sizeof(s));

          parent& p = s;

          p.output();

          執(zhí)行結(jié)果是()

          A、parent! B、son! C、son!parent! D、沒有輸出結(jié)果,程序運(yùn)行出錯(cuò)

          15、函數(shù)的局部變量所需存儲(chǔ)空間,是在哪里分配的()

          A、進(jìn)程的數(shù)據(jù)段 B、進(jìn)程的棧上 C、進(jìn)程的堆上 D、以上都可以

          16、以下STL的容器存放的數(shù)據(jù),哪個(gè)肯定是排好序的()

          A、vector B、deque C、list D、map

          17、int a[][3]={{1},{3,2},{6,7,8},{9}};中a[2][1]的值是()

          A、3 B、6 C、2 D、7

          18、以下關(guān)于頭文件,說法正確的是()

          A、#include,編譯器尋找頭文件時(shí),會(huì)從當(dāng)前編譯的源文件所在的目錄去找

          B、#include“filename.h”,編譯器尋找頭文件時(shí),會(huì)從通過編譯選項(xiàng)指定的目錄去找

          C、多個(gè)源文件同時(shí)用到的全局整數(shù)變量,它的聲明和定義都放在頭文件中,是好的編程習(xí)慣

          D、在大型項(xiàng)目開發(fā)中,把所有自定義的數(shù)據(jù)類型、全局變量、函數(shù)聲明都放在一個(gè)頭文件中,各個(gè)源文件都只需要包含這個(gè)頭文件即可,省去了要寫很多#include語句的麻煩,是好的編程習(xí)慣。

          19、某棵完全二叉樹上有699個(gè)節(jié)點(diǎn),則該二叉樹的葉子節(jié)點(diǎn)數(shù)為()

          A、349 B、350 C、188 D、187

          n0=n2+1;

          n=n0+n1+n2=n0+n1+n0-1=699

          由于完全二叉樹中度為1的節(jié)點(diǎn)只有0個(gè)或1個(gè)兩種情況,所以,將0或1帶入上面公式,整理后得: n0=(n+1)/2或者n0=n/2; 看看n是否能被2整除,能則用n0=n/2。否則用n0=(n+1)/2 既葉子節(jié)點(diǎn)為n0=(n+1)/2=350

          20、在一個(gè)指向字符串的指針char *p_str,要把字符串中第4個(gè)字符的值改為'a',正確的做法是()

          A、p_str[3]='a' B、*(ptr+3)='a' C、p_str[4]='a' D、*(ptr+4)='a'

          二、多選題(10題,每題3分,錯(cuò)選漏選都不得分)

          1、已知一段文本有1382個(gè)字符,使用了1382個(gè)字節(jié)進(jìn)行存儲(chǔ),這段文本全部是由a、b、c、d、e這5個(gè)字符組成,a出現(xiàn)了354次,b出現(xiàn)了483次,c出現(xiàn)了227次,d出現(xiàn)了96次,e出現(xiàn)了232次,對這5個(gè)字符使用哈夫曼(Huffman)算法進(jìn)行編碼,則以下哪些說法正確()

          A、使用哈夫曼算法編碼后,用編碼值來存儲(chǔ)這段文本將花費(fèi)最少的存儲(chǔ)空間

          B、使用哈夫曼算法進(jìn)行編碼,a、b、c、d、e這5個(gè)字符對應(yīng)的編碼值是唯一確定的

          C、使用哈夫曼算法進(jìn)行編碼,a、b、c、d、e這5個(gè)字符對應(yīng)的編碼值可以有多套,但每個(gè)字符編碼的位(bit)數(shù)是確定的

          D、b這個(gè)字符的哈夫曼編碼值位數(shù)應(yīng)該最短,d這個(gè)字符的哈夫曼編碼值位數(shù)應(yīng)該最長

          2、下列表達(dá)式中,不合法的是()

          已知:double d = 3.2; int n = 3;

          A、d<<2;

          B、d/n

          C、!d && (n-3)

          D、(d-0.2)|n

          3、下面描述正確的是()

          A、while循環(huán)語句的循環(huán)體至少執(zhí)行1次

          B、do-while循環(huán)可以寫成while循環(huán)的格式

          C、continue語句可以出現(xiàn)在各種循環(huán)體中

          D、break語句不可以出現(xiàn)在循環(huán)體內(nèi)

          4、關(guān)于內(nèi)聯(lián)函數(shù)正確的是()

          A、類的私有成員函數(shù)不能作為內(nèi)聯(lián)函數(shù)

          B、在所有類說明中內(nèi)部定義的成員函數(shù)都是內(nèi)聯(lián)函數(shù)

          C、類的保護(hù)成員函數(shù)不能作為內(nèi)聯(lián)函數(shù)

          D、使用內(nèi)聯(lián)函數(shù)的地方會(huì)在運(yùn)行階段用內(nèi)聯(lián)函數(shù)體替換掉

          5、下面模板聲明中,哪些是非法的()

          A、templateclass C1;

          B、templateclass C2;

          C、templateclass C3{};

          D、templateclass C4{};

          6、在使用瀏覽器打開一個(gè)網(wǎng)頁的過程中,瀏覽器會(huì)使用的網(wǎng)絡(luò)協(xié)議包括()

          A、DNS B、TCP C、HTTP D、Telnet

          7、下面屬于構(gòu)造散列函數(shù)的方法是()

          A、直接定址法

          B、數(shù)字分析法

          C、乘余取整法

          D、平方取中法

          8、拷貝構(gòu)造函數(shù)的特點(diǎn)是()

          A、該函數(shù)名同類名,也是一種構(gòu)造函數(shù),該函數(shù)返回自身引用

          B、該函數(shù)只有一個(gè)參數(shù),必須是對某個(gè)對象的引用

          C、每個(gè)類都必須有一個(gè)拷貝初始化構(gòu)造函數(shù),如果類中沒有說明拷貝構(gòu)造函數(shù),則編譯器系統(tǒng)會(huì)自動(dòng)生成一個(gè)缺省拷貝構(gòu)造函數(shù),作為該類的保護(hù)成員

          D、拷貝初始化構(gòu)造函數(shù)的作用是將一個(gè)已知對象的數(shù)據(jù)成員值拷貝給正在創(chuàng)建的另一個(gè)同類的對象

          9、下列關(guān)于虛函數(shù)的說法正確的是()

          A、在構(gòu)造函數(shù)中調(diào)用類自己的虛函數(shù),虛函數(shù)的動(dòng)態(tài)綁定機(jī)制還會(huì)生效。

          B、在析構(gòu)函數(shù)中調(diào)用類自己的虛函數(shù),虛函數(shù)的動(dòng)態(tài)綁定機(jī)制還會(huì)生效。

          C、靜態(tài)函數(shù)不可以是虛函數(shù)

          因?yàn)殪o態(tài)成員函數(shù)沒有this,也就沒有存放vptr的地方,同時(shí)其函數(shù)的指針存放也不同于一般的成員函數(shù),其無法成為一個(gè)對象的虛函數(shù)的指針以實(shí)現(xiàn)由此帶來的動(dòng)態(tài)機(jī)制。靜態(tài)是編譯時(shí)期就必須確定的,虛函數(shù)是運(yùn)行時(shí)期確定的。

          D、虛函數(shù)可以聲明為inline

          inline函數(shù)和virtual函數(shù)有著本質(zhì)的區(qū)別,inline函數(shù)是在程序被編譯時(shí)就展開,在函數(shù)調(diào)用處用整個(gè)函數(shù)體去替換,而virtual函數(shù)是在運(yùn)行期才能夠確定如何去調(diào)用的,因而inline函數(shù)體現(xiàn)的是一種編譯期機(jī)制,virtual函數(shù)體現(xiàn)的是一種運(yùn)行期機(jī)制。

          因此,內(nèi)聯(lián)函數(shù)是個(gè)靜態(tài)行為,而虛函數(shù)是個(gè)動(dòng)態(tài)行為,他們之間是有矛盾的。

          函數(shù)的inline屬性是在編譯時(shí)確定的, 然而,virtual的性質(zhì)則是在運(yùn)行時(shí)確定的,這兩個(gè)不能同時(shí)存在,只能有一個(gè)選擇,文件中聲明inline關(guān)鍵字只是對編譯器的建議,編譯器是否采納是編譯器的事情。

          我并不否認(rèn)虛函數(shù)也同樣可以用inline來修飾,但你必須使用對象來調(diào)用,因?yàn)閷ο笫菦]有所謂多態(tài)的,多態(tài)只面向行為或者方法,但是C++編譯器,無法保證一個(gè)內(nèi)聯(lián)的虛函數(shù)只會(huì)被對象調(diào)用,所以一般來說,編譯器將會(huì)忽略掉所有的虛函數(shù)的內(nèi)聯(lián)屬性。

          相關(guān)知識點(diǎn):什么函數(shù)不能聲明為虛函數(shù)?

          一個(gè)類中將所有的成員函數(shù)都盡可能地設(shè)置為虛函數(shù)總是有益的。

          設(shè)置虛函數(shù)須注意:

          1:只有類的成員函數(shù)才能說明為虛函數(shù);

          2:靜態(tài)成員函數(shù)不能是虛函數(shù);

          3:內(nèi)聯(lián)函數(shù)不能為虛函數(shù);

          4:構(gòu)造函數(shù)不能是虛函數(shù);

          5:析構(gòu)函數(shù)可以是虛函數(shù),而且通常聲明為虛函數(shù)。

          10、下列對函數(shù)double add(int a , int b)進(jìn)行重載,正確的是()

          A、int add(int a ,int b ,int c)

          B、int add(double a , double b)

          C、double add(double a , double b)

          D、int add(int a , int b)

          三、填空題(15空,每空2分)

          1、以下代碼是用來計(jì)算100以內(nèi)的素?cái)?shù)的個(gè)數(shù),請把相應(yīng)的空填上。

          [cpp] view plaincopyprint?struct prime_number_node

          {

          int prime_number;

          prime_number_node* next;

          };

          int calc_prime_number()

          {

          prime_number_node* list_head = new prime_number_node();

          list_head->next = NULL;

          list_head->prime_number = 2;

          prime_number_node* list_tail = list_head;

          for(int number = 3 ; number < 100 ; number++)

          {

          int remainder;

          prime_number_node* cur_node_ptr = list_head;

          while(cur_node_ptr != NULL)

          {

          remainder = number%cur_node_ptr->prime_number;

          if(remainder == 0)

          {

          //1

          }

          else

          {

          //2

          }

          }

          if(remainder != 0)

          {

          prime_number_node* new_node_ptr = new prime_number_node();

          new_node_ptr->prime_number = number;

          new_node_ptr->next = NULL;

          list_tail->next = new_node_ptr;

          //3

          }

          }

          int result = 0;

          while(list_head != NULL)

          {

          result++;

          prime_number_node* temp_ptr = list_head;

          list_head = list_head->next;

          //4

          }

          return result;

          }

          struct prime_number_node

          {

          int prime_number;

          prime_number_node* next;

          };

          int calc_prime_number()

          {

          prime_number_node* list_head = new prime_number_node();

          list_head->next = NULL;

          list_head->prime_number = 2;

          prime_number_node* list_tail = list_head;

          for(int number = 3 ; number < 100 ; number++)

          {

          int remainder;

          prime_number_node* cur_node_ptr = list_head;

          while(cur_node_ptr != NULL)

          {

          remainder = number%cur_node_ptr->prime_number;

          if(remainder == 0)

          {

          //1

          }

          else

          {

          //2

          }

          }

          if(remainder != 0)

          {

          prime_number_node* new_node_ptr = new prime_number_node();

          new_node_ptr->prime_number = number;

          new_node_ptr->next = NULL;

          list_tail->next = new_node_ptr;

          //3

          }

          }

          int result = 0;

          while(list_head != NULL)

          {

          result++;

          prime_number_node* temp_ptr = list_head;

          list_head = list_head->next;

          //4

          }

          return result;

          }1、2、3、4四行代碼依次為:break;

          cur_node_ptr = cur_node_ptr->next;

          list_tail = list_tail->next;

          delete temp_ptr;

          2、已知集合A和B的元素分別用不含頭結(jié)點(diǎn)的單鏈表存儲(chǔ),函數(shù)difference()用于求解集合A與B的差集,并將結(jié)果保存在集合A的單鏈表中。例如,若集合A={5,10,20,15,25,30},集合B={5,15,35,25},完成計(jì)算后A={10,20,30}。

          鏈表結(jié)點(diǎn)的結(jié)構(gòu)類型定義如下:

          [cpp] view plaincopyprint?struct node

          {

          int elem;

          node* next;

          };

          void difference(node** LA , node* LB)

          {

          node *pa , *pb , *pre , *q;

          pre = NULL;

          //1

          while(pa)

          {

          pb = LB;

          while( ) //2

          pb = pb->next;

          if( ) //3

          {

          if(!pre)

          *LA = ; //4

          else

          = pa->next; //5

          q = pa;

          pa = pa->next;

          free(q);

          }

          else

          {

          ; //6

          pa = pa->next;

          }

          }

          }

          struct node

          {

          int elem;

          node* next;

          };

          void difference(node** LA , node* LB)

          {

          node *pa , *pb , *pre , *q;

          pre = NULL;

          //1

          while(pa)

          {

          pb = LB;

          while( ) //2

          pb = pb->next;

          if( ) //3

          {

          if(!pre)

          *LA = ; //4

          else

          = pa->next; //5

          q = pa;

          pa = pa->next;

          free(q);

          }

          else

          {

          ; //6

          pa = pa->next;

          }

          }

          }1、2、3、4、5、6六行代碼依次為

          pa = *LA;

          pb && pa->elem != pb->elem

          pb

          pa->next

          pre->next

          pre = pa;

          代碼中的指針pa用于指向集合A的元素;pb指向集合B的元素;臨時(shí)指針q指向需要被刪除的元素;pre用于實(shí)現(xiàn)刪除時(shí)結(jié)點(diǎn)的鏈接,與pa保持所指結(jié)點(diǎn)的前后繼關(guān)系。

        【迅雷校園招聘筆試題】相關(guān)文章:

        2015迅雷校園招聘筆試題08-04

        迅雷2011.10.21筆試題08-10

        迅雷筆試題精選07-31

        2010迅雷筆試題07-18

        迅雷網(wǎng)絡(luò)技術(shù)筆試題09-19

        名企校園招聘筆試題08-24

        58同城校園招聘筆試題07-26

        2014保利校園招聘筆試題07-22

        南方報(bào)業(yè)校園招聘筆試題07-09

        国产高潮无套免费视频_久久九九兔免费精品6_99精品热6080YY久久_国产91久久久久久无码

        1. <tt id="5hhch"><source id="5hhch"></source></tt>
          1. <xmp id="5hhch"></xmp>

        2. <xmp id="5hhch"><rt id="5hhch"></rt></xmp>

          <rp id="5hhch"></rp>
              <dfn id="5hhch"></dfn>