1. 首頁
  2. 面試

.6.30面試問題

2014.6.30面試問題

到C/S結構,她就問Server端測試效能時需要注重哪些方面。

1.

2n個數,一半奇數,一半偶數,設計一個程式讓奇數位上的數是奇數,偶數位上的是偶數,並計算程式的空間複雜度和時間複雜度

可以這麼設計:使用另外一個數組,一個一個遍歷原陣列遇到奇數就放到新陣列的奇數位上,可以設立兩個陣列下標一個指向新陣列的奇數位,另一個指向新陣列的偶數位,當奇數位或偶數位任意一個到頭時,就將另外的資料順序填入即可。

2.開放性問題:怎麼樣統計世界上一共有多少個理髮師

可以去工商局,可以去統計理髮用的工具銷量,

3.現在有一臺印表機或者多臺印表機,你要怎麼樣進行測試,要測哪些點。

一.測試一部電梯需求測試:檢視電梯使用說明書、安全說明書等

介面測試:檢視電梯外觀

功能測試: 1.測試電梯能否實現正常的上升和下降功能。 2.電梯的按鈕是否都可以使用。 3.電梯門的開啟,關閉是否正常。 4.報警裝置是否可用。 5.與其他電梯之間是否協作良好。 6.通風狀況如何。 7.突然停電時的情況。 8.上升途中的響應。 1)電梯本來在1樓,如果有人按18樓,那麼電梯在上升到5樓的時候,有人按了10樓,這時候是否會在10樓先停下來; 2)電梯下降到10層時顯示滿員,此時若8層有人等待電梯,是否在8層停。

可靠性: 1.門關上的一剎那出現障礙物。 2.同時按關門和開門按鈕。 3.點選當前樓層號碼。 4.多次點選同一樓層的號碼等等。 5.同時按上鍵和下鍵會怎樣。

易用性: 1.電梯的按鈕的設計符合一般人使用的習慣嗎.

負載/壓力測試: 1.看電梯的最大限度的承受重量.在負載過重時是否有提醒。 2.在一時間內不斷的讓電梯上升,下降。

穩定性測試: 1.最大負載下平穩執行的最長時間。

文件測試: 1.使用手冊是否對電梯的用法、限制、使用條件等有詳細描述

二.測試帶廣告圖案的花紙杯需求測試:檢視杯子使用說明書

介面測試:檢視杯子外觀

功能度:用水杯裝水看漏不漏;水能不能被喝到

安全性:杯子有沒有毒或細菌

可*性:杯子從不同高度落下的損壞程度

可移植性:杯子再不同的地方、溫度等環境下是否都可以正常使用

相容性:杯子是否能夠容納果汁、白水、酒精、汽油等

易用性:杯子是否燙手、是否有防滑措施、是否方便飲用

使用者文件:使用手冊是否對杯子的用法、限制、使用條件等有詳細描述

疲勞測試:將杯子盛上水(案例一)放24小時檢查洩漏時間和情況;盛上汽油(案例二)放24小時檢查洩漏時間和情況等

壓力測試:用根針並在針上面不斷加重量,看壓強多大時會穿透

跌落測試: 杯子加包裝(有填充物),在多高的情況摔下不破損

震動測試: 杯子加包裝(有填充物),六面震動,檢查產品是否能應對惡劣的鐵路"公路"航空運輸

測試資料:

測試資料具體編寫此處略(最討厭寫測試資料了)。其中應用到:場景法、等價類劃分法、因果圖法、錯誤推測法、邊界值法等方法

期望輸出:

該期望輸出需查閱國標、行標以及使用使用者的需求

說明書測試: 檢查說明書書寫準確性

4.比如說到C/S結構,她就問Server端測試效能時需要注重哪些方面。

5. c中malloc realloc calloc 的區別和聯絡

ANSI C說明了三個用於儲存空間動態分配的函式

(1) malloc 分配指定位元組數的儲存區。此儲存區中的初始值不確定

(2) calloc 為指定長度的物件,分配能容納其指定個數的儲存空間。該空間中的每一位(bit)都初始化為0

(3) realloc 更改以前分配區的長度(增加或減少)。當增加長度時,可能需將以前分配區的內容移到另一個足夠大的區域,而新增區域內的初始值則不確定

.分配函式時再分配 realloc()

使我們可以增、減以前分配區的長度(最常見的用法是增加該區)。

如果先分配一個可容納長度為512的陣列的空間,並在執行時填充它,但又發現空間不夠,則可呼叫realloc擴充該儲存空間。

如果在該儲存區後有足夠的空間可供擴充,則可在原儲存區位置上向高地址方向擴充,並返回傳送給它的同樣的指標值。

如果在原儲存區後沒有足夠的空間,則realloc分配另一個足夠大的儲存區,將現存的5 1 2個元素陣列的內容複製到新分配的儲存區。

因為這種儲存區可能會移動位置,所以不應當使用任何指標指在該區中。

注意,realloc的最後一個引數是儲存區的newsize(新長度),不是新、舊長度之差。作為一個特例,若ptr是一個空指標,則realloc的功能與malloc相同,用於分配一個指定長度newsize的儲存區。

這些分配例程通常透過sbrk(2)系統呼叫實現。該系統呼叫擴充(或縮小)程序的堆。雖然sbrk可以擴充或縮小一個程序的儲存空間,但是大多數 malloc和free的實現都不減小程序的儲存空間。釋放的空間可供以後再分配,但將它們保持在malloc池中而不返回給核心。

應當注意的是,大多數實現所分配的儲存空間比所要求的要稍大一些,額外的空間用來記錄管理資訊分配塊的長度,指向下一個分配塊的指標等等。這就意味著如果寫過一個已分配區的尾端,則會改寫後一塊的管理資訊。這種型別的.錯誤是災難性的,但是因為這種錯誤不會很快就暴露出來,所以也就很難發現。

將指向分配塊的指標向後移動也可能會改寫本塊的管理資訊。其他可能產生的致命性的錯誤是:釋放一個已經釋放了的塊;呼叫free時所用的指標不是三個 alloc函式的返回值等。因為儲存器分配出錯很難跟蹤,所以某些系統提供了這些函式的另一種實現方法。每次呼叫這三個分配函式中的任意一個或free時都進行附加的出錯檢驗。在呼叫連線編輯程式時指定一個專用庫,則在程式中就可使用這種版本的函式。此外還有公共可用的資源(例如由4.3+BSD所提供的),在對其進行編譯時使用一個特殊標誌就會使附加的執行時間檢查生效。

因為儲存空間分配程式的操作對某些應用程式的執行時間效能非常重要,所以某些系統提供了附加能力。例如,SVR4提供了名為mallopt的函式,它使程序可以設定一些變數,並用它們來控制儲存空間分配程式的操作。還可使用另一個名為mallinfo的函式,以對儲存空間分配程式的操作進行統計。請檢視所使用系統的malloc(3)手冊頁,弄清楚這些功能是否可用。

.alloca函式

還有一個函式也值得一提,這就是alloca。其呼叫序列與malloc相同,但是它是在當前函式的棧幀上分配儲存空間,而不是在堆中。其優點是:當函式返回時,自動釋放它所使用的棧幀,所以不必再為釋放空間而費心。其缺點是:某些系統在函式已被呼叫後不能增加棧幀長度,於是也就不能支援alloca 函式。儘管如此,很多軟體包還是使用alloca函式,也有很多系統支援它。