6.2 筆試真題 & 詳解
LZ 是下午 16:00 場。中午睡覺途中,聽到上午有同學筆試歸來,速速問問情況。大致了解下題型:45min 的邏輯測試和 10min 耳機音量調節(jié),最后是 45min 托業(yè)聽力測試。
倒敘說下考試過程把,10min 的耳機音量調節(jié)基本就是坐著望天,什么都不能做,去上 WC
也是 OK 的,不過我們考場沒有人去。估計都被之前 45min 的邏輯干蒙了。 好吧,45min 的托業(yè)聽力測試,也是和新托業(yè)一樣是 4 個 PART 的。
PART 1:20 道圖片題,看到試卷上的圖片,并聽到四個描述圖片內容的句子,選出一個符 合圖片內容的。把握住這部分就把握住了整個聽力的節(jié)奏。這里強調下“新托業(yè)”是 10 道 圖片題,說白了就是圖片題簡單,是送分題。這下大家明白答這個托業(yè)也是為了讓大家答高 分的,過機試的。
PART 2:30 道問題——回答類的題目:提醒下別中 ETS 的圈套:聽到 WHY→就選 because, 那估計你的智商不太靈光。注意:聽關鍵詞是重點中的重點——“疑問詞”很關鍵。
PART 3: 30 道短對話,每個短對話只有一個問題,這和新托業(yè)相比,變化是最大的。要做 好快速轉換思維的能力,下一道題和上一道沒有任何關系。
PART 4: 20 道獨白,這部分和新題型相比較,變化也可以說是最大的。每個獨白,對應 2個及 2 個以上的問題。LZ 在答此部分第一個獨白的問題時,看見 4 個問題,和之前自己答過的新托業(yè)每個獨白固定 3 個問題是截然不一樣的。希望大家做好心理準備,面對每個獨白 不同的問題數(shù)。
最最關鍵的是答聽力過程一定要保證自己精神集中,不然很容易聽一道,歇一道。不行,去 之前喝點咖啡,嚼個口香糖都是 OK 的。
第一部分,邏輯測試。16:00 整監(jiān)考老師宣布考試開始,所有人的電腦屏幕上出現(xiàn)了邏輯 測試的題。我隨即向旁邊瞥了一眼,丫的,題目順序不一樣。
沒有辦法,安心自己答吧。
此部分又細分為 3 個大部分:邏輯判斷(10 道)、邏輯推理(10 道)、和三大圖表分析題。 分值記得不是太清,只記得掃了一眼圖表分析的分值,大概是 15 分/道。每個圖表分析題下 有 5 道小題。大家可以估算出其他分值了把,LZ 不才,只分析到這兒了。
邏輯部分答題技巧:不會就蒙,因為時間很緊張,估計這是大部分人應用的方法。畢竟還是 有人擅長這類行測類型的題的。要求大家估算的能力,以及在短時間判斷算題方法的能 力。LZ 在此答題環(huán)節(jié),基本上處于小學算法,那就兩個字“杯具”。
個別題回憶:
1、一道圖形推理,不會畫圖,就到此為止。
2.甲、乙、丙、丁都會英語、法語、日語和德語中的兩種語言。有 三個人會同一種語言。剩下的估計大家可以猜到了。
3.100 人考試,第一次 60 人及格,第二次 72 及格。問:兩次考試都及格的人數(shù)。
4.一個人在 7 月份工作,只在周一到周五工作。此人至少每天完成任務的 1/22,才能全部在 7 月完成。問 7 月 5 日是周幾?
5.一個正方體上面有 1~6 這 6 個數(shù)字,問 1,2,3 三個數(shù)字對面分 別是數(shù)字幾?——考空間圖形想象能力。
6.甲、乙、丙、丁四個人分別說一句話,關于自己股票成長快慢排 名的。每個人只說對了一半。問每個人的排名!记桑赫艺f話中被重復的人,判斷即可。
7.商場打折促銷:滿 300 減 180,滿 200 減 100,滿 100 減 40。不參 加活動就答五五折。問:記不住了。
8.一個圓上面有 A\B 兩點,A 到圓心的距離和 A 到 B 的距離相等。 圓的半徑是 50 米,問甲和乙分別在 A、B 兩點以順時針按各自速度行走(速度沒記。瑔 多長時間兩人相遇。
9.銀行年利率是 3%,第一年存入 1000,一年后取出本息繼續(xù)存銀 行,另外加寸 1000,問重復 4 年后,利息是多少。
10.現(xiàn)有 351 件商品,和 A 盒子:能裝 27 件,B 盒子:能裝 12 件。問:用的最少盒子數(shù)。
11.90 個 A 和 70 個 B 和 100 個 C 商品共花 8900 圓購得,另外一人,40A、100B、10C 共 4300 圓。問一個 A+ 一個 B+ 一個 C 是多少錢。 剩下的題也不多了,回憶的現(xiàn)在已經是極限了。
圖表分析:
1.關于高鐵開通后,航空公司旅客數(shù)下降以及航空公司怎樣處理的方法(選擇什 么樣的客機)。
2.現(xiàn)在互聯(lián)網的盈利方式,介紹了移動社區(qū)、微博、和 SNS 的各個盈利 點。問了下什么是 SNS,主題大意,還有 3 個問題回憶不起來了。
3.在火車站共調查了 407 人,兩個圖表。問了下從圖表中觀察數(shù)據(jù)估測 的能力,注意:看圖標下面的小字,每個柱圖下面都有漢字的。LZ 開始沒看到,后來才發(fā)現(xiàn)的。不然題很難做完的。
最后,系統(tǒng)交卷的瞬間蹦出八個大字,也是我想送給大家的“考試結束,祝您成功”!
真題2:5月11日收到短信說晚上有宣講會,之后有場筆試,急急忙忙趕去后人早已爆滿。熬到最后還是沒趕上第一輪的筆試,但是既然長途跋涉的趕去了,就耐心等吧!!
接近九點才開始第二輪的筆試,終于皇天不負苦心人啊,我一直在門口遙望,這次順利拿到期盼揣測已久的試卷,但是也應了那句,凡事不可太強求呀(好不容易占到的位置是壞的~~),但是吃虧的不是我,有人給我換位子啦!也算是苦中作樂拉,人嘛,什么時候都要擅于感受幸福!!嗚呼~~俺真幸福。
因為沒有什么找工作經驗,更別說筆試啦,所以也不知道這次的筆試算不算是有難度的了,但是我個人覺得有一定的難度,知識點看似集中,實則和很多其他知識相關。這次筆試的內容包括:c/c++、java還有一些UNIX和LINUX下的命令。題量很大,我主要做了C/C++部分的,還有兩個沒做。
總結下主要考到的內容有:
1.OOP的構造函數(shù)與析構(差不多都是):主要考它們能否VIRTUAL,重載啊,以及各自的調用順序啊。都是選擇題,但是仔細看可以發(fā)現(xiàn)后面的閱讀程序中都已經有答案了。
2.程序題,看程序寫結果并說明理由
3.分析死循環(huán)產生的原因:需要打破常規(guī)思維,有更深入的思考,現(xiàn)在知道不是會寫程序會調試就OK的事情了,還要懂得它們在內存中及編譯器中是怎么工作的才行。記得那個死循環(huán)大致是這樣的:
int index;
int avg[3];
for(index=0;index<5;index++)
{
avg[0]=10;
avg[1]=12;
avg[2]=10;
if(index/2)
avg[3]=0;
else
avg[3]=1;
}
當時一看數(shù)組定義長度不是3么,還avg[3]不越界了嗎?數(shù)組越界會導致死循環(huán)么?又想既然死在for里了,那肯定是INDEX的問題了,但當時思維僅僅局限在此,回去之后測試了下發(fā)現(xiàn)INDEX一直為0,為什么呢???
分析原因:這就設計到內存區(qū)間開辟的問題了,程序在內存中的形式為:代碼區(qū),全局數(shù)據(jù)區(qū),堆區(qū)和棧區(qū)。程序代碼區(qū)存放函數(shù)體的二進制代碼。全局區(qū)(靜態(tài)區(qū))(static),全局變量和靜態(tài)變量的存儲是放在一塊的,初始化的全局變量和靜態(tài)變量在一塊區(qū)域,未初始化的全局變量和未初始化的靜態(tài)變量在相鄰的另一塊區(qū)域,程序結束后由系統(tǒng)釋放。堆區(qū)(heap)一般由程序員分配(new)釋放(delete),若程序員不釋放,程序結束時可能由OS回收。(注意它與數(shù)據(jù)結構中的堆是兩回事,分配方式倒是類似于鏈表)。棧區(qū)就是那些由編譯器在需要的時候分配,在不需要的時候自動清楚的變量的存儲區(qū)。里面的變量通常是局部變量、函數(shù)參數(shù)等。
那么,上面的index和avg自然屬于棧區(qū)的了,變量聲明的時候index先聲明分配在高地址,avg在低地址,數(shù)組avg一旦越界,此時avg[3] 需要再向高地址區(qū)開辟一塊存儲區(qū)域,所以它就指向了緊挨著它的index,即此時index和avg都指向同一地址了,所以當?shù)谝淮螌vg[3]賦值為 0后,index也為0,滿足if條件,使得avg[3]再度為0,故index亦為0,如此反復,兩者一直為0,程序陷入死循環(huán)。
解決辦法:
1.增大數(shù)組定義時的長度
2。定義時先聲明avg后聲明index
具體的需要看內存方面的書,有空要區(qū)看啊,,好了,太晚了,今天就先說這么多,等下睡不了多久就要早起啦!下午的會還得頭疼呢~~~可憐的我啊
真題 3:#include
#include
using namespace std;
class A{
public:
virtual void foo(int i = 10){
cout << "Base:foo()" << i*i << endl;
}
virtual void f(double b){
cout << "Base:f()\n";
}
};
class B: public A{
public:
virtual void foo(int i = 5){
cout << "Derived:foo()" << i*i << endl;
}
void f(complexc){
cout << "Derived:f()\n";
}
};
void main()
{
A* pa = (A*)new B();
pa->foo();
pa->f(2.10);
B* pb = new B();
A* pa2 = pb;
pa2->foo();
pa2->f(2.10);
B b;
b.f(1.0);
}
輸出結果為
Derived:foo()100
Base:f()
Derived:foo()100
Base:f()
Derived:f()
1. 只有虛擬函數(shù)才會有動態(tài)綁定,所以pa->foo()和pa2->foo()調用的都是派生類中的foo()函數(shù),而由于在派生類中聲明的 void f(complex)函數(shù)由于不是virtual函數(shù),同基類中的void f(double)函數(shù)沒有任何關系,派生類完全繼承了基類中的void f(double)函數(shù),所以pa->f()和pa2->f()調用的都是基類中的函數(shù)。
2. 函數(shù)的缺省參數(shù)是在編譯時就確定的,所以在派生類函數(shù)foo中指定的缺省參數(shù)值5不能影響基類函數(shù)foo中指定的缺省參數(shù)值10。
南京愛立信筆試題
寫出程序輸出:
#include
//using namespace std;
class base
{
public:
base(){cout<<"base::base()\n";}
virtual ~base(){cout<<"base::~base()\n";}
void func1(){cout<<"base::func1()\n";}
virtual void func2(){cout<<"base::func2()\n";}
};
class inherited:public base
{
public:
inherited(){cout<<"inherited::inherited()\n";}
~inherited(){cout<<"inherited::~inherited()\n";}
void func1(){cout<<"inherited::func1()\n";}
void func2(){cout<<"inherited::func2()\n";}
};
void func1()
{
inherited a;
base b;
base *pb;
pb=(base*)& a;
pb->func1();
pb->func2();
}
void func2()
{
inherited * pa=new inherited;
base * pb=(base*)pa;
pb->func1();
pb->func2();
delete pa;
}
int main()
{
cout<<"func1:\n";
func1();
cout<<"\nfunc2:\n";
func2();
return 0;
}
S: