午夜精品福利视频,亚洲激情专区,免费看a网站,aa毛片,亚洲色图激情小说,亚洲一级毛片,免费一级毛片一级毛片aa

C++筆試5 騰訊

時(shí)間:2024-08-26 06:26:29 學(xué)人智庫 我要投稿
  • 相關(guān)推薦

C++筆試(5) 騰訊

C++這個(gè)詞在中國大陸的程序員圈子中通常被讀做“C加加”,而西方的程序員通常讀做“C plus plus”,“CPP”。 它是一種使用非常廣泛的計(jì)算機(jī)編程語言。C++是一種靜態(tài)數(shù)據(jù)類型檢查的、支持多重編程范式的通用程序設(shè)計(jì)語言。它支持過程化程序設(shè)計(jì)、數(shù)據(jù)抽象、面向?qū)ο蟪绦蛟O(shè)計(jì)、泛型程序設(shè)計(jì)等多種程序設(shè)計(jì)風(fēng)格。最新正式標(biāo)準(zhǔn)C++于2014年8月18日公布。其編程領(lǐng)域眾廣,常用于系統(tǒng)開發(fā),引擎開發(fā)等應(yīng)用領(lǐng)域,是至今為止最受廣大程序員受用的最強(qiáng)大編程語言之一,支持類:類、封裝、重載等特性!

C++筆試(5) 騰訊

概念簡(jiǎn)介

C++這個(gè)詞在中國大陸的程序員圈子中通常被讀做“C加加”,而西方的程序員通常讀做“C plus plus”,“CPP”。 它是一種使用非常廣泛的計(jì)算機(jī)編程語言。C++是一種靜態(tài)數(shù)據(jù)類型檢查的、支持多重編程范式的通用程序設(shè)計(jì)語言。它支持過程化程序設(shè)計(jì)、數(shù)據(jù)抽象、面向?qū)ο蟪绦蛟O(shè)計(jì)、泛型程序設(shè)計(jì)等多種程序設(shè)計(jì)風(fēng)格。

發(fā)展歷程

在C的基礎(chǔ)上,一九八三年由貝爾實(shí)驗(yàn)室的Bjarne Strou-strup推出了C++。 C++進(jìn)一步擴(kuò)充和完善了C語言,成為一種面向 對(duì)象的程序設(shè)計(jì)語言。C++目前流行的編譯器

最新版本是Borland C++4.5,Symantec C++6.1,和Microsoft VisualC++ 2012。C++提出了一些更為深入的概念,它所支持的這些面向?qū)ο蟮母拍钊菀讓栴}空間直接地映射到程序空間,為程序員提供了一種與傳統(tǒng)結(jié)構(gòu)程序設(shè)計(jì)不同的思維方式和編程方法。因而也增加了整個(gè)語言的復(fù)雜性,掌握起來有一定難度。

C++由美國AT&T貝爾實(shí)驗(yàn)室的本賈尼斯特勞斯特盧普博士在20世紀(jì)80年代初期發(fā)明并實(shí)現(xiàn)(最初這種語言被稱作“C with Classes”帶類的C)。開始,C++是作為C語言的增強(qiáng)版出現(xiàn)的,從給C語言增加類開始,不斷的增加新特性。虛函數(shù)(virtual function)、運(yùn)算符重載(operator overloading)、多重繼承(multiple inheritance)、模板(template)、異常(exception)、RTTI、命名空間(name space)逐漸被加入標(biāo)準(zhǔn)。

語言特點(diǎn)

優(yōu)點(diǎn)

C++代碼 C++設(shè)計(jì)成靜態(tài)類型、和C同樣高效且可移植的多用途程序設(shè)計(jì)語言。

C++設(shè)計(jì)成直接的和廣泛的支持多種程序設(shè)計(jì)風(fēng)格(程序化程序設(shè)計(jì)、資料抽象化、面向?qū)ο蟪绦蛟O(shè)計(jì)、泛型程序設(shè)計(jì))。

C++設(shè)計(jì)成給程序設(shè)計(jì)者更多的選擇,即使可能導(dǎo)致程序設(shè)計(jì)者選擇錯(cuò)誤。

C++設(shè)計(jì)成盡可能與C兼容,借此提供一個(gè)從C到C++的平滑過渡。

C++避免平臺(tái)限定或沒有普遍用途的特性。

C++不使用會(huì)帶來額外開銷的特性。

C++設(shè)計(jì)成無需復(fù)雜的程序設(shè)計(jì)環(huán)境。

出于保證語言的簡(jiǎn)潔和運(yùn)行高效等方面的考慮,C++的很多特性都是以庫(如STL)或其他的形式提供的,而沒有直接添加到語言本身里。關(guān)于此類話題,Bjarne Stroustrup的《C++語言的設(shè)計(jì)和演化》(1994)里做了詳盡的陳述。

C++在一定程度上可以和C語言很好的結(jié)合,甚至目前大多數(shù)C語言程序是在C++的集成開發(fā)環(huán)境中完成的。C++相對(duì)眾多的面向?qū)ο蟮恼Z言,具有相當(dāng)高的性能。

C++引入了面向?qū)ο蟮母拍,使得開發(fā)人機(jī)交互類型的應(yīng)用程序更為簡(jiǎn)單、快捷。很多優(yōu)秀的程序框架包括MFC、QT、wxWidgets就是使用的C++。

1 計(jì)算 a^b << 2 (運(yùn)算符優(yōu)先級(jí)問題)

int a = 2;

int b = 1;

int c = 2;

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

