- 相關推薦
C C++面試筆試題目集錦
一、輸入一個n ,然后在屏幕上打印出NxN 的矩陣!
例如,輸入一個3,則
1 2 3
8 9 4
7 6 5
輸入一個4,則
1 2 3 4
12 13 14 5
11 16 15 6
10 9 8 7
參考答案:
#include
#include
#define N 10
void printCube(int a[][N],int n);
void main()
{
int a[N][N],n;
printf(“input n:\n”);
scanf(“%d”,&n);
printCube(&a[0],n);
getch();
}
void printCube(int a[][N],int n)
{
int i,j,round=1;
int m=1;
for(i=0;i
a[0]=m++;
for(i=n-1;i>=n/2;i–)
{
for(j=round;j<=i;j++)
a[j]=m++;
for(j=i;j>=round;j–)
a[j-1]=m++;
for(j=i;j>round;j–)
a[j-1][round-1]=m++;
for(j=round;j
a[round][j]=m++;
round++;
}
for(i=0;i
for(j=0;j
printf(“%3d”,a[j]);
printf(“\n”);
}
}
二、朗訊面試題 :
There are two int variables: a and b, don’t use “if”, “? :”, “switch” or other judgement statements, find out the biggest one of the two numbers.
參考答案:
方案一int max = ((a+b)+abs(a-b)) / 2
方案二int c = a -b;
char *strs[2] = {“a大”,”b大”};
c = unsigned(c) >> (sizeof(int) * 8 – 1);
三、朗訊面試題 :
如何打印出當前源文件的文件名以及源文件的當前行號?
參考答案: 通常使用的就是__FILE__, __LINE__,在調試函數中利用”%s”,”%ld”,打印就好了。
四、朗訊面試題 :
main主函數執行完畢后,是否可能會再執行一段代碼,給出說明?
參考答案: crt會執行另一些代碼,進行處理工作。
如果你需要加入一段在main退出后執行的代碼,可以使用atexit()函數,注冊一個函數。
語法:
#include
int atexit(void (*function”)(void));
#include
#include
void fn1( void ), fn2( void ), fn3( void ), fn4( void );
int main( void )
{
atexit( fn1 );
atexit( fn2 );
atexit( fn3 );
atexit( fn4 );
printf( “This is executed first.\n” );
}
void fn1()
{
printf( “next.\n” );
}
void fn2()
{
printf( “executed ” );
}
void fn3()
{
printf( “is ” );
}
void fn4()
{
printf( “This ” );
}
五、朗訊面試題 :
如何判斷一段程序是由C編譯程序還是由C++編譯程序編譯的?
參考答案: c++編譯時定義了 __cplusplus
c編譯時定義了 _STDC_
六、下面這道面試題怎么做(指針)? #include
main(){
int c[3][3]={1,2,3,4,5,6,7,8,9};
for(int i=0;i<3;i++)
for(int j=0;j<3;j++)
printf(“%ld\n”,&c[j]);
printf(“————————-\n”);
printf(“%ld\n”,(c+1));
printf(“%ld\n”,(*c+1));
printf(“%ld\n”,&c[0][0]);
printf(“%ld\n”,**c);
printf(“%ld\n”,*c[0]);
if(int(c)==int(*c))
printf(“equl”);
}
為什么c,*c的值相等,(c+1),(*c+1)的值不等
c,*c,**c,代表什么意思?
參考答案: c是第一個元素的地址,*c是第一行元素的首地址,其實第一行元素的地址就是第一個元素的地址,這容易理解。**c是提領第一個元素。
為什么c,*c的值相等?
int c因為直接用c表示數組c[0][0]
printf(“%ld\n”,*c[0]);語句已將指針移到數組頭。
int(*c)表示c0的值為1,所以相等。
數組c的存放空間示意如下:(機器中是行優先存放的)
c[0][0] c[0][1] c[0][2]
c[1][0] c[1][1] c[1][2]
c[2][0] c[2][1] c[2][2]
c是一個二維數組名,實際上它是一個指針常量,不能進行自加、自減運算,即:c++、c–、++c、–c
都是不允許的;
c: 數組名;是一個二維指針,它的值就是數組的首地址,也即第一行元素的首地址(等于 *c),也
等于第一行第一個元素的地址( & c[0][0]);可以說成是二維數組的行指針。
*c: 第一行元素的首地址;是一個一維指針,可以說成是二維數組的列指針。
**c:二維數組中的第一個元素的值;即:c[0][0]
所以:
c 和 *c的值是相等的,但他們兩者不能相互賦值,(類型不同);
(c + 1) :c是行指針,(c + 1)是在c的基礎上加上二維數組一行的地址長度,即從&c[0][0]
變到了&c[1][0];
(*c + 1):*c是列指針,(*c + 1)是在*c的基礎上加上二數組一個元素的所占的長度,即從
&c[0][0]變到了&c[0][1]
從而(c + 1)和(*c + 1)的值就不相等了
七、定義 int **a[3][4], 則變量占有的內存空間為:_____
參考答案: int **p; /*16位下sizeof(p)=2, 32位下sizeof(p)=4*/
總共 3*4*sizeof(p)
八、編寫一個函數,要求輸入年月日時分秒,輸出該年月日時分秒的下一秒。如輸入2004年12月31日23時59分59秒,則輸出2005年1月1日0時0分0秒。
參考答案: 判斷年份是否是閏年,月份的大小月,
月(12進制)、日(與閏年、大小月有關)、時(24進制)、分(60進制)、妙(60進制)
九、湯姆遜的面試試題:怎么快速檢測出一個巨大的鏈表中的死鏈? 參考答案
十、幾道基礎題
十一、真正的微軟面試題
十二、經典題
十三、文件操作,讀取一組數進行排序然后寫入文件
十四、交換兩個數,不用第三塊兒內存!請問怎么實現?
十五、C/C++筆試提問
十六、蠻有意思的題目
十七、關于Const常量問題,華為面試題。
十八、四個面試問題
十九、難度系數、具體的實現算法?
二十、兩道面試題,最好能提供一個完整的實現代碼!
二十一、求用一段C或C++程序寫求 f(x)=100! 的完整程序?
二十二、25匹馬,每次撿5匹跑,幾次可找出最快的5匹馬?
二十三、一個面試題 求 n!
IT類就業攻略
發信人: noobody (everybody), 信區: Job
標 題: 北郵IT類就業攻略
發信站: 北郵人論壇 (Sun Sep 6 12:16:28 2009), 站內
不久前發了那篇《盤點IT類就業方向》的文章,感受到了師弟師妹們對找工作方面信息的需求,首先謝謝大家的支持,今天就寫一下自己以及同學找工作過程中的 心得體會吧,找工作如同高考、考研,重點是要有適合自己的攻略,我的文字算是參考資料吧,不廢話了,進入正題:
適合人群:非神人
一、你將可能面臨的歷程:
總體歷程:求職的歷程對于我們這些非神人的凡夫俗子來說,總體還是很艱辛的。一般主要的戰斗時間段是9月起至本學期結束,有些公司會在年三十,大年初幾左右發Offer或者體檢通知。
如果你寒假結束還沒有拿到令自己滿意的Offer,一定要堅持下去,因為好多大牛單位的面試或者終面都放在了年后,我就認識年后去PICC,人民銀行,建 設銀行的朋友。只是到了這個階段,你會比較辛苦,既要做好畢設,又要應付各種各樣的畢業階段要做的事情,承受一定的心理壓力,但是,人生能有幾回搏,對于 整個人生來說,這一兩個月的艱辛付出是值得的。
//z 說得非常好,先解決有無問題,再解決別的方面的問題。
1、海投、海筆、海面階段
對于Offer,首先要解決的是”有”和”無”的問題,之后才能解決”有”(或者至少是曾經拿到,自己拒了企業,而非企業拒了自己)和”好”的問題。而且 開始的時候,大家對自己適合國企還是適合外企,究竟適合哪個行業(電信?金融?通信設備?網絡?)都沒有清晰的概念,心態方面也是發毛的(找不找得到工作 可是關乎自己的飯碗哪),因此一開始周圍的同學們一般都是能投的都投了,能筆的都筆了,能面得都面了。
//z 還是需要實踐
這個階段是很關鍵的,”紙上得來終覺淺”,你再是看面經,也不如你參加一次筆試,面試,之后和同樣找工作的室友同學討論分析來得快,收獲大。要注意總結,一個行業往往不是只有一家公司,可能這家公司的筆試你沒有通過,但到了下家,側重點都差不多的話,就會相對容易些。
對于個別神人,可能是一打一個準兒,也許并不需要海筆、海面,確實有這樣的人存在,但是還是相對保險點兒好。而且有時候你都不知道為什么同在一個實驗室,研究方向、項目經歷也類似,為什么有人能通過簡歷篩選,有人卻不能。
//z 經過一段時間之后開始進入選擇階段。
2、戰略相對清晰階段
經過了一段時間的錘煉,你可能已經漸漸知道自己大概適合哪類公司了,例如你去參加網絡公司的筆試、面試都能通過,而參加通信設備的筆試,大部分都沒通過, 這個時候,經過一段時間的奔波,你也有些疲憊了,當面試時間或準備時間沖突的時候,你就要有所取舍了,平時不參加筆試、面試時,材料收集,面經準備的針對 性也要有所加強了。
3、收獲階段
即使是實力很強的人,也會長期”裸奔”,因為對于大多數企業來講,就算9月開始招聘,發Offer也到了11月、12月了,而且如果想去國企,就會等待的 更久,因為很多國企11月才剛剛開始收集簡歷,有些實力不俗的求職者,很可能會在12月、1月的某段時間內,同時收到不止一個Offer。當你收到 Offer的時候,而還在等更理想的一個出結果的時候,可以用各種借口在企業能允許的范圍內盡量往后拖延,收集充足的信息,做出取舍。
二、技術性準備
1、簡歷
簡歷方面我看版上討論的已經很多了,不多廢話了,只說一下,我個人的做法,我準備了一份完整簡歷,涵蓋了我的所有經歷,這份簡歷不是用來投的,可以說是自己的一個資料庫,遇到網投,從這份簡歷中直接復制粘貼就行了。
另外準備了兩份用來投遞的簡歷,一份面向綜合性崗位(IT咨詢、國企的復合型或管理型IT崗位等),一份面向研發類崗位,其實,兩份區別不大,只是研發類簡歷中,把做過的研發類項目放在了項目經歷一欄的首位,綜合性簡歷中,把做過的IT咨詢類項目放在了項目經歷一欄的首位。
2、知識儲備
不同類型的單位筆試、面試考察的側重點不一樣。大致可以分為三大流派:國企、外企、公務員,現在已經9月份了,對于你我這樣的凡夫俗子來說,在你即將淹 沒在各種招聘會、筆試、面試的趕場中時,你不可能同時出擊打擊三類目標。下面對這三大流派做下簡單梳理,供你見招拆招。
特別說明:由于個人能力受限,在此我只能重點闡述筆試的側重點,因為面試一方面我參加的不全,另一方面,面試的不確定性比筆試大多了,誰曉得面試官那天心情怎樣,會問什么問題。
2.1國企考察側重點
筆試:
只考非技術性問題:一般是電信領域的研究院或者設計院。例如電信研究院規劃所,只考了英語翻譯和漢語申論(給個論題,寫篇文章)。移動研究院只考了行測(有沒有考英語忘了)。
只考技術性問題:例如人民銀行金融信息管理中心,只考了計算機知識,沒考行測和申論。
英語+技術性問題+行測:大多數國企都是這樣考的。
面試:
任何問題都可能會問到,個人參加過的那些感覺除了問些技術性問題之外,往往會加上些開放式問題,例如交給你個5人團隊的開發項目,你怎么管理。特別說 明,開放式是表現你綜合素質的機會,感覺國企面試,這種問題比具體知識性問題還重要。至于具體的知識性問題,雖然也得認真對待,但即使沒回答上來,也別灰 心,未必進不了下一輪。
2.2外企考察側重點
筆試:
重在學習能力、分析能力的考察:一般是非純IT類外企,例如摩根IT,摩根IT考的很全,連概率論都考了,但是印象中,沒考IT專業知識,記不太清了。
重在IT領域學習能力、分析能力等的考察(可能會涉及算法):一般是對算法有一定要求的IT類企業或網絡公司,例如百度、微軟,除了選擇題,往往后面會有一兩道涉及鏈表、樹等方面的大題。
//z web sense
重在專業領域的考察:一般是規模不大或者專業性很強的外企,例如web sense,考了很多網絡知識。
外企的咨詢類崗位:例如GBS藍色之路時舉行的考試,筆試沒考技術,只考了數字分析一類的。
面試:
大多數外企都會重點考察你的學習能力和潛力,并不在于你現在掌握有多少知識,有些會問算法,例如百度。
非技術類崗位則一般都不問技術性問題,往往是群面,單面,觀察你的組織,協調,溝通能力。
2.3公務員考試
行測+申論,具體不展開了,公務員版肯定有更詳細的資料。
2.4如何準備
國企:
國企考察的技術性問題,面廣,很雜,操作系統,數據庫,網絡,數據結構等都可能涉及,但是考的都很基礎。所以建議準備一下行測,另外對各科的基礎知識復習一下,如果今年沒有大的變化的話,這些知識儲備足矣應付筆試。
外企:
首先計算機所涉及各領域的基礎知識你得具備,筆試、面試之后,遇到沒有解決的算法題,要和平時編程比較牛的人多討論,即使沒通過筆試,至少要有所收獲。 不僅要解決問題,如有余力,可以爭取用最巧妙地方法再解決一下該問題。另外,英語能力要強,像要去參加摩根面試的話,口語也得說的過去。
如果你不買一本書來看覺得不放心的話,可以弄一本《程序員面試攻略》,首先需要聲明,該書不能幫助你通過筆試和面試,因為他雖然各領域都涉及了,但是說的 都很提綱挈領。但是該書最大的作用就是里面詳細闡述了面對考官所提問題時,應聘者的詳細思維過程。該書還有一個好處就是薄,很難想象,都這個時候了,你再去細看《算法導論》。
三、各種類型的考試策略
1、筆試:
策略很簡單,會的保證正確,不會的蒙上去,做不完別擔心。
2、群面:
度很重要,既有效展現了自己的能力,表達了自己的觀點,又給別人說話的機會,一點也不張揚。
在群面中,你如果能夠做到準備把握團隊進程,做團隊中的關鍵人物(未必是組長),那絕對是個亮點,例如在大家已經對該論題充分發表自己意見的前提下,如果有些同學執拗于自己的觀點,整個團隊仍然無法達成共識,你可以適時的提醒大家,時間已經快來不及了。
如果你不幸淪為少數派,你可以保留自己的觀點,但是如果說整個團隊要出一個解決方案,一定要表達服從團隊決策的意思。
3、單面:
進入單面,目標企業對你已經比較滿意了,在這個環節,技術性問題萬一回答不上來,可以把相關領域的答上去。非技術性問題,一定要好好把握,這是展現你綜 合能力的好機會。我在單面的時候,犯過不少低級錯誤,不要表現出來自己不想下基層,或者不想出差等苗頭,即使事后你沒有去這家公司,但是你既然來了,還是 先拿到Offer再說吧。
面試總結
男生要衣著得體,國企以及外企的非技術類崗位,一般都要穿正裝,表現要大方,不要畏縮。要表現的具有團隊意識,不要太注重個人表現,好像只有自己才掌握真理,這樣不會給考官留下好印象。
女生不宜濃妝艷抹,相信北郵的MM們也不會這樣的,呵呵,可以展示女生身上男生不具備的那些優點,例如細心。
四、時間精力的分配
收集信息很重要,但是更重要的是實戰(參加筆試、面試)和準備(對一些知識點的復習),不能太浮躁,不能一直是在投簡歷、參加宣講,真正給了你機會,卻連 筆試都過不了,假如你在參加筆試、面試之余,已經沒有既準備國企側重的知識,又準備外企側重的知識的精力了,那么你就要有所取舍了,不過國企外企也并非完 全沒有交集,計算機、通信類的基礎知識一般情況下,是都得具備的。
說明一下,《盤點》那篇文章,也只是幫助你簡單梳理一下這些單位都是干什么的,幫助你確定一個大概的方向,例如,切不要以為自己想去國企,那外企的筆試、面試就一概不參加,非要等到11月份才開始找工作。 想進外企,也是同樣的道理。
五、心態
鮮有聽說誰筆試發揮失常的,此處簡單說下面試時的心態,假如你技術性的準備工作都做的差不多了,正裝也穿了,目標企業的面經也看了,那么最重要的心態就是 自信了,很佩服我認識的一位去百度的同學,他求職的心態就很端正,他認為求職就是崗位與能力匹配的雙向選擇,如果我不適合你的崗位,那一定還會有適合我的 崗位在等待著我。
在這里我要說,既然已經通過了筆試或者簡歷篩選,就說明你的背景基本是符合目標職位對你的期待的,那么參加面試的時候,哪怕你遇到的競爭對手是天下第一劍客,你也要敢于亮劍,不管成功與否,打出自己的風格。
后記
關于小企業與非名企
本來沒必要專門寫這一節,只要個人有實力,去小企業一樣有發展,在大型企業中,你會感覺到自己就像是一顆螺絲釘,未必比在小企業能夠獲得鍛煉。名企與非名企也是同樣的道理,只是非名企可能正處于成長的階段。
《盤點》和本文所講的攻略都沒有將小企業排斥在外,只是因為小企業的信息相對不那么透明,不太好收集,因此《盤點》一文中,才沒有給予過多的論述。
關于待遇
《盤點》一文絕對沒有誤導大家優先考慮待遇的意思,但是說到企業不可避免的要談到薪酬,而且薪酬在一定程度上能夠衡量一個崗位的價值。因此也只是把我掌握的信息提供出來,供大家參考。
致北郵IT畢業生
北郵的IT在社會上還是比較受認可的,據我觀察,一般投IT類的崗位,少有簡歷篩選都通不過的(不過我不太了解本科生的情況),到你參加面試的時候就會發 現,幾乎到哪兒遇到的都是北郵人多(當然,這和咱們學校IT類專業人數眾多也有關系),所以遇到清華、北大等高校的牛人時,也不必有畏懼表現,不宜妄自菲 薄,相信”Made in BUPT”是品質的保證。
致外校IT畢業生
北郵人論壇上也有不少外校的兄弟姐妹,如果你們學校的IT水平與北郵相當,甚至于高于北郵,那么對北郵IT研究生的建議同樣適用于你們,如果你們學校的 IT并不是十分主流,也不宜妄自菲薄,該投簡歷的就投,只要能夠通過簡歷篩選,咱們的背景就是符合目標職位的,同樣,筆試、面試的時候,要敢于亮劍。
致給我發站內信的同學
給我發站內信的同學,首先感謝你們對我的信任,我會盡量予以答復,但是由于種種原因可能不會回復的那么及時,其實由于專業、研究方向等方面的限制,如果 你們想了解信息,我更建議你們多和本實驗室、本班以往畢業的師兄師姐們溝通,看看他們去了哪里,對你們的求職有什么建議。
最后,謝謝閱讀,祝大家都能拿到理想的Offer!
【C C++面試筆試題目】相關文章:
C++工程師筆試題目11-25
C++筆試題03-25
C++ 筆試題08-09
普天C++筆試題面試技巧11-06
Sony C++筆試題02-11
普天C++筆試題02-18
c++一些筆試題目和整理的答案08-09
基礎C++/C語言筆試題分享11-21
聚網科技C++筆試題07-20
群碩筆試題Java和C++、C#11-21