版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
軟件工程師面試題庫及答案軟件工程師面試題及答案選擇題1:設(shè)floata=2,b=4,c=3;,以下C語言表達式與代數(shù)式(a+b)+c計算結(jié)果不一致的是A.(a+b)*c/2B.(1/2)*(a+b)*cC.(a+b)*c*1/2D.c/2*(a+b)參考答案:B,因為a,b,c三個變量都是浮點數(shù),所以在B答案中其結(jié)果是0,因為在計算1/2是就是0,如果改成1/2.0就正確了。2:為了向二進制文件尾部增加數(shù)據(jù),打開文件的方式應(yīng)采用A.″ab″B.″rb+″C.″wb″D.″wb+″參考答案:Ar:打開一個文本文件只讀w:打開一個文本文件只寫a:對一個文本文件添加rb:打開一個二進制文件只讀wb:打開一個二進制文件只寫ab:對一個二進制文件添加r+:打開一個文本文件讀/寫w+:生成一個文本文件讀/寫a+:打開一個文本文件讀/寫軟件工程師面試題庫及答案全文共19頁,當前為第1頁。rb+:打開二進制文件讀/寫軟件工程師面試題庫及答案全文共19頁,當前為第1頁。wb+:生成二進制文件讀/寫ab+:打開二進制文件讀/寫3:下述程序執(zhí)行后的輸出結(jié)果是#includemain(){intx='f';printf("%c\n",'a'+(x-'a'+1));}A.gB.hC.iD.j參考答案:A4:C語言中,下列運算符優(yōu)先級最高的是A.!B.%C.>>D.==軟件工程師面試題庫及答案全文共19頁,當前為第2頁。參考答案:A軟件工程師面試題庫及答案全文共19頁,當前為第2頁。優(yōu)先級運算符名稱或含義使用形式結(jié)合方向說明1[]數(shù)組下標數(shù)組名[常量表達式]左到右()圓括號(表達式)/函數(shù)名(形參表).成員選擇(對象)對象.成員名->成員選擇(指針)對象指針->成員名2-負號運算符-表達式右到左單目運算符(類型)強制類型轉(zhuǎn)換(數(shù)據(jù)類型)表達式++自增運算符++變量名/變量名++單目運算符--自減運算符--變量名/變量名--單目運算符*取值運算符*指針變量單目運算符&取地址運算符&變量名單目運算符軟件工程師面試題庫及答案全文共19頁,當前為第4頁。軟件工程師面試題庫及答案全文共19頁,當前為第3頁。!軟件工程師面試題庫及答案全文共19頁,當前為第4頁。軟件工程師面試題庫及答案全文共19頁,當前為第3頁。邏輯非運算符!表達式單目運算符~按位取反運算符~表達式單目運算符sizeof長度運算符sizeof(表達式)3/除表達式/表達式左到右雙目運算符*乘表達式*表達式雙目運算符%余數(shù)(取模)整型表達式/整型表達式雙目運算符4+加表達式+表達式左到右雙目運算符-減表達式-表達式雙目運算符5<<左移變量<<表達式左到右雙目運算符>>右移變量>>表達式雙目運算符6>大于表達式>表達式左到右雙目運算符>=大于等于表達式>=表達式雙目運算符<小于表達式<表達式雙目運算符<=小于等于表達式<=表達式雙目運算符7==等于表達式==表達式左到右雙目運算符!=不等于表達式!=表達式雙目運算符8&按位與表達式&表達式左到右雙目運算符9^按位異或表達式^表達式左到右雙目運算符軟件工程師面試題庫及答案全文共19頁,當前為第5頁。10軟件工程師面試題庫及答案全文共19頁,當前為第5頁。|按位或表達式|表達式左到右雙目運算符11&&邏輯與表達式&&表達式左到右雙目運算符12||邏輯或表達式||表達式左到右雙目運算符13?:條件運算符表達式1?表達式2:表達式3右到左三目運算符14=賦值運算符變量=表達式右到左/=除后賦值變量/=表達式*=乘后賦值變量*=表達式%=取模后賦值變量%=表達式+=加后賦值變量+=表達式-=減后賦值變量-=表達式<<=左移后賦值變量<<=表達式>>=右移后賦值變量>>=表達式&=按位與后賦值變量&=表達式軟件工程師面試題庫及答案全文共19頁,當前為第6頁。^=軟件工程師面試題庫及答案全文共19頁,當前為第6頁。按位異或后賦值變量^=表達式|=按位或后賦值變量|=表達式15,逗號運算符表達式,表達式,…左到右從左向右順序運算5:數(shù)組定義為“inta[4];”,表達式()是錯誤的。A.*aB.a[0]C.aD.a++參考答案:D6:執(zhí)行語句“k=7>>1;”后,變量k的當前值是A.15B.31C.3D.1參考答案:C7:定義函數(shù)時,缺省函數(shù)的類型聲明,則函數(shù)類型取缺省類型A.voidB.charC.floatD.int參考答案:D8:若main()函數(shù)帶參數(shù),參數(shù)個數(shù)最多是軟件工程師面試題庫及答案全文共19頁,當前為第7頁。A.0B.1C.2D.3軟件工程師面試題庫及答案全文共19頁,當前為第7頁。參考答案:C只知道有定義形式main(intargc,char*argv[]))9:若有宏定義:#defineMOD(x,y)x%y則執(zhí)行以下語句后的輸出結(jié)果是inta=13,b=94;printf(″%d\n″,MOD(b,a+4));A.5B.7C.9D.11參考答案:B10:下列各個錯誤中,哪一個不屬于編譯錯誤A.改變x原值3為5,寫作“x==5;”B.花括號不配對C.復合語句中的最后一條語句后未加分號D.變量有引用、無定義參考答案:A11:下列程序段運行后,x的值是()a=1;b=2;x=0;if(!(--a))x--;if(!b)x=7;else++x;軟件工程師面試題庫及答案全文共19頁,當前為第8頁。A.0B.3C.6D.7軟件工程師面試題庫及答案全文共19頁,當前為第8頁。參考答案:A12:設(shè)#defineN3#defineY(n)((N+1)*n)則表達式2*(N+Y(5+1))的值是A.42B.48C.54D.出錯參考答案:BY(5+1)傳遞過去的應(yīng)該是5+1,而不是簡單的把6給替換掉13:若定義了charch[]={″abc\0def″},*p=ch;則執(zhí)行printf(″%c″,*p+4);語句的輸出結(jié)果是A.defB.dC.eD.0參考答案:C14:表達式!x等效于A.x==1B.x==0C.x!=1D.x!=0參考答案:B15:算術(shù)運算符,賦值運算符和關(guān)系運算符的運算優(yōu)先級按從高到低依次為軟件工程師面試題庫及答案全文共19頁,當前為第9頁。A.算術(shù)運算、賦值運算、關(guān)系運算軟件工程師面試題庫及答案全文共19頁,當前為第9頁。B.算術(shù)運算、關(guān)系運算、賦值運算C.關(guān)系運算、賦值運算、算術(shù)運算D.關(guān)系運算、算術(shù)運算、賦值運算參考答案:B16:設(shè)#defineN3#defineY(n)((N+1)*n)則表達式2*(N+Y(5+1))的值是A.42B.48C.54D.出錯參考答案:B17:表達式strcmp(“3.14”,“3.278”)的值是一個A.非零整數(shù)B.浮點數(shù)C.0D.字符參考答案:A18:設(shè)struct{shorta;charb;floatc;}cs;則sizeof(cs)的值是軟件工程師面試題庫及答案全文共19頁,當前為第10頁。A.4B.5C.6D.7軟件工程師面試題庫及答案全文共19頁,當前為第10頁。參考答案:D字節(jié)對齊的話應(yīng)該是819:若變量已正確定義,表達式(j=3,j++)的值是A.3B.4C.5D.0參考答案:A20:C語言中運算對象必須是整型的運算符是A.%B./C.!D.**參考答案:A答問題static有什么用途?(請至少說明兩種)
1.限制變量的作用域
2.設(shè)置變量的存儲域引用與指針有什么區(qū)別?
1)引用必須被初始化,指針不必。
2)引用初始化以后不能被改變,指針可以改變所指的對象。
2)不存在指向空值的引用,但是存在指向空值的指針。描述實時系統(tǒng)的基本特性
在特定時間內(nèi)完成特定的任務(wù),實時性與可靠性軟件工程師面試題庫及答案全文共19頁,當前為第11頁。全局變量和局部變量在內(nèi)存中是否有區(qū)別?如果有,是什么區(qū)別?
全局變量儲存在靜態(tài)數(shù)據(jù)庫,局部變量在堆棧軟件工程師面試題庫及答案全文共19頁,當前為第11頁。請寫出下列代碼的輸出內(nèi)容
#include<stdio.h>
main()
{
inta,b,c,d;
a=10;
b=a++;
c=++a;
d=10*a++;
printf("b,c,d:%d,%d,%d",b,c,d);
return0;
}
答:10,12,120對于一個頻繁使用的短小函數(shù),在C語言中應(yīng)用什么實現(xiàn),在C++中應(yīng)用什么實現(xiàn)?
答:c用宏定義,c++用inline軟件工程師面試題庫及答案全文共19頁,當前為第12頁。用宏定義寫出swap(x,y)
#defineswap(x,y)\
x=x+y;\
y=x-y;\
x=x-y;
軟件工程師面試題庫及答案全文共19頁,當前為第12頁。如何定義一個有10個元素的整數(shù)型指針數(shù)組。
既然只是定義而不是初始化,那就很簡單且沒有爭議了:int*array[10];。解釋C語言關(guān)鍵字extern、static的含義。這個簡單的問題很少有人能回答完全。在C語言中,關(guān)鍵字static有三個明顯的作用:
1)在函數(shù)體,一個被聲明為靜態(tài)的變量在這一函數(shù)被調(diào)用過程中維持其值不變。
2)在模塊內(nèi)(但在函數(shù)體外),一個被聲明為靜態(tài)的變量可以被模塊內(nèi)所用函數(shù)訪問,但不能被模塊外其它函數(shù)訪問。它是一個本地的全局變量。
3)在模塊內(nèi),一個被聲明為靜態(tài)的函數(shù)只可被這一模塊內(nèi)的其它函數(shù)調(diào)用。那就是,這個函數(shù)被限制在聲明它的模塊的本地范圍內(nèi)使用。解釋C語言關(guān)鍵字volatile、const的含義。軟件工程師面試題庫及答案全文共19頁,當前為第13頁。我只要一聽到被面試者說:"const意味著常數(shù)",我就知道我正在和一個業(yè)余者打交道。去年DanSaks已經(jīng)在他的文章里完全概括了const的所有用法,因此ESP(譯者:EmbeddedSystemsProgramming)的每一位讀者應(yīng)該非常熟悉const能做什么和不能做什么.如果你從沒有讀到那篇文章,只要能說出const意味著"只讀"就可以了。盡管這個答案不是完全的答案,但我接受它作為一個正確的答案。(如果你想知道更詳細的答案,仔細讀一下Saks的文章吧。)
如果應(yīng)試者能正確回答這個問題,我將問他一個附加的問題:
下面的聲明都是什么意思?
constinta;
intconsta;
constint*a;
int*consta;
intconst*aconst;
/******/
前兩個的作用是一樣,a是一個常整型數(shù)。第三個意味著a是一個指向常整型數(shù)的指針(也就是,整型數(shù)是不可修改的,但指針可以)。第四個意思a是一個指向整型數(shù)的常指針(也就是說,指針指向的整型數(shù)是可以修改的,但指針是不可修改的)。最后一個意味著a是一個指向常整型數(shù)的常指針(也就是說,指針指向的整型數(shù)是不可修改的,同時指針也是不可修改的)。如果應(yīng)試者能正確回答這些問題,那么他就給我留下了一個好印象。順帶軟件工程師面試題庫及答案全文共19頁,當前為第14頁。提一句,也許你可能會問,即使不用關(guān)鍵字const,也還是能很容易寫出功能正確的程序,那么我為什么還要如此看重關(guān)鍵字const呢?我也如下的幾下理由:
1)關(guān)鍵字const的作用是為給讀你代碼的人傳達非常有用的信息,實際上,聲明一個參數(shù)為常量是為了告訴了用戶這個參數(shù)的應(yīng)用目的。如果你曾花很多時間清理其它人留下的垃圾,你就會很快學會感謝這點多余的信息。(當然,懂得用const的程序員很少會留下的垃圾讓別人來清理的。)
2)通過給優(yōu)化器一些附加的信息,使用關(guān)鍵字const也許能產(chǎn)生更緊湊的代碼。
3)合理地使用關(guān)鍵字const可以使編譯器很自然地保護那些不希望被改變的參數(shù),防止其被無意的代碼修改。簡而言之,這樣可以減少bug的出現(xiàn)。
軟件工程師面試題庫及答案全文共19頁,當前為第13頁。軟件工程師面試題庫及答案全文共19頁,當前為第14頁。軟件工程師面試題庫及答案全文共19頁,當前為第15頁。關(guān)鍵字volatile有什么含意?并給出三個不同的例子。
一個定義為volatile的變量是說這變量可能會被意想不到地改變,這樣,編譯器就不會去假設(shè)這個變量的值了。精確地說就是,優(yōu)化器在用到這個變量時必須每次都小心地重新讀取這個變量的值,而不是使用保存在寄存器里的備份。下面是volatile變量的幾個例子:
1)并行設(shè)備的硬件寄存器(如:狀態(tài)寄存器)
2)一個中斷服務(wù)子程序中會訪問到的非自動變量(Non-automaticvariables)
3)多線程應(yīng)用中被幾個任務(wù)共享的變量
回答不出這個問題的人是不會被雇傭的。我認為這是區(qū)分C程序員和嵌入式系統(tǒng)程序員的最基本的問題。搞嵌入式的家伙們經(jīng)常同硬件、中斷、RTOS等等打交道,所有這些都要求用到volatile變量。不懂得volatile的內(nèi)容將會帶來災(zāi)難。
假設(shè)被面試者正確地回答了這是問題(嗯,懷疑是否會是這樣),我將稍微深究一下,看一下這家伙是不是直正懂得volatile完全的重要性。
1)一個參數(shù)既可以是const還可以是volatile嗎?解釋為什么。
2);一個指針可以是volatile嗎?解釋為什么。
3);下面的函數(shù)有什么錯誤:
intsquare(volatileint*ptr)
{
return*ptr**ptr;
}
下面是答案:
1)是的。一個例子是只讀的狀態(tài)寄存器。它是volatile因為它可能被意想不到地改變。它是const因為程序不應(yīng)該試圖去修改它。
軟件工程師面試題庫及答案全文共19頁,當前為第16頁。2);是的。盡管這并不很常見。一個例子是當一個中服務(wù)子程序修該一個指向一個buffer的指針時。
3)這段代碼有點變態(tài)。這段代碼的目的是用來返指針*ptr指向值的平方,但是,由于*ptr指向一個volatile型參數(shù),編譯器將產(chǎn)生類似下面的代碼:
intsquare(volatileint*ptr)
{
inta,b;
a=*ptr;
b=*ptr;
returna*b;
}
由于*ptr的值可能被意想不到地該變,因此a和b可能是不同的。結(jié)果,這段代碼可能返不是你所期望的平方值!正確的代碼如下:
longsquare(volatileint*ptr)
{
inta;
a=*ptr;
returna*a;
軟件工程師面試題庫及答案全文共19頁,當前為第17頁。}軟件工程師面試題庫及答案全文共19頁,當前為第15頁。軟件工程師面試題庫及答案全文共19頁,當前為第16頁。軟件工程師面試題庫及答案全文共19頁,當前為第17頁。 用變量a給出下面的定義a)一個整型數(shù)(Aninteger)b)一個指向整型數(shù)的指針(Apointertoaninteger)c)一個指向指針的的指針,它指向的指針是指向一個整型數(shù)(Apointertoapointertoaninteger)d)一個有10個整型數(shù)的數(shù)組(Anarrayof10integers)e)一個有10個指針的數(shù)組,該指針是指向一個整型數(shù)的(Anarrayof10pointerstointegers)f)一個指向有10個整型數(shù)數(shù)組的指針(Apointertoanarrayof10integers)g)一個指向函數(shù)的指針,該函數(shù)有一個整型參數(shù)并返回一個整型數(shù)(Apointertoafunctionthattakesanintegerasanargumen
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度護校與養(yǎng)老機構(gòu)合作服務(wù)合同3篇
- 女生節(jié)活動策劃方案(3篇)
- 中小學校實驗室內(nèi)部管理制度范文(二篇)
- 2025年度物流運輸安全環(huán)保服務(wù)協(xié)議范本3篇
- 液壓銑床課程設(shè)計摘要
- 財務(wù)分析圖表課程設(shè)計
- 平路機安全操作規(guī)程范文(2篇)
- 二零二五年度房地產(chǎn)租賃權(quán)包銷合同3篇
- 2025年上半年安全員工作總結(jié)(3篇)
- 2024年滬教版高三歷史上冊階段測試試卷
- 河南省鄭州市鄭州經(jīng)濟技術(shù)開發(fā)區(qū)2023-2024學年七年級上學期期末歷史試題(無答案)
- 2024年新奧集團股份有限公司招聘筆試參考題庫含答案解析
- 工作述職評分表
- 新疆大學新疆數(shù)字經(jīng)濟研究院:2023新疆平臺經(jīng)濟發(fā)展調(diào)研報告
- 酒店預訂確認函
- 小學課愛國主義教育教案
- 會計師事務(wù)所審計工作底稿
- 內(nèi)科抗菌藥物合理使用優(yōu)秀課件
- 觸摸一體機整機檢驗標準?1.0
- 關(guān)于人員的處置方案
- 2023年社區(qū)體育研究報告5篇
評論
0/150
提交評論