歡迎訪問拔筆兔范文大全網(wǎng)!

C語言開發(fā)工程師筆試題

天下 分享 時(shí)間: 加入收藏 我要投稿 點(diǎn)贊

C語言之所以命名為C,是因?yàn)镃語言源自Ken Thompson發(fā)明的B語言,而B語言則源自BCPL語言。下面小編給大家分享C語言開發(fā)工程師筆試題的內(nèi)容,希望能夠幫助大家,歡迎閱讀!

C語言開發(fā)工程師筆試題

1、改錯(cuò)

如下程序能不能正確輸出,如果不能,讓他正確輸出hello字符串。

void New(char 星符號(hào) p) { p = new char[5]; } void main { char星符號(hào) p = NULL; New(p); strcpy(p, "hello"); printf("%s", p); }

2、排列算法

一個(gè)數(shù)組{3,4,5,6,3},請(qǐng)輸出這個(gè)數(shù)組的全排列,比如34563、43563、33456...。

#include

#include

template

void Print(T星符號(hào) tArray, int iSize)

{

for(int i = 0; i < iSize; ++i)

{

std::cout << tArray[i] << ' ';

}

std::cout << std::endl;

}

template

void Permutation(T星符號(hào) tArray, int iSize)

{

int星符號(hào) iIndex = new int[iSize + 1];

for(int i = 0; i < iSize; ++i)

{

iIndex [i] = iSize - i;

}

Print(tArray, iSize);

for(int i = iSize - 1; i > 0; )

{

-- iIndex [i];

--i;

int j = iSize - 1;

do

{

if(tArray[j--] != tArray[i++])

{

std::swap(tArray[j--], tArray[i++]);

}

}while(j > i);

Print(tArray, iSize);

i = iSize - 1;

for(;iIndex [i] == 0; --i)

{

iIndex [i] = iSize - i;

}

}

delete iIndex;

}

int main

{

int a = {3,4,5,6,3};

Permutation(a,5);

}

C++開發(fā)工程師筆試題篇

1、數(shù)據(jù)結(jié)構(gòu)

在二叉樹中找出和為某一輸入值的所有路徑。

#include

void getPath(struct treeNode星符號(hào) node, int sum, vector& stack, int currentSum) { //stack用來存放路徑,sum為輸入值

} if (node == NULL) return; currentSum += node->id; stack.push_back(node->id); if (node->lchild != NULL) getPath(node->lchild, sum, stack, currentSum); if (node->rchild != NULL) getPath(node->rchild, sum, stack, currentSum); if (node->lchild == NULL && node->rchild == NULL) { if (currentSum == sum) { vector::iterator it = stack.begin; for (; it != stack.end; ++it) printf("%d ", 星符號(hào)it); printf("/n"); } } stack.pop_back;

2、編寫程序:如何獲得一個(gè)整數(shù)的二進(jìn)制表達(dá)中有多少個(gè)1?

C++開發(fā)工程師筆試題篇

1、編寫程序:在O(n)時(shí)間復(fù)雜度內(nèi)從數(shù)組array[0..n-1]中找出第k個(gè)最小的元素。 說明:算法可以對(duì)array中的元素進(jìn)行排序。

2、綜合考察:

銀行有個(gè)存有n個(gè)用戶編號(hào)的文件,每個(gè)數(shù)都小于n,其中n=10的7次方。每個(gè)編號(hào)都不重復(fù)。

? 輸出:n個(gè)數(shù)升序排列。

? 約束條件:內(nèi)存最多有2兆的空間,運(yùn)行時(shí)間復(fù)雜度為O(n)。

c++數(shù)據(jù)結(jié)構(gòu)算法面試筆試題篇

1請(qǐng)你分別劃劃OSI的七層網(wǎng)絡(luò)結(jié)構(gòu)圖,和TCP/IP的五層結(jié)構(gòu)圖?

