2016年9月計算機二級《C語言》操作題題庫

  一、程序填空題

2016年9月計算機二級《C語言》操作題題庫

給定程序中,函數tim的功能是:計算X所指數組中N個數的平均值(規定所有數均爲正數),平均值通過形參返回給主函數,將小於平均值且最接近平均值的數作爲函數值返回,並在主函數中輸出。

例如,有10個正數:46、30、32、40、6、17、45、15、48、26,平均值爲30.500000。主函數中輸出m=30。

請在程序的下畫線處填入正確的內容並把下畫線刪除,使程序得出正確的結果。

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

試題程序:

  二、程序修改題

下列給定程序中,函數fun的功能是:根據整型形參n,計算如下公式的值。

例如,若n=10,則應輸出0.617977。

請改正程序中的錯誤,使它能得出正確的結果。

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

試題程序:

  三、程序設計題

下列程序定義了N×N的二維數組,並在主函數中自動賦值。請編寫函數fun(int a[]

[N],int m),該函數的功能是使數組右上半三角元素中的值乘以m。

  參考答案及解析

  一、程序填空題

【參考答案】

(1)*av(2)i(3)x[j]

【解題思路】

填空1:從原程序中可以看出+av代表的是平均值,而sYN表示的就是平均值,因此本空應該填*av。

填空2:if語句來判斷找最接近平均值的.數,因而此空應該填i。

填空3:題目要求將小於平均值且最接近平均值的數作爲函數返回,而j表達的是最接近平均值的數在數組中的下標,因而本空應該填寫x[j]。

  二、程序修改題

【參考答案】

(1)float funf int n)

(2)for(i=2;i<=n;i++)

【解題思路】

(1)根據函數的返回值可知,函數應定義爲float型。

(2)該題中函數fun的作用是計算數列前n項的和,而數列的組成方式是:第n項的分母是1加第11一l項的值,分子爲1,如果循環累加按for(i=2;i

  三、程序設計題

【參考答案】

【解題思路】

本程序實現將矩陣中右上半三角元素中的值乘以m,使用循環語句遍歷數組元素,第1個循環用於控制行座標,第2個循環用於控制列下標。