這次有關嵌入式測試題是根據C/C++及數據庫這些常考試題,小編為大家總結的這些易考試題!復習好這些基礎題以免在筆試現場掉鏈子,注:往往基礎的也恰恰是很重要的!希望能幫助你們。
1、有一個用數組 C[1..m]表示的環形隊列,m 為數組的長度。假設 f 為隊頭元素在數組中的位置,r 為隊尾元素的后一位置(按順時針方向)。若隊列非空,則計算隊列中元素個數的公式應為
A.(m+r-f)mod m
B.r-f
C.(m-r+f) mod m
D.(r-f) mod m
2、函數x的定義如下,問x(x(8)需要調用幾次函數x(int n)?
int x(int n){
cnt++;
if (n<=3)
{
return 1;
}
else
{
return x(n-2)+x(n-4)+1;
}
}
A.16
B.18
C.20
D.22
3、下面有關java final的基本規則,描述錯誤的是
A.final修飾的類不能被繼承
B.final修飾的成員變量只允許賦值一次,且只能在類方法賦值
C.final修飾的局部變量即為常量,只能賦值一次。
D.final修飾的方法不允許被子類覆蓋
4、int (*p)[3] p的含義是什么
A.一個指向int元素大小為3的指針數組
B.一個指向元素個數為3的int數組的指針
C.不合法
D.以上說法都不正確
5、4個圓盤的Hanoi塔,總的移動次數為()
A.8
B.16
C.7
D.15
6、設森林F中有三棵樹,第一、第二、第三棵樹的結點個數分別為M1、M2和M3,與森林F對應的二叉樹根結點的右子樹上的結點個數是()
A.M1
B.M1+M2
C.M2+M3
D.M3
7、工程師M發明了一種游戲:M將一個小球隨機放入完全相同的三個盒子中的某一個,玩家選中裝有球的盒子即獲勝;開始時M會讓玩家選擇一個盒子(選擇任何一個獲勝概率均為1/3);玩家做出選擇后,M會打開沒有被選擇的兩個盒子中的一個空盒,此時M會詢問玩家是否更改選擇(可以堅持第一次選擇,也可以選擇另一個沒有打開的盒子),下列敘述正確的有()
A.若不改選,玩家的獲勝概率是1/2
B.無論怎么選擇,獲勝的概率都是1/2
C.選擇另一個沒有被打開的盒子獲勝概率更高
D.獲勝概率取決于隨機因素(如小球的實際位置)
8、有一個二維數組a[1...100 , 1...65]有100行,65列,我們以行序為主序,如果該數組的基地址是10000,且每個元素占2個存儲單元,請問a[56 , 22]的存儲地址是 1 。注意是下標是從1開始的
參考答案:
1~5:ABBBD 6~7:CC 8:17192