C C 校招筆試面試經典題目總結六

2021-07-03 23:48:48 字數 2281 閱讀 6044

解析:

const int minnumber = -32767 ;

int find_sec_max( int data , int count)

else

}return sec_max ;

}

解析:

第一種:

#include using namespace std;

void main() }

} }

#define int_ptr int*

typedef int*int_ptr;

int_ptr a,b;

int_ptr c,d;

a:a     b:b   c:c    d:d  e:都是指標   f:都不是指標

解析:b  注意define與typedef的區別。前者只是簡單的替換,替換後是int* a,b,b是int型別;typedef不是簡單替換 ,而是採用如同定義變數的方法那樣來宣告一種型別,c,d都是指標型別。

const char str1 = "abc";

const char str2 = "abc";

const char *p1 = "abc";

const char *p2 = "abc";

a:str1和str2位址不同,p1和p2位址相同

b:str1和str2位址相同,p1和p2位址相同

c:str1和str2位址不同,p1和p2位址不同

d:str1和str2位址相同,p1和p2位址不同

e:4個位址都相同

f:4個位址都不同

解析:選a。

str1和str2是棧空間中的兩個字元陣列,位址不同

p1和p2指向的位置在常量區,值都是「abc」所以是同一常量,位址相同

a:int i=0;i=(i++);

b:char *p=」hello」;p[1]=』e』;

c:char *p=」hello」;char ch=*p++;

d:int i=0;printf(「%d%d\n」,i++,i--);

e:都是未定義行為

f:都不是未定義行為

解析:c  

a,d:表示式的先後順序,是由編譯器決定的,有可能不同

b:常量字串不能修改,指標改為陣列可以。

int main(void)
a:預處理階段出錯

b:編譯階段出錯

c:彙編階段出錯

d:鏈結階段出錯

e:執行階段出錯

f:程式執行正常

解析:f

。雙斜槓之後的

www.csdn.net

被當做注釋了,那麼前面的http:是否合法?這就是c++中乙個幾乎不會被用到的語法,標籤。

帶標籤的語句是一種特殊的語句,在語句前面有乙個識別符號(即標籤,上段**中的http)和乙個冒號。使用goto

label

就可以跳到標籤處執行,比如可以在**中寫goto http,這樣就會執行cout語句了。

char a = "hello";

char b = "world";

const char *p1 = a;

char* const p2 = b;

a:p1++

b:p1[2]='w';

c:p2[2]='l';

d:p2++

解析:a,c。

p1是指向常量的指標,所指向的內容不能變,所以改變p1指向的值是不對的。

p2是乙個指標常量,它本身的指向不能改變,所以對p2的下標操作是不對的。

kmp具體的思想就是利用有限自動機來快速匹配,利用o(m)的空間來儲存pattern內pattern從左開始的所有連續子串的自我覆蓋程度。儲存的-1表示沒有任何覆蓋,儲存的0,表示有乙個匹配。然後利用建立好的這個覆蓋程式陣列,在kmp演算法中進行字串匹配失敗的時候,可以根據這個值來覺得待比較的位置前進的個數,而不是跟樸素的演算法一樣是乙個乙個前進的。

**實現:

void next(char str, int len)

}int kmp(char source,int lens,char pattern,int lenp)

{ int source_index=0;

int pattern_index=0;

next(pattern,lenp);

while(source_index明天努力更新!

C C 校招筆試面試經典題目總結二

接著昨天的總結繼續。題目11 define double x x x i 5 double 5 i 是多少?解答 這個題目和題目6是同乙個題型,這裡並不會出現i 5 5 5 50的結果,因為題目只是使用了x x來替代double x 注意x x並沒有使用括弧,所以結果應該為 i 5 x x 5 5 ...

C C 校招筆試面試經典題目總結三

題目21 求下面函式的返回值,輸入x 9999 微軟 int func x return countx 解答 其實這個程式的意思就是求9999的二進位制中有多少個1 別問我為什麼知道的,可以檢視劍指offer面試題10 知道了這個就很容易求解這個題目了!9 1024中含有1的個數為2 512中含有1...

C C 筆試經典題目

1.以下三條輸出語句分別輸出什麼?char str1 abc char str2 abc const char str3 abc const char str4 abc const char str5 abc const char str6 abc cout boolalpha str1 str2 ...