2017年計(jì)算機(jī)二級C語言考前模擬試題及答案4

字號:


    二、程序填空題(共18分l
    下列給定程序中,函數(shù)fun的功能是:把形參a所指數(shù)組中的小值放在元素a[o]中,接著把a(bǔ)_所指數(shù)組中的大值放在a[1]元素中;再把a(bǔ)所指數(shù)組元素中的次小值放在a[2]中,把a(bǔ)所指數(shù)組元素中的次大值放在a[3],以此類推。
    例如,若a所指數(shù)組中的數(shù)據(jù)初排列為:9、1…4 2 3、6、5、8、7;則按規(guī)則移動后,數(shù)據(jù)排列為:1、9.2、8:3、7、4、6、5。形參13.中存放a所指數(shù)組中數(shù)據(jù)的個(gè)數(shù)?!?BR>    規(guī)定fum函數(shù)中的max存放當(dāng)前所找的大值,px存放當(dāng)前所找大值的下標(biāo)。請?jiān)诔绦虻南聞澗€處填人正確的內(nèi)容并將下劃線刪除,使程序得出正確的結(jié)果。注意:部分源程序在文件BLANKl.C中。不得增行或刪行,也不得更改程序的結(jié)構(gòu)!
    2016年計(jì)算機(jī)二級C語言考前30天必做題(2)
    2016年計(jì)算機(jī)二級C語言考前30天必做題(2)
    三、程序修改題(共18分)
    下列給定程序中函數(shù)fun的功能是。用遞歸算法計(jì)算斐波拉契數(shù)列中第n項(xiàng)的值。從第l項(xiàng)起,斐波拉契數(shù)列為:1、1、2、3、5、8、l3、21、……
    例如,若給n輸入7,則該項(xiàng)的斐波拉契數(shù)值為l3。請改正程序中的錯誤,使它能得出正確的結(jié)果。注意:部分源程序在文件MODll.C中,不得增行或刪行,也不得更改程序的結(jié)構(gòu)。
    2016年計(jì)算機(jī)二級C語言考前30天必做題(2)
    四、程序設(shè)計(jì)題(共24分)
    某學(xué)生的記錄由學(xué)號、8門課程成績和平均分組成,學(xué)號和8門課程的成績已在主函數(shù)中給出,請編寫函數(shù)fun,其功能是:求出該學(xué)生的平均分,并放入記錄的ave成員中。
    例如,學(xué)生的成績是:85.5,76,69.5,85,91,72,64.5,87.5,則他的平均分應(yīng)為78.875。注意:部分源程序在文件PROGl.C中。
    請勿改動主函數(shù)main和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fIm的花括號中填入你編寫的若干語句。
    2016年計(jì)算機(jī)二級C語言考前30天必做題(2)
    2016年計(jì)算機(jī)二級C語言考前30天必做題(2)
     
    二、程序填空題【參考答案】(1)a[i](2)a[j](3)a[j]
    【考點(diǎn)分析】
    本題考查:數(shù)組的引用;if語句條件表達(dá)式,如果表達(dá)式的值為真,則執(zhí)行下面的語句,如果該值為假,財(cái)不執(zhí)行下面的語句。
    【解題思路】
    填空l:for循環(huán)語句循環(huán)體中將數(shù)組元素a[i]賦值給變量max和變量rain。
    填空2:通過for循環(huán),找到數(shù)組中的大值,if語句的條件表達(dá)式是mu
    填空3:同理,此處if語句的條件表達(dá)式是min>a[j]。
    【解題寶典】
    求大值或者小值的題目,一般都是假設(shè)一個(gè)元素大或小,然后通過if條件語句將該元素和其他元素進(jìn)行比較操作來完成。
    三、程序修改題
    【參考答案】
    去掉分號
    (2Case l:caBe
    2:return l;
    【考點(diǎn)分析】
    本題考查:switch語句,其一般形式為switch(表達(dá)式)
    cage常量表達(dá)式l:語句l;case常量表達(dá)式2:語句2;
    cm常量表達(dá)式n:語句n;default:語句n+1;
    其中switch(表達(dá)式)后不應(yīng)該帶有“;”,同時(shí)case語句常量后應(yīng)該是“:”。
    【解題思路】
    C語言中,switch語句之后不能有分號,并且case語句常量后應(yīng)用的是冒號。.四、程序設(shè)計(jì)題【參考答案】
    void fun(STREC*a)
    inti:
    a一>ave=0.0:
    fbr(i=0;iave=a—>ave+·一>s[i];/*求各門成績的總和}/
    a->ave/=N;/}求平均分*/}
    【考點(diǎn)分析】
    本題考查:結(jié)構(gòu)體類型成員運(yùn)算,指向結(jié)構(gòu)體類型的指針變量作函數(shù)參數(shù)。
    【解題思路】
    本題考查自定義形參的相關(guān)知識點(diǎn),程序流程是這樣的:在如n()函數(shù)中求出平均分后,返回到主函數(shù)時(shí)平均分也要帶回,所以只能定義一個(gè)指針類型的形參STREC·a,此時(shí),引用成員的方式可以使用指向運(yùn)算符,即a一>ave和a—>s[i],當(dāng)然也可用(*a),ave和(*a).S[i]。