2016年計(jì)算機(jī)二級(jí)考試C++模擬題及答案(5)

字號(hào):


    簡(jiǎn)單應(yīng)用題
    已知考生的記錄由學(xué)號(hào)和學(xué)習(xí)成績(jī)構(gòu)成,N名考生的數(shù)據(jù)已存入a結(jié)構(gòu)體數(shù)組中。請(qǐng)編寫函數(shù)fun,該函數(shù)的功能是:找出成績(jī)最低的考生記錄,通過(guò)形參返回主函數(shù)(規(guī)定只有一個(gè)最低分)。已給予出函數(shù)的首部,請(qǐng)完成該函數(shù)。
    注意:部分源程序已存在文件kt8_2.cpp中。
    請(qǐng)勿改動(dòng)主函數(shù)main和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號(hào)中填入所編寫的若干語(yǔ)句。
    文件kt8_2.cpp的內(nèi)容如下:
    #include
    #include
    #include
    #defineN10
    typedefstructss
    {charnum[10];
    ints;
    }STU;
    voidfun(STUa[],STU*s)
    {
    }
    voidmain()
    {STU
    a[N]={{"A01",81},{"A02",89},{"A03",66},{"A04",87},{"A05",77},{"A06",90},{"A07",79},{"A08",61},{"A09",80},{"A10",71}},m;
    fun(a,&m);
    cout<<"*****Theoriginaldate*****"<
    cout<<"Thelowest:"<
    【參考答案】
    fun(STU a[],STU *s)
    {int i, min;
    min=a[0].s;
    for(i=0;i
    if(a[i].s
    {min=a[i].s;
    *s=a[i];}}
    【試題解析】
    解題思路為:先假設(shè)第一個(gè)考生的成績(jī),通過(guò)循環(huán)找到最低成績(jī),并將最低成績(jī)的考生記錄傳給指針s,帶回主函數(shù)。