6

2 根據(jù)先序中序求后序

3 a[3][4]哪個(gè)不能表示 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)

會(huì)出現(xiàn)什么問題

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

5 for(i=0;i<10;++i,sum+=i);的運(yùn)行結(jié)果

int i, sum = 0;

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

cout << sum;

55

6 10個(gè)數(shù)順序插入查找二叉樹,元素62的比較次數(shù)

7 10個(gè)數(shù)放入模10hash鏈表,最大長(zhǎng)度是多少

8 fun((exp1,exp2),(exp3,exp4,exp5))有幾個(gè)實(shí)參

2個(gè),逗號(hào)運(yùn)算符,

9 希爾 冒泡 快速 插入 哪個(gè)平均速度最快

10 二分查找是 順序存儲(chǔ) 鏈存儲(chǔ) 按value有序中的哪些

11 順序查找的平均時(shí)間

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

都是4

13 頻繁的插入刪除操作使用什么結(jié)構(gòu)比較合適,鏈表還是數(shù)組

鏈表

14 enum的聲明方式

enum A{

a1,

a2,

a3,

};

15 1-20的兩個(gè)數(shù)把和告訴A,積告訴B,A說不知道是多少,

B也說不知道,這時(shí)A說我知道了,B接著說我也知道了,問這兩個(gè)數(shù)是多少

大題:

1 把字符串轉(zhuǎn)換為小寫,不成功返回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 把字符串轉(zhuǎn)換為整數(shù) 例如:"-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下調(diào)試core的命令,察看堆棧狀態(tài)命令

2 寫出socks套接字 服務(wù)端 客戶端 通訊程序

3 填空補(bǔ)全程序,按照我的理解是添入:win32調(diào)入dll的函數(shù)名

查找函數(shù)入口的函數(shù)名 找到函數(shù)的調(diào)用形式

把formView加到singledoc的聲明 將singledoc加到app的聲明

4 有關(guān)系 s(sno,sname) c(cno,cname) sc(sno,cno,grade)

1 問上課程 "db"的學(xué)生no

2 成績(jī)最高的學(xué)生號(hào)

3 每科大于90分的人數(shù)

2005年騰訊招聘

選擇題(60)

c/c++ os linux 方面的基礎(chǔ)知識(shí) c的Sizeof函數(shù)有好幾個(gè)!

程序填空(40)

1.(20) 4空x5

不使用額外空間,將 A,B兩鏈表的元素交叉歸并

2.(20) 4空x5

MFC 將樹序列化 轉(zhuǎn)存在數(shù)組或 鏈表中!

發(fā)信人: ChinaOfey (勇敢的傻,傻得勇敢), 信區(qū): Career_Plaza

標(biāo) 題: 騰訊筆試題

發(fā)信站: 水木社區(qū) (Sat Nov 5 16:25:25 2005), 站內(nèi)

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

第一部分:基本都是數(shù)據(jù)結(jié)構(gòu)題+1,2道操作系統(tǒng)和數(shù)據(jù)庫相關(guān)的(比較基本)

有印象的:

1,為節(jié)省空間,兩個(gè)棧共用一個(gè)空間,棧底在兩邊,問什么時(shí)候表明空間用完

答案:棧頂相遇時(shí)

這道題就是很基礎(chǔ)的一個(gè)題目,因?yàn)槭堑谝坏李},所以印象比較深^_^

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

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

5,4,4

3,爸爸,媽媽,妹妹,小強(qiáng),至少兩個(gè)人同一生肖的概率是多少

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

然后還有幾個(gè)看程序給結(jié)果的題,考察了類,指針的內(nèi)容

第二部分:程序填空

主要要能看出他的思路

第三部分:寫代碼

1,關(guān)于mfc的,一個(gè)控件,顯示時(shí)間,1s鐘刷新一次

2,SQL語言進(jìn)行簡(jiǎn)單的數(shù)據(jù)庫操作,建表,查詢,求平均工資等

不記得語言了,因此只好自創(chuàng)....ft

3,Unix進(jìn)程通信有哪些方式,各有什么特點(diǎn)?

(其中A卷給的是道網(wǎng)絡(luò)編程題目)

第四部分:主觀題

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

程序4說明]

設(shè) M 叉樹采用列表法表示,即每棵子樹對(duì)應(yīng)一個(gè)列表,列表的結(jié)構(gòu)為:子樹根結(jié)點(diǎn)的值部分

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

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

本程序輸入列表,生成一棵 M 叉樹,并由 M 叉樹輸出列表。假定輸入無錯(cuò)誤。

[程序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 ) ;

}

有兩個(gè)集合

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

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

兩個(gè)集合都是10萬個(gè)數(shù)據(jù)(已排序),要求寫一個(gè)算法,判斷B是不是A的子集,算法時(shí)間復(fù)雜度為Q(N)

[C++筆試(5) 騰訊]

【C++筆試5 騰訊】相關(guān)文章:

騰訊筆試經(jīng)驗(yàn)分享06-25

騰訊筆試題目及答案06-21

騰訊產(chǎn)品廣州筆試經(jīng)驗(yàn)精選08-23

騰訊運(yùn)營筆試題目10-03

騰訊C++方向程序員面試07-21

聯(lián)想C++筆試題08-28

騰訊HR崗筆試經(jīng)驗(yàn)分享09-16

騰訊軟件測(cè)試筆試題08-03

騰訊產(chǎn)品廣州筆試經(jīng)驗(yàn)分享08-19

騰訊校招在線筆試題目07-20