C語言考核

2022-02-05 12:50:27 字數 2540 閱讀 6164

c語言期末考核開卷不許交流獨立完成

4分1. 表示式sizeof(「abcde」)的結果是_

表示式strlen(「abcde」)結果是_

sizeof 是_ strlen是_

a. 運算子 b. 表示式 c. 函式 d. 變數

sizeof在 _得到結果, 而呼叫strlen在 _得到結果.

a. 預處理時 b. 編譯期 c. 執行期 d. 鏈結時

6, 5

a. c. b. c.

4分2. 如果意圖是輸出」abcde」並換行, 下面的**正確嗎?

char ch[5] = 「abcde」;

puts(ch);

錯誤.ch[5]不夠容納字串常量.

4分3. 以下**正確嗎?

char *p = "china unix.";

p[6] = 『u』;

錯誤.不能修改唯讀常量.

5分4. 以下語句, 具有可預期行為的是(多選, 假設所有變數都定義為整型變數):

a. a = ib. i = i++;

c. a = (i++) + (i++); d. a = (i++) + (j++);

ad5分

5. 以下說法正確的是(多選):

a. 乙個程式的棧在該程式開始執行之前是不存在的.

b. 資料段, bss段在程式載入完畢到程式退出前一直存在, 因此全域性變數從程式開始執行到程式執行結束期間一直存在.

c. 兩個序列點之間不允許多個***發生.

d. 對於條件表示式語句(a > b? a : b;), ?是乙個序列點.

abd6分

6. 說出以下定義語句分別表示什麼意思.用自己的語言描述.

const int * p;

定義了乙個指標變數p,

它指向const int型別.

p本身可以被修改.

不能通過p修改p指向的變數.

const int * const * p;

定義了乙個二級指標變數p.

p本身可以被修改.

不能通過p修改*p,

也不能通過*p 修改 **p.

int *ary[2][3];

定義了乙個二維陣列ary,

其每個元素是乙個指向int型別的指標.

int (*ary[5])[10];

定義了乙個一維陣列ary,

ary的每個元素是int (*)[10]型別,

或者ary的每個元素是指向int [10]

型別的指標.

int * (*func[10])(int, int);

定義了乙個一維陣列func,

func的每個元素是函式指標型別.

int * (*)(int, int)

或者, func的每個元素是乙個指標,

指向返回值為int *型別, 引數列表

為(int, int)的函式型別.

6分7. 簡述static關鍵字的作用.

1. 修飾變數, 使之成為靜態變數.

2. 修飾函式, 使之只能被本檔案引用.

6分8. 全域性變數的作用域?

全域性變數的生存期?

區域性變數的作用域?

區域性變數的生存期?

作用域是乙個靜態概念(編譯期概念).

生存期是乙個動態該念(執行期概念).

全域性變數的作用域是從其宣告處開始,

到本檔案結束.

全域性變數的生存期是從程式執行開始,

到程式執行結束.

區域性變數的作用域是從其宣告處開始,

到函式體結束.

區域性變數的生存期是程式執行時, 函式

呼叫時開始存在, 函式呼叫結束後消失.

以下全部要求上機程式設計實現.

10分9. 定義整型陣列 int a[10];

1). 對該整型陣列隨機賦值, 並輸出每個元素的值.

2). 對該陣列從小到大排序, 輸出排序結果.

3). 找出該陣列中第二大的數, 輸出結果.

5th. bubble_sort

4th. w4

8分10. 使用者輸入乙個字串(設輸入長度不大於63個字元. )將該字串翻轉(例: abcde 翻轉為 edcba )並輸出.

10分11. 實現乙個函式, 該函式從標準輸入讀取使用者輸入的字串, 使用者輸入字串長度不固定.

12分12. 使用者輸入長度不固定的字串. 之後使用者輸入乙個字元, 再輸入乙個數字, 以此數字作為下標(意思是從0開始計數)將使用者輸入的字元插入到使用者輸入的字串中.

輸出插入字元之後的字串(如果使用者輸入下標錯誤, 程式要能判斷並告知使用者輸入的下標不合法).

15分13. 使用者輸入長度不固定的字串. 將此字串劃分為單詞(假設為單詞之間的分隔符). 單詞個數和單詞長度均不確定.輸出所有的單詞.

8th. w1

5分14. 使用者輸入任意四則表示式子(乙個字串. 例: 1 + 2 /(1 + 2) + 3 / (1 + 2 + 3) ). 求該式子的結果. 要求能處理小數.

ps: (12.3 + -3.8)這樣的式子可以被判定為不合法輸入.也可以將其判定為合法輸入, 只要能處理出正確的結果.

c語言考核3 new

要求讀入 madam i m adam 輸出 yes 讀入 abcdba輸出 n0 附加 5 運動員分組 1.有n個人參加100公尺短跑比賽。跑道為8條。程式的任務是按照盡量使每組的人數相差最少的原則分組。2.例如 3.n 8時,分成1組即可。4.n 9時,分成2組 一組5人,一組4人。5.n 25...

C語言程式設計》形成性考核作業

7.使用 typedef char bb 10 50 語句定義為含有10行50列的二維字元陣列型別。8.儲存字元 a 需要占用儲存器的個位元組空間。9.空字串的長度為 10.儲存乙個空字串需要占用個位元組。11.字串 a xxk 資料 的長度為 12.用於儲存乙個長度為n的字串的字元陣列的長度至少為...

C語言程式設計形成性考核冊

c語言程式設計形成性作業一 一 選擇題 1.在每個c語言程式中都必須包含有這樣乙個函式,該函式的函式名為 a a main b main c name d funtion 2 c語言原程式檔案的預設擴充套件名為 a a cpp b exe c obj d c 3 由c語言目標檔案連線而成的可執行的預...