2016計算機(jī)二級考試題庫:《C++》綜合應(yīng)用題練習(xí)

字號:

四、綜合應(yīng)用題
    43請使用VC6或使用【答題】菜單打開考生文件夾proj3下的工程proj3,其中聲明的DataList類,是一個用于表示數(shù)據(jù)表的類。DataList的重載運算符函數(shù)0perator+,其功能是求當(dāng)前數(shù)據(jù)表與另一個相同長度的數(shù)據(jù)表之和;即它返回一個數(shù)據(jù)表,其每個元素等于相應(yīng)兩個數(shù)據(jù)表對應(yīng)元素之和。請編寫這個operator+函數(shù)。程序的正確輸出應(yīng)該是:
    兩個數(shù)據(jù)表: 1,2,3,4,5,6 3,4,5,6,7,8 兩個數(shù)據(jù)表之和:
    4,6,8,10,12,14 要求:
    補(bǔ)充編制的內(nèi)容寫在“//********333********”與“//********666********”之間,不得修改程序
    的其他部分。
    注意:程序最后將結(jié)果輸出到文件。ut.dat中。輸出函數(shù)writeToFile已經(jīng)編譯為。bj文件,并且在本程序中調(diào)用。
    //DataList.h
    #inClude using namespaCe std;
    ClaSS DataList{//數(shù)據(jù)表類 intfen;
    double*d; publiC:
    DataList(int len,double data[]=NULL); DataList(DataList&data);
    int length()Const{retum len;}
    double getElement(int i)Constt return d[i];}
    DataList operator+(Const DataList&list)Const;//兩個數(shù)據(jù)表求和 void show()Const;//顯示數(shù)據(jù)表
    };
    void writeToFile(Char$,Const DataList&); //main.Cpp
    #inClude”DataList.h”
    DataList::DataList(int len,double data[]):len(ien){ d=new double[1en];
    for(int i=0;i
    d㈨i=(data==NULL?0.0:data[i]);
    }
    DataList::DataList(DataList&data):len(data.1en){ d=new double[1en];
    for(int i=0;i
    DataList DataList::0perator+(Con8t DataList&list,)Const{//兩個數(shù)據(jù)表求和 double*dd=new double[1ist.1ensth()];
    //********333********
    //********666********
    return DataList(1ist.1ength(),dd); }
    void DataList::show()Const{//顯示數(shù)據(jù)表 f()r(int。i=0;i
    eout<
    Cout<
    int main(){
    double sl[]={1,2,3,4,5,6};
    double s2[]={3,4,5,6,7,8};
    DataList list1(6,sl),list2(6,s2);//定義兩個數(shù)據(jù)表對象 eout<<”兩個數(shù)據(jù)表:”<
    listl.show(): list2.show(); eout<
    (1istl+list2).show();
    writeToFile(””,listl+list2); return 0:
    參考解析:
    f0T(int i=0;i
    dd[i]=d[i]+list.d[i];