首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请打开考生文件夹下的解决方案文件proj3,其中声明的DataList类,是一个用于表示数据表的类。sort成员函数的功能是将当前数据表中的元素升序排列。请编写这个sort函数。程序的正确输出应为: 排序前:7,1,3,11,6,9,12,10,8,4,5
请打开考生文件夹下的解决方案文件proj3,其中声明的DataList类,是一个用于表示数据表的类。sort成员函数的功能是将当前数据表中的元素升序排列。请编写这个sort函数。程序的正确输出应为: 排序前:7,1,3,11,6,9,12,10,8,4,5
admin
2021-05-06
69
问题
请打开考生文件夹下的解决方案文件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{returnlen;}
//数据表长度(即数据元素的个数)
double getElement(int i)const{return d
;}
void sort( );//数据表排序
void show( )const;//显示数据表
};
void writeToFile(char*,constDataList&);
//main.cpp
#include"DataList.h"
DataList::DataList(intlen,double data[ ]):len(len){
d=new double[len];
for(int i=0;i<len;i++)
d
=(data==NULL?0.0:
data
);
}
void DataList::sort( ){//数据表排序
//********333********
//********666********
}
void DataList::show( )const{//显示数据表
for(int i=0;i<len-1;
i++)tout<<d
<<",";
tout<<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);
return0;
}
选项
答案
for(int i=0;1<len;++i)//从头遍历数组d for(int j=i;j<len;++j)//从i+1处遍历数组d if(d[i]>d[j])//d[i]和d[j]比较人,如果大于,就d[i]和d[j]值交换 { int temp=d[i];//把临时整型变量temp赋值为d[i] d[i]=d[j];//把d[j]赋值给d[i] d[j]=temp;//把temp值赋给d[j] }
解析
本题使用最简单的冒泡排序算法,首先明确要排序的动态数组d,其长度为len,在此可以使用两个下标i和j相比较,当d
>d[j]时,数组内的值利用中间变量temp进行交换。
转载请注明原文地址:https://kaotiyun.com/show/OWfp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
使用VC++6.0打开考生文件夹下的源程序文件3.cpp。其中定义的类不完整,按要求完成下列操作,将类的定义补充完整。(1)定义类的公有数据成员函数No、Name[32],其中No是int型的数据,Name[32]为字符型。请在注释1后添加适当的
每个C++程序中都必须有且仅有一个()。
下列程序执行后,屏幕的输出是()。#includeusingnamespacestd;voidswap(intx,intY){Inttemp=x;x=y;
有如下程序:#includeusingnamespaeestd;classMyClass{public:MyClass(inti=0){cout
请使用Ve6或使用【答题】菜单打开考生目录pmj3下的工程文件pmj3。此工程中包含一个源程序文件proj3.cpp,其中定义了用于表示平面坐标系中的点的类MyPoint和表示三角形的类MyTriangle;程序应当显示:6.828432但程序中有缺
为了提高函数调用的实际运行速度,可以将较简单的函数定义为()。
下列关于C++函数的说明中,正确的是()。
设一棵完全二叉树共有700个结点,则此二叉树中的叶子结点数为()。
一棵二叉树中共有80个叶子结点与70个度为1的结点,则该二叉树中的总结点数为
随机试题
企业经营战略层次体系包括()
给核心过程提供基础保证的活动过程称为()
煨法的目的是煅法的目的是
根据《中华人民共和国测绘法》,测量土地、建筑物、构筑物和地面其他附者物的权属界址线应当按照()确定的权属界线的界址点、界址线或者提供的有关登记资料和附图进行。
实行资本资金制度的投资项目,资本金的筹措情况应该在()中做出详细说明。
某市一基础设施项目进行招标,现拟组建评标委员会,按《评标委员会和评标方法暂行规定》,下列人员中不得担任评标委员会成员的有()。
如某建筑工程承包合同中订有仲裁条款,则双方结算价款产生纠纷时,可()。
某公司为了提升公司的业绩,通过对外招聘的方式,招聘了一名新的业务经理小张,小张在笔试方面表现非常优异。公司对他寄予了厚望。此外,小张培养了一名得力助手,非常优待他,但是对其他员工要求非常的严格,而且并不喜欢采纳员工的意见,因而和下级相处的并不好。一年过去了
从所给的四个选项中,选择最合适的一个填入问号处,使之呈现一定的规律性:
A、HefeltboringabouttheTVprogram.B、Helosthismealticketsinthecafeteria.C、HemissedagoodTVprogram.D、HisTVwas
最新回复
(
0
)