2016年計算機二級《C++》考前模擬應(yīng)用試題

字號:

三、簡單應(yīng)用題
    42請使用VC6或使用【答題】菜單打開考生文件夾proj2下的工程proj2,該工程中包含一個程序文件 main.cpp,其中有類CPolygon(“多邊形”)、CRectangle(“矩形”)、CTriangle(“三角形”)的定義。請在橫線處填寫適當(dāng)?shù)拇a并刪除橫線,以實現(xiàn)上述類定義。該程序的正確輸出結(jié)果應(yīng)為: 注意:只能在橫線處填寫適當(dāng)?shù)拇a,不要改動程序中的其他內(nèi)容,也不要刪除或移動“//****found****”。 #include
    {tout<<——<
    int area(void){return(width *height);}
    class CTriangle:public CPolygon{
    int length;//三角形一邊長 int height;//該邊上的高
    public:
    CTriangle(int l,int h):length(1),height(h){}
    //*********found*********
    int area(void){return(——)/2;}
    };
    int main(){
    CRectangle rect(4,5); CTriangle trgl(4,5);
    //*********found********* ______ *ppolyl,* ppoly2; ppolyl=▭
    ppoly2=&trgl;
    ppolyl->printarea(); ppoly2->printarea(); retun 0;
    參考解析:
    (1)virtual int area(void)=0;
    (2)area()
    (3)length*height
    (4)CPolygon
    四、綜合應(yīng)用題
    43請使用VC6或使用【答題】菜單打開考生文件夾proj3下的工程proj3,其中聲明的DataList類,是一個用于表示數(shù)據(jù)表的類。s0rt成員函數(shù)的功能是將當(dāng)前數(shù)據(jù)表中的元素升序排列。請編寫這個sort函數(shù)。程序的正確輸出應(yīng)為: .
    排序前:7,1,3,11,6,9,12,10,8,4,5,2 排序后:l,2,3,4,5,6,7,8,9,10,11,12
    要求:
    補充編制的內(nèi)容寫在“//********33********”與“//********666********”兩行之問。不得修
    改程序的其他部分。
    注意:程序最后將結(jié)果輸出到文件。ut.dat中。輸出函數(shù)writeToFile已經(jīng)編譯為。obj文件,并且在本程序
    調(diào)用。
    //DataList.h
    #inClude using namespaCe std; Class DataList{//數(shù)據(jù)表類
    int len;
    double*d: publiC:
    DataList(int len,double data[]=NULL);。DataList(){delete[]d;}
    int length(Constt retum len;}//數(shù)據(jù)表長度(即數(shù)據(jù)元素的個數(shù)) double getElement(int i)Const{return d[i];}
    void sort();//數(shù)據(jù)表排序
    void show()Const;//顯示數(shù)據(jù)表}.
    void writeToFile(Char*,Const DataList&).//main.Cpp
    #inClude”DataList.h”
    DataList::DataList(int len,double data[]):len(1en){ d=new double[1en];
    for(int i_0;i
    d[i]=(data==NULL?0.0:data[i]);
    }
    void DataList::sort(){//數(shù)據(jù)表排序//********333********
    //********666********}
    void DataList::show()Const{//顯示數(shù)據(jù)表
    for(int i=0;i
    }
    int main(){
    double S[]={7,1,3,11,6,9,12,10,8,4,5,2}; DataList list(12,S);
    Cout<<”排序前:”; list.show();
    list.sort();
    Cout<
    writeToFile(””,list); return 0;
    }
    參考解析:
    for(inti=0;i
    for(int j=i;j
    //從i+1處遍歷數(shù)組d
    if(d[i]>d[j])
    //d[j]和d[j]比較人,如果大于,就d[i]和d[j]值交換
    {
    inttemp=d[i];
    //把臨時整型變量temp賦值為cJ[i]
    d[i]=d[j];//把d[j]賦值給d[i]
    d[j]=temp;//把temp值賦給d[j]
    }