2請(qǐng)你詳細(xì)的解釋一下IP協(xié)議的定義,在哪個(gè)層上面,主要有什么作用? TCP與UDP呢? UDP,TCP 在傳輸層,IP在網(wǎng)絡(luò)層, TCP/IP是英文Transmission Control Protocol/Internet Protocol的縮寫,意思是"傳輸控制協(xié)議/網(wǎng)際協(xié)議"。TCP/IP協(xié)議組之所以流行,部分原因是因?yàn)樗梢杂迷诟鞣N各樣的信道和底層協(xié)議(例如 T1和X.25、以太網(wǎng)以及RS-232串行接口)之上。確切地說,TCP/IP協(xié)議是一組包括TCP協(xié)議和IP協(xié)議,UDP(User Datagram Protocol)協(xié)議、ICMP(Internet Control Message Protocol)協(xié)議和其他一些協(xié)議的協(xié)議組。TCP/IP協(xié)議并不完全符合OSI的七層參考模型。傳統(tǒng)的開放式系統(tǒng)互連參考模型,是一種通信協(xié)議的7 層抽象的參考模型,其中每一層執(zhí)行某一特定任務(wù)。該模型的目的是使各種硬件在相同的層次上相互通信。這7層是:物理層、數(shù)據(jù)鏈路層、網(wǎng)路層、傳輸層、話路 層、表示層和應(yīng)用層。而TCP/IP通訊協(xié)議采用了4層的層級(jí)結(jié)構(gòu),每一層都呼叫它的下一層所提供的網(wǎng)絡(luò)來完成自己的需求。這4層分別為:

應(yīng)用層:應(yīng)用程序間溝通的層,如簡單電子郵件傳輸(SMTP)、文件傳輸協(xié)議(FTP)、網(wǎng)絡(luò)遠(yuǎn)程訪問協(xié)議(Telnet)等。

傳輸層:在此層中,它提供了節(jié)點(diǎn)間的數(shù)據(jù)傳送服務(wù),如傳輸控制協(xié)議(TCP)、用戶數(shù)據(jù)報(bào)協(xié)議(UDP)等,TCP和UDP給數(shù)據(jù)包加入傳輸數(shù)據(jù)并把它傳輸?shù)较乱粚又校@一層負(fù)責(zé)傳送數(shù)據(jù),并且確定數(shù)據(jù)已被送達(dá)并接收。

互連網(wǎng)絡(luò)層:負(fù)責(zé)提供基本的數(shù)據(jù)封包傳送功能,讓每一塊數(shù)據(jù)包都能夠到達(dá)目的主機(jī)(但不檢查是否被正確接收),如網(wǎng)際協(xié)議(IP)。

網(wǎng)絡(luò)接口層:對(duì)實(shí)際的網(wǎng)絡(luò)媒體的管理,定義如何使用實(shí)際網(wǎng)絡(luò)(如Ethernet、Serial Line等)來傳送數(shù)據(jù)。

Q3:請(qǐng)問交換機(jī)和路由器分別的實(shí)現(xiàn)原理是什么?分別在哪個(gè)層次上面實(shí)現(xiàn)的?

一 般意義上說交換機(jī)是工作在數(shù)據(jù)鏈路層。但隨著科技的發(fā)展,現(xiàn)在有了三層交換機(jī),三層交換機(jī)已經(jīng)擴(kuò)展到了網(wǎng)絡(luò)層。也就是說:它等于“數(shù)據(jù)鏈路層 + 部分網(wǎng)絡(luò)層”。交換機(jī)中傳的是幀。通過存儲(chǔ)轉(zhuǎn)發(fā)來實(shí)現(xiàn)的。路由器是工作在網(wǎng)絡(luò)層。路由器中傳的是IP數(shù)據(jù)報(bào)。主要是選址和路由。

Q4:請(qǐng)問C++的類和C里面的struct有什么區(qū)別?

結(jié)構(gòu)是一種將數(shù)據(jù)集合成組的方法,類是一種同時(shí)將函數(shù)和數(shù)據(jù)都集合成組的方法。結(jié)構(gòu)和類在表面上的唯一區(qū)別是:類中的成員在默認(rèn)情況下是私有的,而結(jié)構(gòu)中的成員在默認(rèn)情況下是公用的。

class foo

{

private:

int data1;

public:

void func;

};

可以寫成:

class foo

{

int data1;

public:

void func;

};

因?yàn)樵陬愔心J(rèn)的是私有的,所以關(guān)鍵字private就可以不寫了。

如果想用結(jié)構(gòu)完成這個(gè)類所作的相同的事,就可以免去關(guān)鍵字public,并將公有成員放置在私有成員之前:

struct foo

{

void func;

private:

int data1;

};

Q5:請(qǐng)講一講析構(gòu)函數(shù)和虛函數(shù)的用法和作用?

在 JAVA里沒有象C++中的,所謂的析構(gòu)函數(shù) ,因?yàn)楫?dāng)一個(gè)對(duì)象不在使用的時(shí)候,它會(huì)自動(dòng)被垃圾回收器回收,所以也就用不著析構(gòu)函數(shù)了, 那個(gè)finalize 也只有在被垃圾回收器回收,才會(huì)被執(zhí)行,而且很多時(shí)候,垃圾回收器并不一定執(zhí)行,所以它不能當(dāng)做C++中的,所謂的析構(gòu)函數(shù)使用, 虛函數(shù)在JAVA里也是沒有的,比較象近的應(yīng)該算是abstract。

