閱讀屋>筆試> tencent騰訊 筆試題

tencent騰訊 筆試題

tencent騰訊 筆試題

[轉]tencent騰訊筆試題

基本都是基礎題目,看來騰訊不準備放棄那些有思想但是還沒有開始苦練基本功的人,只涉及到語言問題和簡單的

資料結構,其他的作業系統,編譯原理,離散數學,軟體工程,計算機原理,體系結構等等無一涉及,題目很多,

題號不與原試題相符,經過幾天的冥思苦想,現已補全 希望師弟師妹可以探討探討答案,從中學到筆試的經驗

宣告:以下問題僅供本校園網校內師弟師妹為了考察自己學習的參考,不要傳播

1 計算 a^b << 2 (運算子優先順序問題)

int a = 2;

int b = 1;

int c = 2;

cout << (a ^ b << c);

6

2 根據先序中序求後序

3 a[3][4]哪個不能表示 a[1][1]: *(&a[0][0]) *(*(a+1)+1) *(&a[1]+1) *(&a[0][0]+4)

cout << *(&a[1][1]) << endl

<<*(*(a+1)+1) << endl

<< *(&a[1]+1) << endl

<< *(&a[0][0]+4);

6

6

0012FEC8

5

4 for(int i...)

for(int j...)

printf(i,j);

printf(j)

會出現什麼問題

J沒有定義,不在其作用域

5 for(i=0;i<10;++i,sum+=i);的執行結果

int i, sum = 0;

for(i=0;i<10;++i,sum+=i);

cout << sum;

55

6 10個數順序插入查詢二叉樹,元素62的比較次數

7 10個數放入模10hash連結串列,最大長度是多少

8 fun((exp1,exp2),(exp3,exp4,exp5))有幾個實參

2個,逗號運算子,

9 希爾 冒泡 快速 插入 哪個平均速度最快

10 二分查詢是 順序儲存 鏈儲存 按value有序中的哪些

11 順序查詢的平均時間

12 *p=NULL *p=new char[100] sizeof(p)各為多少

都是4

13 頻繁的插入刪除操作使用什麼結構比較合適,連結串列還是陣列

連結串列

