C面試題庫二

2021-05-22 03:13:52 字數 3968 閱讀 8020

96.struct name1

struct name2

sizeof(struct name1)=?

sizeof(struct name2)=?

8、12

97. 讀檔案file1.txt的內容(例如):

1234

56輸出到file2.txt:

5634

12(逆序)

2)輸出和為乙個給定整數的所有組合

例如n=5

5=1+4;5=2+3(相加的數不能重複)

則輸出1,4;2,3。

注意可增長陣列的應用.

#include

#include

int main(void)

fp2 = fopen("b.txt","w");

if(fp2 == null)

int i = 0;

int j = 0;

while(fscanf(fp1,"%d",&a[i]) != eof)

a = b;}}

for(;--j >= 0;)

fprintf(fp2,"%d\n",a[j]);

fclose(fp1);

fclose(fp2);

return 0;

}98. 乙個遞規反向輸出字串的例子,經典例程.

void inverse(char *p)

int main(int argc, char *argv)

99. 用遞迴演算法判斷陣列a[n]是否為乙個遞增陣列。

遞迴的方法,記錄當前最大的,並且判斷當前的是否比這個還大,大則繼續,否則返回false結束:

bool fun( int a, int n )

100. 什麼是可重入性?

可重入(reentrant)函式可以由多於乙個任務併發使用,而不必擔心資料錯誤。相反,不可重入(non-reentrant)函式不能由超過乙個任務所共享,除非能確保函式的互斥(或者使用訊號量,或者在**的關鍵部分禁用中斷)。可重入函式可以在任意時刻被中斷,稍後再繼續執行,不會丟失資料。

可重入函式要麼使用本地變數,要麼在使用全域性變數時保護自己的資料。

可重入函式:

不為連續的呼叫持有靜態資料。

不返回指向靜態資料的指標;所有資料都由函式的呼叫者提供。

使用本地資料,或者通過製作全域性資料的本地拷貝來保護全域性資料。

如果必須訪問全域性變數,記住利用互斥訊號量來保護全域性變數。

絕不呼叫任何不可重入函式。

101. 給出下列程式的結果:

char str1 = "abc";

char str2 = "abc";

const char str3 = "abc";

const char str4 = "abc";

const char *str5 = "abc";

const char *str6 = "abc";

char *str7 = "abc";

char *str8 = "abc";

cout < < ( str1 == str2 ) < < endl; cout < < ( str3 == str4 ) < < endl; cout < < ( str5 == str6 ) < < endl; cout < < ( str7 == str8 ) < < endl;

結果是:0 0 1 1 str1,str2,str3,str4是陣列變數,它們有各自的記憶體空間;而str5,str6,str7,str8是指標,它們指向相同的常量區域。

102. 以下**中的兩個sizeof用法有問題嗎?

void uppercase( char str ) // 將 str 中的小寫字母轉換成大寫字母

char str = "abcde";

cout < < "str字元長度為: " < < sizeof(str)/sizeof(str[0]) < < endl;

uppercase( str );

cout < < str < < endl;

答案:函式外的str是乙個靜態定義的陣列,因此其大小為6,因為還有'\0',

函式內的sizeof(str)返回4。

103. 乙個32位的機器,該機器的指標是多少位答案:

指標是多少位只要看位址匯流排的位數就行了。80386以後的機子和arm都是32的資料匯流排。所以指標的位數就是4個位元組了。

看cpu暫存器寬度。

104. 請問以下**有什麼問題:

int main()

答案:沒有為str分配記憶體空間,將會發生異常問題出在將乙個字串複製進乙個字元變數指標所指位址。雖然可以正確輸出結果,但因為越界進行內在讀寫而導致程式崩潰。

105. int (*s[10])(int) 表示的是什麼啊?

答案:int (*s[10])(int) 函式指標陣列,每個指標指向乙個int func(int param)的函式。

106. 有以下表示式:

int a=248;

int b=4;

int const c=21;

const int *d=&a;

int *const e=&b;

int const *f const =&a;

請問下列表示式哪些會被編譯器禁止?為什麼? *c=32;d=&b;*d=43;e=34;e=&a;f=0x321f;

答案:*c 這是個什麼東東,禁止;

*d 說了是const, 禁止;

e = &a 說了是const , 禁止;

const *f const =&a; 禁止

107.c和c++中的struct有什麼不同?

答案:c和c++中struct的主要區別是c中的struct不可以含有成員函式,而c++中的struct可以。c++中struct和class的主要區別在於預設的訪問許可權不同,struct預設為public,而class預設為private

108.類的靜態成員和非靜態成員有何區別?

答案:類的靜態成員每個類只有乙個,非靜態成員每個物件乙個

109.純虛函式如何定義?使用時應注意什麼?

答案:virtual void f()=0; 是介面,子類必須要實現

110.

int main()

問函式既然不會被其它函式呼叫,為什麼要返回1?

答案:mian中,c標準認為0表示成功,非0表示錯誤。具體的值是某中具體出錯資訊

111. 已知乙個陣列table,用乙個巨集定義,求出資料的元素個數』

答案: #define ntbl (sizeof(table)/sizeof(table[0]))

112. -1,2,7,28,,126請問28和126中間那個數是什麼?為什麼?

答案:答案應該是4^3-1=63 規律是n^3-1(當n為偶數0,2,4) n^3+1(當n為奇數1,3,5)

113.直接鏈結兩個信令點的一組鏈路稱作什麼?

答案:ppp點到點連線

114. 確定模組的功能和模組的介面是在軟體設計的那個隊段完成的?

答案:概要設計階段

115.

enum string x;

問x的取值是?

答案:取值在0。1。10。11。12中的乙個

116.

unsigned char *p1;

unsigned long *p2;

p1=(unsigned char *)0x801000;

p2=(unsigned long *)0x810000;

請問p1+5p2+5= ;

答案:801005;810014。不要忘記了這個是16進製制的數字,p2要加20變為16進製制就是14

: 117. ethternet鏈結到internet用到以下那個協議? b

a.hdlc;b.arp;c.udp;d.tcp;e.id

118.屬於網路層協議的是: a

a.tcp;b.ip;c.icmp;d.x.25

119. windows訊息排程機制是: c

a.指令佇列;b.指令堆疊;c.訊息佇列;d.訊息堆疊;

C證面試題庫

中小學心理健康教育教師c級資格證書面試試題2 心理健康教育活動課構思與設計 一 活動內容範圍 如何幫助學生增強自信心?請根據所指定的活動內容範圍,以自己所在學校的學生為物件,構思與設計一堂心理健康教育活動課,並簡述各項設計安排的主要理論依據。時間不超過10分鐘。敘述中應包括以下內容 1 本堂活動課的...

通用面試題面試題庫

說明 本題庫適用於面試時抽取問題 參照使用,每名候選人使用4 6題為宜,關鍵性人才適當增加,可根據現場情況繼續追問。本題庫將不斷完善 充實。1.語言表達 儀表 2.工作經驗 3.應聘動機與期望 4.事業心 進取心 自信心 5.工作態度 組織紀律性 誠實可靠性 6.分析判斷能力 7.應變能力 8.自知...

STAR面試題庫

2012 10 23 1職業道德和價值觀 選 2 3題 情說明您有過很好的設想並且將它付諸實現的過程,那是為了解決什麼問題?您的設想又是怎樣解決那個問題?請告訴我您曾經怎樣必須學用一種新的方式去做某件事,或者必須去學做一件新的事情,等等 請說一說您曾經怎樣在困難的條件下從事工作 比如時間緊迫,競爭壓...