Q6:全局變量和局部變量有什么區(qū)別?是怎么實(shí)現(xiàn)的?操作系統(tǒng)和編譯器是怎么知道的?

1)、全局變量的作用用這個(gè)程序塊,而局部變量作用于當(dāng)前函數(shù)

2)、前者在內(nèi)存中分配在全局?jǐn)?shù)據(jù)區(qū),后者分配在棧區(qū)

3)、生命周期不同:全局變量隨主程序創(chuàng)建和創(chuàng)建,隨主程序銷毀而銷毀,局部變量在局部函數(shù)內(nèi)部,甚至局部循環(huán)體等內(nèi)部存在,退出就不存在

4)、使用方式不同:通過聲明后全局變量程序的各個(gè)部分都可以用到,局部變量只能在局部使用

Q7:一些寄存器的題目,主要是尋址和內(nèi)存管理等一些知識(shí)。

Q8:8086是多少位的系統(tǒng)?在數(shù)據(jù)總線上是怎么實(shí)現(xiàn)的?

8086微處理器初次發(fā)布時(shí),這塊16位芯片僅包含29000個(gè)晶體管,運(yùn)行速度為5MHz。而當(dāng)今基于x86架構(gòu)的奔騰4處理器,已經(jīng)包含5500萬個(gè)晶體管,運(yùn)行速度提高了600倍以上,高達(dá)3.06GHz。

8086是高性能的第三代微處理器,是Intel系列的16位微處理器,它是采用HMOS工藝制造的,內(nèi)部包含約29,000個(gè)晶體管。

8086 有16根數(shù)據(jù)線和20根地址線,因?yàn)榭捎?0位地址,所以可尋址的地址空間達(dá)220即1M字節(jié)。8086工作時(shí),只要一個(gè)5V電源和一相時(shí)鐘,時(shí)鐘頻率為 5MHz。后來,Intel公司推出的8086-1型微處理器時(shí)鐘頻率高達(dá)10MHz,8086-2型微處理器時(shí)鐘頻率達(dá)8MHz。

1、局部變量能否和全局變量重名

答:能,局部會(huì)屏蔽全局。要用全局變量,需要使用"::"

局部變量可以與全局變量同名,在函數(shù)內(nèi)引用這個(gè)變量時(shí),會(huì)用到同名的局部變量,而不會(huì)用到全局變量。對(duì)于有些編譯器而言,在同一個(gè)函數(shù)內(nèi)可以定義多個(gè)同名的局部變量,比如在兩個(gè)循環(huán)體內(nèi)都定義一個(gè)同名的局部變量,而那個(gè)局部變量的作用域就在那個(gè)循環(huán)體內(nèi)。

2、如何引用一個(gè)已經(jīng)定義過的全局變量

答:extern

可以用引用頭文件的方式,也可以用extern關(guān)鍵字,如果用引用頭文件方式來引用某個(gè)在頭文件中聲明的全局變理,假定你將那個(gè)變寫錯(cuò)了,那么在編譯期間會(huì)報(bào)錯(cuò),如果你用extern方式引用時(shí),假定你犯了同樣的錯(cuò)誤,那么在編譯期間不會(huì)報(bào)錯(cuò),而在連接期間報(bào)錯(cuò)。

3、全局變量可不可以定義在可被多個(gè).C文件包含的頭文件中 為什么

答:可以,在不同的C文件中以static形式來聲明同名全局變量。

可以在不同的C文件中聲明同名的全局變量,前提是其中只能有一個(gè)C文件中對(duì)此變量賦初值,此時(shí)連接不會(huì)出錯(cuò)

c++數(shù)據(jù)結(jié)構(gòu)算法面試筆試題篇

1、語句for( ;1 ;)有什么問題 它是什么意思

答:和while(1)相同。

2、do……while和while……do有什么區(qū)別

答:前一個(gè)循環(huán)一遍再判斷,后一個(gè)判斷以后再循環(huán)

3、請(qǐng)寫出下列代碼的輸出內(nèi)容 以下是引用片段:

#include

main

{

int a,b,c,d;

a=10;

b=a++;

c=++a;

d=10星符號(hào)a++;

printf("b,c,d:%d,%d,%d",b,c,d);

return 0;

}

答:10,12,120

4、static全局變量與普通的全局變量有什么區(qū)別 static局部變量和普通局部變量有什么區(qū)別 static函數(shù)與普通函數(shù)有什么區(qū)別