14 enum的`宣告方式

enum A{

a1,

a2,

a3,

};

15 1-20的兩個數把和告訴A,積告訴B,A說不知道是多少,

B也說不知道,這時A說我知道了,B接著說我也知道了,問這兩個數是多少

大題:

1 把字串轉換為小寫,不成功返回NULL,成功返回新串

char* toLower(char* sSrcStr)

{

char* sDest= NULL;

if( __1___)

{

int j;

sLen = strlen(sSrcStr);

sDest = new [_______2_____];

if(*sDest == NULL)

return NULL;

sDest[sLen] = ;

while(_____3____)

sDest[sLen] = toLowerChar(sSrcStr[sLen]);

}

return sDest;

}

char toLowerChar(char a)

{

if(a >= A && a <= Z)

return a - A + a;

}

char* toLower(char* sSrcStr)

{

char* sDest= NULL;

if(sSrcStr)

{

int j;

int sLen = strlen(sSrcStr);

sDest = new char[sLen + 1];

if(*sDest == NULL)

return NULL;

sDest[sLen] = ;

while(sLen--)

sDest[sLen] = toLowerChar(sSrcStr[sLen]);

}

return sDest;

}

2 把字串轉換為整數 例如:"-123" -> -123

main()

{

.....

if( *string == - )

n = ____1______; -1* num(string+1)

else

n = num(string);

.....

}

int num(char* string)

{

for(;!(*string==0);string++)

{

int k;

k = __2_____; *string

j = --sLen;

while( __3__) j--

k = k * 10;

num = num + k;

}

return num;

}

附加題:

1 linux下除錯core的命令,察看堆疊狀態命令

2 寫出socks套接字 服務端 客戶端 通訊程式

3 填空補全程式,按照我的理解是添入:win32調入dll的函式名

查詢函式入口的函式名 找到函式的呼叫形式

把formView加到singledoc的宣告 將singledoc加到app的宣告

4 有關係 s(sno,sname) c(cno,cname) sc(sno,cno,grade)

1 問上課程 "db"的學生no

2 成績最高的學生號

3 每科大於90分的人數

2005年騰訊招聘

選擇題(60)

c/c++ os linux 方面的基礎知識 c的Sizeof函式有好幾個!

程式填空(40)

1.(20) 4空x5

不使用額外空間,將 A,B兩連結串列的元素交叉歸併

2.(20) 4空x5

MFC 將樹序列化 轉存在陣列或 連結串列中!

發信人: ChinaOfey (勇敢的傻,傻得勇敢), 信區: Career_Plaza

標 題: 騰訊筆試題

發信站: 水木社群 (Sat Nov 5 16:25:25 2005), 站內

希望明年的兄弟有用!(B卷)

第一部分:基本都是資料結構題+1,2道作業系統和資料庫相關的(比較基本)

有印象的:

1,為節省空間,兩個棧共用一個空間,棧底在兩邊,問什麼時候表明空間用完

答案:棧頂相遇時

這道題就是很基礎的一個題目,因為是第一道題,所以印象比較深^_^

2,char A[5]; char* B ="abcdefg"; void * C; C = new char[100];

sizeof(A) sizeof(B) size(C)

5,4,4

3,爸爸,媽媽,妹妹,小強,至少兩個人同一生肖的機率是多少

1- 12*11*10*9/12*12*12*12 = 43% ,我忘用1減了....

然後還有幾個看程式給結果的題,考察了類,指標的內容

第二部分:程式填空

主要要能看出他的思路

第三部分:寫程式碼

1,關於mfc的,一個控制元件,顯示時間,1s鍾重新整理一次

2,SQL語言進行簡單的資料庫操作,建表,查詢,求平均工資等

不記得語言了,因此只好自創....ft

3,Unix程序通訊有哪些方式,各有什麼特點?

(其中A卷給的是道網路程式設計題目)

第四部分:主觀題

考rp的,比較無聊,手都寫酸了....

程式4說明]

設 M 叉樹採用列表法表示,即每棵子樹對應一個列表,列表的結構為:子樹根結點的值部分

(設為一個字元) 和用“( )”,括起來的各子樹的列表 (如有子樹的話) ,各子列表間用“

,”,分隔。例如下面的三叉樹可用列表 a( b( c,d ),e,f( g,h,i ))表示。

本程式輸入列表,生成一棵 M 叉樹,並由 M 叉樹輸出列表。假定輸入無錯誤。

[程式4]

#include〈stdio.h〉

#include〈stdlib.h〉

#define M 3

typedef struct node{ char val;

struct node *subTree[M];

} NODE;

char buf[255] ,*str = buf

NODE *d = NULL

NODE *mackTree( ) /*由列表生成M叉樹*/

{ int k; NODE *s ;

s = __(1)__

s -> val = *str++ ;

for ( k = 0 ; k < M ; k++ ) s-> subTree[k] = NULL ;

if(*str=( ){

k = 0;

do { str++;

s -> subTree[k] = __(2)__ ;

if ( *str == ) ) { str++; break ; }

k = k+l ;

} while ( __(3)__ );

}

return s ;

}

void walkTree( NODE *t ) /*由 M 叉樹輸出列表*/

{ int i ;

if( t != NULL ) {

__(4)__

if ( t -> subTree[0] == NULL ) return ;

putchar ( ( ) ;

for ( i = 0 ; i < m ; i++) {

__(5)__

if ( i! = M - l && t -> subTree[i+l] != NULL )

putchar ( , ) ;

}

putchar ( ) ) ;

}

}

void main( )

{ printf( "Enter exp:" ) ;

scanf( "%S" , str ) ;

d = makeTree() ;

walkTree( d ) ; put ) ;

}

有兩個集合

集合A{1,7,19,21,55,100。。。}

集合B{7,22,100。。。}

兩個集合都是10萬個資料(已排序),要求寫一個演算法,判斷B是不是A的子集,演算法時間複雜度為Q(N)

引文來源[轉]tencent騰訊筆試題 - 肖高輝s blog - 部落格園


【tencent騰訊 筆試題】相關文章: