首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程proj3,其中声明的DataList类,是一个用于表示数据表的类。sort成员函数的功能是将当前数据表中的元素升序排列。请编写这个sort函数。程序的正确输出应为: 排序前:7,1,3
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程proj3,其中声明的DataList类,是一个用于表示数据表的类。sort成员函数的功能是将当前数据表中的元素升序排列。请编写这个sort函数。程序的正确输出应为: 排序前:7,1,3
admin
2017-02-21
50
问题
请使用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{returnfen;}
//数据表长度(即数据元素的个数)
double getElement(int i)const{return d
;}
void sort();//数据表排序
void show()const;//显示数据表
};
void writeToFile(char *,constDataList&);
//main,cpp
#include"DataList.h"
DataList∷DataList(int len,
double data[]):fen(1en){
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++)cout<<d
<<",";
cout<<d[len-1]<<end1;
}
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<<end1<<"排序后:";
list.show();
writeToFile("",list);
return 0;
}
选项
答案
for(int 1=0;1<len;++1)//从头遍历数组d for(int j=i;j<len;++j)//从i+i处遍历数组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/h6Ap777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
C++语言是以哪种语言为基础逐渐发展演变而成的一种程序设计语言
C++在重载运算将中,如用成员函数重载一元运算符参数表中需要______个参数,如用友元函数重载一元运算符参数表中需要______个参数。
若有以下变量和函数说明:#include<iostream.h>charCh=’*’;voidsub(intx,inty,charch,double*Z){
下面程序的执行结果是#include"iostream.h"voidmain(){int*p,r;p=newint;*p=20;r=s
有如下函数模板的定义:template<classT>Tfunc(Tx,Ty){returnx*x+y*y;}在下列对func的调用中不正确的是
下面有关for循环的正确描述是
下面是一个递归函数,其功能是使数组中的元素反序排列。请将函数补充完整。voidreverse(int*a,intsize){if(size
下列程序时类D代码段出现编译错误,原因是【 】。#include<iostream.h>classA{public:A(charc){cout<<"A’sconstructor."<<c<<endl
写出执行完下列代码段之后指定变量的值:boolx=true,y=false,z=false;x=x&&y||z;y=x||y&&z;z=!(x!=y)||(y==z);则x=false,y=false,Z=
随机试题
肾血流量自身调节的下述内容哪一项是错误的?
A、硫酸胆红素B、胆红素-清蛋白C、胆红素-配体蛋白D、胆红素葡萄糖醛酸酯E、胆素原族肠道重吸收的胆色素()
属HBV复制指标的是()
化学结构中含有一个手性碳原子的药物是
关于募集资金的披露,下列表达正确的是( )。
甲船舶股份有限公司(以下简称“甲公司”)主营业务为各类船艇的设计、研发、生产、销售和服务,股本总额为58400万元,其股票在上海证券交易所上市交易。甲公司控股股东为J旅游开发公司(以下简称“J公司”),其持股比例为50%。 2019年以来,由于国内外经济
莎士比亚的喜剧大都以爱情、友谊、婚姻为主题,歌颂进步、美好的人文主义新风,充满着乐观、明朗的基调。下列作品中,属于莎士比亚喜剧的是()。
由国际天文学联合会把全天分成88个区域,称为88个星座。下列关于星座对应正确的是()。
三心:两意
有确凿证据表明,偏头痛(严重的周期性头痛)不是由于心理上的原因引起的,而完全是由生理上的原因引起的。然而,数据研究结果表明,那些因为偏头痛受到专业治疗的人患有标准心理尺度的焦虑症的比率比那些没有经过专业治疗的偏头痛患者的高。下面哪一点如果正确,最有助于解决
最新回复
(
0
)