全局變量(外部變量)的說明之前再冠以static 就構(gòu)成了靜態(tài)的全局變量。全局變量本身就是靜態(tài)存儲(chǔ)方式, 靜態(tài)全局變量當(dāng)然也是靜態(tài)存儲(chǔ)方式。 這兩者在存儲(chǔ)方式上并無不同。這兩者的區(qū)別雖在于非靜態(tài)全局變量的作用域是整個(gè)源程序, 當(dāng)一個(gè)源程序由多個(gè)源文件組成時(shí),非靜態(tài)的全局變量在各個(gè)源文件中都是有效的。 而靜態(tài)全局變量則限制了其作用域, 即只在定義該變量的源文件內(nèi)有效, 在同一源程序的其它源文件中不能使用它。由于靜態(tài)全局變量的作用域局限于一個(gè)源文件內(nèi),只能為該源文件內(nèi)的函數(shù)公用, 因此可以避免在其它源文件中引起錯(cuò)誤。

從以上分析可以看出, 把局部變量改變?yōu)殪o態(tài)變量后是改變了它的存儲(chǔ)方式即改變了它的生存期。把全局變量改變?yōu)殪o態(tài)變量后是改變了它的作用域, 限制了它的使用范圍。 static函數(shù)與普通函數(shù)作用域不同。僅在本文件。只在當(dāng)前源文件中使用的函數(shù)應(yīng)該說明為內(nèi)部函數(shù)(static),內(nèi)部函數(shù)應(yīng)該在當(dāng)前源文件中說明和定義。對(duì)于可在當(dāng)前源文件以外使用的函數(shù),應(yīng)該在一個(gè)頭文件中說明,要使用這些函數(shù)的源文件要包含這個(gè)頭文件

static全局變量與普通的全局變量有什么區(qū)別:static全局變量只初使化一次,防止在其他文件單元中被引用;

static局部變量和普通局部變量有什么區(qū)別:static局部變量只被初始化一次,下一次依據(jù)上一次結(jié)果值;

static函數(shù)與普通函數(shù)有什么區(qū)別:static函數(shù)在內(nèi)存中只有一份,普通函數(shù)在每個(gè)被調(diào)用中維持一份拷貝

5、程序的局部變量存在于(堆棧)中,全局變量存在于(靜態(tài)區(qū) )中,動(dòng)態(tài)申請(qǐng)數(shù)據(jù)存在于( 堆)中。

c++數(shù)據(jù)結(jié)構(gòu)算法面試筆試題篇

1、隊(duì)列和棧有什么區(qū)別

隊(duì)列先進(jìn)先出,棧后進(jìn)先出

2、寫出下列代碼的輸出內(nèi)容 以下是引用片段:

#include

int inc(int a)

{

return(++a);

} int multi(int星符號(hào)a,int星符號(hào)b,int星符號(hào)c)

{

return(星符號(hào)c=星符號(hào)a星符號(hào)星符號(hào)b); } typedef int(FUNC1)(int in); typedef int(FUNC2) (int星符號(hào),int星符號(hào),int星符號(hào)); { INCp=&inc; int temp =p(arg1); fun(&temp,&arg1, arg2); void show(FUNC2 fun,int arg1, int星符號(hào)arg2)

printf("%d\n",星符號(hào)arg2);

}

main

{

int a;

show(multi,10,&a);

return 0;

}

答:110


C語言開發(fā)工程師筆試題相關(guān)文章:

★ 關(guān)于3分鐘自我介紹面試范文6篇

★ 優(yōu)秀的五分鐘面試自我介紹

★ 2020求職面試自我介紹三分鐘【6篇】

★ 2021國考行測真題及答案解析整理

★ 嵌入式開發(fā)學(xué)習(xí)心得感想

★ 五分鐘面試求職的自我介紹范文

★ 3分鐘應(yīng)聘面試自我介紹范文6篇

★ 公司企業(yè)內(nèi)部人員培訓(xùn)方案

★ 2019java畢業(yè)實(shí)習(xí)報(bào)告4篇

★ 技術(shù)支持面試自我介紹

