國家計算機二級《C語言》操作題練習及答案2016

來源:文萃谷 8.41K

  一、程序填空題(共18分)

國家計算機二級《C語言》操作題練習及答案2016

下列給定程序中,函數fun的功能是:從形參SS所指字符串數組中,刪除所有串長超過k的字符串,函數

返回剩餘字符串的個數。ss所指字符串數組中共有N個字符串,且串長小於M。

請在程序的下劃線處填入正確的內容並將下劃線刪除,使程序得出正確的結果。注意:部分源程序在文件BLANKl.C中。

不得增行或刪行.也不得更改程序的結構!

  二、程序修改題(共18分)

下列給定程序中函數fun的功能是:逐個比較P.q所指兩個字符串對應位置上的字符,並把ASCIl值大或相等的字符依次存放到C所指的數組中,形成一個新的字符串。

例如,若主函數中a字符串為“aBCDeFgH”,b字符串為“Abed”,則C中的字符串應為“aBcdeFgH”。請改正程序中的錯誤,使它能得出正確的.結果。

注意:部分源程序在文件MODll.C中,不得增行或刪行,也不得更改程序的結構!

  三、程序設計題(共24分)

規定輸入的字符串中只包含字母和*號。請編寫函數fun,其功能是:除了字符串前導的。號之外,將串中其他*號全部刪除。在編寫函數時.不得使用C語言提供的字符串函數.

  參考答案

  一、程序填空題

【參考答案】

(1)N(2)k(3)ss[i]

【考點分析】

本題考查:for循環語句;ff語句條件表達式;字符串拷貝

函數strcpy的使用。

【解題思路

填空1:for循環語句作用是遍歷字符串數組中的每一個字符串,所以循環變量i的循環條件是i&1t;N。

填空2:題目要求刪除串長度小於k的字符串,所以if條件語句的條件表達式是1en&1t;=k。。

填空3:通過字符串拷貝函數將串長不大於k的字符串另存,並記錄個數。

【解題寶典】

字符串拷貝函數strcpy,其格式為:strcpy(字符數組名1,字符數組名2)功能:把字符數組2中的字符串拷貝到字符數組1中。字符串結束標識‘、0’也一同拷貝。字符數名2,也可以是一個字符串常量。這時相當於把一個字符串賦予一個字符數組。

  二、程序修改題

【參考答案】

(1)int k=0;(2)whffe(+p11+q)

【考點分析】

本題考查:變量初始化,需根據題意確定變量含義,然後對其進行初始化操作;whi1e循環語句。

【解題思路】

(1)變量k存放數組c的下標,因此應初始化為0。

(2)whi1e循環語句的循環條件是判斷兩個字符串是否到達結尾。

  三、程序設計題

【參考答案】

程序設計題解析:

【考點分析】

本題考查:指針型變最定義;wh醜e循環語句;語句條件 表達式;字符串結束標識‘