首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请打开考生文件夹下的解决方案文件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
58
问题
请打开考生文件夹下的解决方案文件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全国计算机二级
相关试题推荐
为了避免流程图在描述程序逻辑时的灵活性,提出了用方框图来代替传统的程序流程图,通常也把这种图称为
数据库管理系统DBMS中用来定义模式、内模式和外模式的语言为
要建立文件流并打开当前目录下的文件file.dat用于输入,下列语句中错误的是
以下程序输出结果是______。#include<iostream.h>voidn(inti);voidf2(inti);charst[]=”Howdoyoudo!”;voidfl(inti){
有下列程序:#include<iostream.h>usingnamespacestd;classDemo{public:Demo(){cout<<"defaultconstmct
在结构化方法中,软件功能分解属于下列软件开发中的阶段是()。
若有以下程序:#include<iostream>usingnamespacestd;intf(intx,inty){return(y-x)*x;}intmain()
如下程序执行后的输出结果是【】。#include<iostream>usingnamespacestd;classBase{public:Base(intx,inty)
数据结构作为计算机的一门学科,主要研究数据的逻辑结构、对各种数据结构进行的运算,以及
假设函数fun已经定义,其原型为“voidfun(inta,intb=7,char*p=**);”下列函数调用中错误的是
随机试题
电子书制作的流程包括()等。
L为连接(1,0)与(0,1)的直线段,则=()。
根据《建设工程质量管理条例》的规定,建设工程在保修范围和保修期限内发生的下列质量缺陷中,应当由施工单位承担保修责任的是()。
有些银行在市场上占有极大的份额,控制和影响着其他商业银行的行为,这类银行可以采用的市场定位方式是()。
银行职业道德的基本要求是( )。
在同次股份发行中,相同种类的股份,每股的发行条件和发行价格应当相同。()
Backfromhistwo-yearmedicalserviceinAfrica,Dr.Leewasveryhappytoseehismother______goodcareofathome.
2009年是河北进入新世纪以来经济发展最困难的一年。面对复杂严峻的国内外形势,省委、省政府带领全省人民,紧紧围绕“保增长、调结构、促改革、惠民生”的工作主线,认真贯彻落实中央扩大内需的一系列政策措施,较快扭转了经济增速明显下滑的局面,国民经济总体回升向好。
就国民收入核算来说,实际经济活动当中没有售出的商品()。
Theexplorersweretrudgingacrossafrozenwaterwaywhensuddenlytheicebegantoshakeandfallapart,andthewholeteamfel
最新回复
(
0
)