電商運(yùn)營 信息流廣告 網(wǎng)絡(luò)推廣 周易 易經(jīng) 代理招生 二手車 網(wǎng)絡(luò)營銷 旅游攻略 非物質(zhì)文化遺產(chǎn) 查字典 社區(qū)團(tuán)購 精雕圖 戲曲下載 抖音代運(yùn)營 易學(xué)網(wǎng) 互聯(lián)網(wǎng)資訊 成語 成語故事 詩詞 工商注冊(cè) 注冊(cè)公司 抖音帶貨 云南旅游網(wǎng) 網(wǎng)絡(luò)游戲 代理記賬 短視頻運(yùn)營 在線題庫 國學(xué)網(wǎng) 知識(shí)產(chǎn)權(quán) 抖音運(yùn)營 雕龍客 雕塑 奇石 散文 自學(xué)教程 常用文書 河北生活網(wǎng) 好書推薦 游戲攻略 心理測試 石家莊人才網(wǎng) 考研真題 漢語知識(shí) 心理咨詢 手游安卓版下載 興趣愛好 網(wǎng)絡(luò)知識(shí) 十大品牌排行榜 商標(biāo)交易 單機(jī)游戲下載 短視頻代運(yùn)營 寶寶起名 范文網(wǎng) 電商設(shè)計(jì) 免費(fèi)發(fā)布信息 服裝服飾 律師咨詢 搜救犬 Chat GPT中文版 經(jīng)典范文 優(yōu)質(zhì)范文 工作總結(jié) 二手車估價(jià) 實(shí)用范文 古詩詞 衡水人才網(wǎng) 石家莊點(diǎn)痣 養(yǎng)花 名酒回收 石家莊代理記賬 女士發(fā)型 搜搜作文 石家莊人才網(wǎng) 鋼琴入門指法教程 詞典 圍棋 chatGPT 讀后感 玄機(jī)派 企業(yè)服務(wù) 法律咨詢 chatGPT國內(nèi)版 chatGPT官網(wǎng) 勵(lì)志名言 河北代理記賬公司 文玩 語料庫 游戲推薦 男士發(fā)型 高考作文 PS修圖 兒童文學(xué) 買車咨詢 工作計(jì)劃 禮品廠 舟舟培訓(xùn) IT教程 手機(jī)游戲推薦排行榜 暖通,電地暖, 女性健康 苗木供應(yīng) ps素材庫 短視頻培訓(xùn) 優(yōu)秀個(gè)人博客 包裝網(wǎng) 創(chuàng)業(yè)賺錢 養(yǎng)生 民間借貸律師 綠色軟件 安卓手機(jī)游戲 手機(jī)軟件下載 手機(jī)游戲下載 單機(jī)游戲大全 免費(fèi)軟件下載 石家莊論壇 網(wǎng)賺 手游下載 游戲盒子 職業(yè)培訓(xùn) 資格考試 成語大全 英語培訓(xùn) 藝術(shù)培訓(xùn) 少兒培訓(xùn) 苗木網(wǎng) 雕塑網(wǎng) 好玩的手機(jī)游戲推薦 漢語詞典 中國機(jī)械網(wǎng) 美文欣賞 紅樓夢 道德經(jīng) 標(biāo)準(zhǔn)件 電地暖 網(wǎng)站轉(zhuǎn)讓 鮮花 書包網(wǎng) 英語培訓(xùn)機(jī)構(gòu)
16031
領(lǐng)取福利

微信掃碼領(lǐng)取福利

微信掃碼分享

主站蜘蛛池模板: 国产成人精品午夜视频'| 忘忧草日本在线播放www| 全免费毛片在线播放| 91在线一区二区三区| 日韩欧美一区二区三区免费看| 和几个女同事的激情性事| 97049.com| 日本无吗免费一二区| 人妻体体内射精一区二区| 黄页网站在线免费观看| 少妇人妻在线视频| 亚洲一区二区三区免费视频| 翁熄系列乱老扒bd在线播放| 国产麻豆精品精东影业av网站 | 亚洲国产综合在线| 色网站在线播放| 国产高潮国产高潮久久久| 久久久久成人精品无码| 永久免费无码网站在线观看个| 国产在线a不卡免费视频| 99视频免费播放| 日本不卡免费新一二三区| 亚洲精品无码mv在线观看网站| 青青热久免费精品视频在线观看| 天堂bt资源www在线| 久久国产精品亚洲综合| 波多野结衣教师诱惑| 国产一级电影在线观看| 2021在线永久免费视频| 成年女人免费视频| 亚洲va久久久噜噜噜久久天堂| 精品久久久久久无码国产| 国产成人无码区免费A∨视频网站 国产成人无码区免费内射一片色欲 | 国产乱码一二三区精品| 91华人在线视频| 成人免费视频试看120秒| 亚洲乱码一区二区三区在线观看| 福利一区在线观看| 国产亚洲美女精品久久久2020| 91av国产精品| 影音先锋人妻啪啪av资源网站 |