首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程proj3,其中声明了SortedList类,是一个用于表示有序数据表的类。其成员函数insert的功能是将一个数据插入到一个有序表中,使得该数据表仍然保持有序。请编写这个insert函数。程序
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程proj3,其中声明了SortedList类,是一个用于表示有序数据表的类。其成员函数insert的功能是将一个数据插入到一个有序表中,使得该数据表仍然保持有序。请编写这个insert函数。程序
admin
2017-02-21
46
问题
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程proj3,其中声明了SortedList类,是一个用于表示有序数据表的类。其成员函数insert的功能是将一个数据插入到一个有序表中,使得该数据表仍然保持有序。请编写这个insert函数。程序的正确输出应为:
插入前:
1,2,4,5,7,8,10
插入6和3后:
1,2,3,4,5,6,7,8,10
要求:
补充编制的内容写在“//********333********”与“//********666********”之间。不得修改程序的其他部分。
注意:程序最后将结果输出到文件out.dat中。输出函数writeToFile已经编译为obj文件,并且在本程序中调用。
//SortedList.h
#include<iostream>
using namespace std;
class sortedList { //有序数据表类
int len;
double,*d;
public:
SortedLiSt(int fen,doubledata[]=NULL);
~SortedList(){delete[]d;}
int length()const{returnlen;}//有序数据表长度(即元素的个数)
double getElement (int i)const{return d
;}
void insert(double data);
void show ()const;//显示有序数据表
};
void writeToFile (char *,const sortedLiSt&);
//main.cpp
#include"SortedList.h"
SortedList∷SortedLiSt(int
len,double data[]):len(len){
d=new double[len];
for(int k=0;k<len;k++)
d[k]=(data==NULL?0.0:
data[k]);
for(int i=0;i<len-1;i++){
int m=i;
for(int j=i;j<len;j++)
if(d[j]<d[m])m=j;
if(m>i){
double t=d[m];
d[m]=d
;
d
=t;
}
}
}
void SortedList∷insert(double data){
//********333********
//********666********
}
void SortedList∷show()const{
//显示南序数据表
for(int i=0;i<len-1;i++)
cout<<d
<<",";
cout<<d[len-1]<<end1;
}
int main(){
double s[]={5,8,1,2,10,4,7);
SortedList list(7,s);
cout<<"插入前:"<<end1;
list.show();
list.insert(6.0);
list.insert(3.0);
cout<<"插入6和3后:"<<
end1;
list.show();
writeToFile("",list);
return 0;
}
选项
答案
for(int i=0;1<len;++i) //遍历数组d if(data<d[i]) //如果data小于d[i] { len++;//数组d的长度自加1 double *dd=new double[fen]; //分配长度为len空间 for(int k=len;k>i;k--) //在数组d中从k等于len到i做遍历 dd[k]=d[k-1]; //把d[k-1]赋值给dd[k] dd[i]=data; //把data赋值给dd[i] for(int j=0;j<i,j++) //把数组d从0到i做遍历 dd[j]=d[j]; //把d[j]赋值给dd[j] delete[]d;//删d分配的空间 d=new double[len]; //给d分配长度为len的空间 for(int index=0;index<len;++index) //遍历数组dd从0到len d[index]=dd[index]; //地dd[index]赋值给d[index] delete[]dd; //删dd分配的空间 break;//跳出循环 }
解析
转载请注明原文地址:https://kaotiyun.com/show/OBAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列程序是用来判断数组中特定元素的位置所在,则输出结果为#include<conio.h>#include<iostream.h>intfun(int*s,intt,int*k){i
下面程序的运行结果是【】和【】。#include<iostream.h>#defineN10#defines(x)x*x#definef(x)(x*x)
下面程序的输出结果为【】。#include<iostream.h>voidmain(){intnum=0,i=8;do{i--;
下面程序的结果为#include"iostream.h"voidchange(inta,intb){inttemp;temp=a;a=b;
数据库设计包括两个方面的设计内容,它们是
关于二义性的描述错误的是
对于循环队列,下列叙述中正确的是
以下选项中合法的实型常数是
下列选项中合法的用户标识符是( )。
在岂个容量为25的循环队列中,若头指针front=9,尾指针Year=16,则该循环队列中共有______个元素。
随机试题
红霉素:林可霉索:
肩关节周围炎的病理变化主要发生在
能与珍珠牛黄散配伍的药品是
怎样界定企业收益?
影响各类资产的风险收益状况以及相关关系的资本市场环境因素的有()。
“从群众中来,到群众中去”的认识论依据是()。
经济学意义上的货币需求是一种()。
职业道德的价值在于()
把房地产价格的无理飞涨,______于中国的老百姓太有钱,那简直是荒谬之极,这样的经济学家应该______,是否还具有______的社会良知。填入划横线部分最恰当的一项是:
R医院连续5年在C市举办的“我最满意的医院”调查中高居榜首,该医院负责人表示,这是由于该医院提供了比其他医院更加优质的导诊服务。以下哪项为真,最能支持该医院负责人的观点?()
最新回复
(
0
)