首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请打开考生文件夹下的解决方案文件proj3,其中声明的DataList类,是一个用于表示数据表的类。sort成员函数的功能是将当前数据表中的元素升序排列。请编写这个sort函数。程序的正确输出应为: 排序前:7,1,3,11,6,9,12,10,8
请打开考生文件夹下的解决方案文件proj3,其中声明的DataList类,是一个用于表示数据表的类。sort成员函数的功能是将当前数据表中的元素升序排列。请编写这个sort函数。程序的正确输出应为: 排序前:7,1,3,11,6,9,12,10,8
admin
2020-04-07
54
问题
请打开考生文件夹下的解决方案文件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:
DataLlst(int len,double data[]=NULL);
~DataList(){delete[]d;}
int length()const{return len;)
//数据表长度(即数据元素的个数)
double getElement (int i)consL{return d
;}
void sort();//数据表排序
void show()const;//显示数据表
};
void writeToFile(char *, constDataList&);
//main.cpp
#include"DataList.h"
DataList::DataList(int len,double data[]):len(fen)(
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
<<",";
couL<<d[len—1]<<endl;
}
int main(){
double s[]={7,1,3,11,6,9,12,10,8,4,5,2};
DaLaList list(12,s);
cout<<"排序前:";
list.show();
list.soft();
cout<<endl<<”排序后:”;
list.show();
writeToFile("",list);
return 0;
}
选项
答案
for(int 1 =0;i<len; ++1) //从头遍历数组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/Nw8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有函数charfun(char*p){returnp;}该函数的返回值是()。
下列程序的输出结果为2,请将程序补充完整。#include<iostream>usingnamespacestd;classBase{public:【】voidfun(){cout<<
若下列程序运行时输出结果为1,A,10.12,B,3.5请将程序补充完整。#include<iostream>usingnamespacestd;intmain(){voidt
以下程序输出结果是______。#include<iostream.h>voidn(inti);voidf2(inti);charst[]=”Howdoyoudo!”;voidfl(inti){
若有以下程序:#include<iostream>usingnamespacesstd;classA{public:A(){}A(inti){xl
对关系S和R进行集合运算,结果中既包含S中的所有元组也包含R中的所有元组,这样的集合运算称为()。
程序的结果为【】。 #include”iostream.h” template<typenameT> Ttotal(T*data) { Ts=0; while(*data) {
执行下列程序的输出结果是______:#include<iostream>usingnamespacestd;classTestClassl{public:voidfunl(){cout<<"Te
有如下类定义:classPoint{private:staticinthow_many;};______how_many=0;要初始化Point类的静态成员how_many,在下画线处应填入的内容是
下列类模板的定义中语法格式错误的是
随机试题
女性,50岁。不规则阴道出血伴下腹胀痛及脓性白带1个月余。妇科检查:阴道内无异常,宫颈光滑,子宫体略大,质软,双附件正常。若此患者确定诊断后行开腹术,术中取腹水找到癌细胞,其处理正确的是
津液中“液”的特点有
A.高血压心脏病B.TIAC.脑血栓形成D.肾功能不全E.高血压脑病视盘水肿见于
治疗伤食型泻的首选方剂是
《执业药师资格制度暂行规定》规定,执业药师注册证有效期满前3个月,持证者须到注册机构办理()
我国个人住房抵押贷款的风险最终主要转移在()身上。
丝绸之路促进了东西方之间的经济文化交流。下列能够反映这种交流的主要史实有()。①中国的凿井、冶铁等技术传到西方②中亚的葡萄、黄瓜、胡萝卜、大蒜等农作物传入中国③罗马的毛织品、玻璃等手工业品和杂技传入中国④印度的佛教传入中国⑤越南的占
1996年的《幼儿园工作规程》明确规定幼儿园的领导体制为()。
已知u=f(2xy,x3+y3),f可微,则=___________.
在PowerPoint2003中,能设置声音的循环播放。
最新回复
(
0
)