问答题
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程proj3,其中声明的DataList类,是一个用于表示数据表的类。sort成员函数的功能是将当前数据表中的元素升序排列。请编写这个sort函数。程序的正确输出应为: 排序前:7,1,3,11,6,9,12,10,8,4,5,2 排序后:1,2,3,4,5,6,7,8,9,10,11,12 要求: 补充编制的内容写在“//**********333**********”与“//**********666**********”两行之间。不得修改程序的其他部分。 注意:程序最后将结果输出到文件out.dat中。输出函数writeToFile已经编译为obj文件,并且在本程序调用。 //DataList.h #include<iostream> using namespace std; class DataList{//数据表类 int len; double*d;public: DataList(int len,double data[]=NULL); ~DataList(){delete[]d;} int length()const{return len;}//数据表长度(即数据元素的个数) double getElement(int i)const{return d[i];} void sort();//数据表排序 void show()const;//显示数据表};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<len;i++) d[i]=(data==NULL0.0:data[i]);}void DataList::sort(){//数据表排序//**********333**********//**********666**********}void DataList::show()const{//显示数据表 for(int i=0;i<len—1;i++)cout<<d[i]<<","; cout<<d[len—1]<<endl;}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<<endl<<"排序后:"; list.show(); writeToFile("",list); return 0;}
【参考答案】
正确答案:for(int i=0;i<len;++i) //从头遍历数组d for(int j=i;j<len;++j)......
(↓↓↓ 点击下方‘点击查看答案’看完整答案、解析 ↓↓↓)