首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程proj3,其中声明的DataList类,是一个用于表示数据表的类。sort成员函数的功能是将当前数据表中的元素升序排列。请编写这个sort函数。程序的正确输出应为: 排序前:7,1,3
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程proj3,其中声明的DataList类,是一个用于表示数据表的类。sort成员函数的功能是将当前数据表中的元素升序排列。请编写这个sort函数。程序的正确输出应为: 排序前:7,1,3
admin
2017-02-21
34
问题
请使用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全国计算机二级
相关试题推荐
有以下程序#include<string.h>#include<iostream.h>voidmain(){char*p="abcde\0fghjik\0";co
若有说明语句chara[]="Itismine";char*p="Itismille";则以下不正确的叙述是()。
下列函数的运行结果是()。#include<iostream.h>intf(inta,intb){intc;if(a>b)c=1;elseif(a==b)
下面程序输出的结果为#include"iostream.h"classA{public:A(){cout<<"CLASSA"<<endl;}
下面程序的执行结果是#include"iostream.h"voidmain(){int*p,r;p=newint;*p=20;r=s
对于语句cin>>x中的各个组成部分,下列叙述中错误的是
如下程序定义了“单词”类word,类中重载了
下列语句段中不是死循环的是()。
设有如下说明 typedef struct {int n;char c;double x;}STD; 则有以下选项,能正确定义结构体数组并赋初值的语句是
数据流图的类型有______和事务型。
随机试题
中国的社会现代化分为()
抗原抗体反应中,抗体过剩时的沉淀反应称为
患者,女性,18岁。既往无心脏病、咽炎、关节炎病史,发热并呼吸困难2天。查体:体温38.5℃,心率100次/分,心前区可闻及3级收缩期杂音,双肺底可闻及细小湿啰音。最可能的诊断是
圆锥角膜体征为沙眼体征为
按照《建筑安装工程费用项目组成》(建标[2003]206号)的规定,大型机械设备进出场及安拆费列人( )。
美术课程评价是促进学生全面发展、改进教师的教学,促进美术课程不断发展的重要环节,美术课程评价的依据是美术课程标准。()
分销渠道的主要职能有()。
(2010下网规)为防止服务器遭攻击,通常设置一个DMZ。外网、DMZ、内网三者之间的关系,应满足______(1)。如果在DMZ中没有______(2),则访问规则可更简单。(1)
Affirmativeactionmaynotbethemostdivisiveissueontheballot,butitremainsanunendingsourceofconflictanddebatea
Thereweretwentypeopleattheveryoutside.Theunderlinedpartmeans______.
最新回复
(
0
)