2012搜狗校園招聘筆試題

2022-03-17 19:02:39 字數 1480 閱讀 1369

1、下面**中for迴圈共執行了多少次?

unsigned short i,j;

for(i=0, j=2; i!=j; i+=5, j+=7)

{}

unsigned short占用2個位元組,當資料範圍到頭了(2^16-1),就又從0開始計數了,這個其實就是兩輛汽車行駛在乙個圓圈裡的汽車追及問題。乙個速度為5,乙個速度為7,當速度為7的超越速度為5的時候,兩個汽車就相遇了,2 + 7n - 5n = 2^16 所以共迴圈了32767次。

2、下列**的輸出為多少?

int main(void)  

; enum ;

return 0;

}

a、c、e、h、x、y、z、w、s、t的值分別是多少?

在列舉型別中宣告的第乙個列舉成員它的默值為零。沒有顯示賦值的列舉成員的值,總是前乙個列舉成員的值+1。

a:0          c:6            e:5

h:0          x:1           y:2            z:3           w:121               s:100                 t:101

3、高度為1的平衡二叉樹節點為1個,高度為5的平衡二叉樹節點最少多少個?答案:12

平衡二叉樹:它是一 棵空樹或它的左右兩個子樹的高度差的絕對值不超過1,並且左右兩個子樹都是一棵平衡二叉樹,最小二叉平衡樹的節點的公式如下 f(n)=f(n-1)+f(n-2)+1

4、union test

;test test;

test.a[0]=256;

test.a[1]=255;

test.a[2]=254;

test.a[3]=253;

printf("%d\n",test.b);

問題:在80x86架構下,輸出什麼值?填空題。

輸出:-256

short型別佔2個位元組,如果右邊是低位址,左邊是高位址,那麼儲存如下:

1111  1111           0000   0000

test.a[1]               test.a[0]

顯然b占用上面的2個位元組,最高位為1,則是乙個負數,取反+1後,得到-256(1000 0001 0000 0000)

5、c++什麼時候使用拷貝建構函式?

在下面幾種情況下會呼叫拷貝建構函式:

a、   顯式或隱式地用同型別的乙個物件來初始化另外乙個物件。

b、  作為實參(argument)傳遞給乙個函式。如cclass(const cclass c_class)中,就會呼叫cclass的拷貝建構函式;

c、  在函式體內返回乙個物件時,也會呼叫返回值型別的拷貝建構函式;

6、以下程式輸出什麼?

int main(void)  

輸出:65535 -1

65535

4294967295

2012搜狗校園招聘筆試題

include using namespace std int main unsigned char p unsigned char input int s 0 int temp sizeof input for int i 0 ichar v p i if v 0 s v a i printf d...

2012搜狗校園招聘筆試題 1

最近發現了幾個公司招聘的筆試機試題,雖然是兩年前的,但是題目還不錯,所以做了做,下面給出自己對一些題的理解。問題描述 下面 中for迴圈共執行了多少次?unsigned short i,j for i 0,j 2 i j i 5,j 7 問題分析 首先,看到變數i和j都是無符號的整數,我們知道,無符...

搜狗校園招聘筆試

定義兩個大於2的偶數之間的距離,為這兩個數之間質數的個數。從小到大輸入n個大於2的偶數,輸出所有數兩兩之間距離的總和 應該有n n 1 2個距離,輸出總和就好 第一行是輸入偶數的個數,最小為2,最大可能到幾萬。之後每行為乙個偶數,最小是4,最大可能是幾百萬,不重複的公升序排列。輸出資料兩兩間距離的總...