题目内容 (请给出正确答案)
[主观题]

有一个类,封装了一个整数和一个浮点数数组,并提供一些...

有一个类,封装了一个整数和一个浮点数数组,并提供一些操作接口,其定义如下,现在请你完成类中七个方法的实现,并用一个例子简单实现对这个类的应用。 Class CArray { private: int nSizeOfInt; //整形数组的大小 int nNumOfInt; //整形数组中实际存放的元素个数 int nSizeOfFloat; //浮点数组的大小 int nNumOfFloat; //浮点数组中实际存放的元素个数 int *pInt; //指向整形数组,动态分配内存空间 float *pFloat; //指向浮点数组,动态分配内存空间 public: CArray(int nIntSize=100,int nFloatSize=200); //构造函数,进行初始化 void put(int n); //将n加入到整形数组中 void put(float x); //将x加入到浮点数组中 int getInt(int index); //取整形数组中第index个元素,index从0开始 float getFloat(int index); //取浮点数组中第index个元素,index从0开始 ~CArray(); //析构函数,释放动态分配的内存空间 void print(); //分别输出整形数组和浮点数组中的所有元素 } 构造完整的程序,包括类成员函数的定义和测试的设计。构造函数中的nIntSize和nFloatSize分别表示整形数组和浮点数组的大小。

暂无答案
如搜索结果不匹配,请 联系老师 获取答案
您可能会需要:
您的账号:,可能会需要:
您的账号:
发送账号密码至手机
发送
更多“有一个类,封装了一个整数和一个浮点数数组,并提供一些...”相关的问题

第1题

面试题:连续子数组的最大和

题目:输入一个整数型数组,数组里有正数也有负数。数组中一个或连续的多个整数组成一个数组。求所有子数组的最大值。要求时间复杂度为O(n)。

点击查看答案

第2题

数组中的元素有正整数或负整数。设计一个算法,将正整数和负整数分开,使数组的前一半为负整数,后一半为正整数。不要求对这些元素排序,要求尽量减少交换次数。
点击查看答案

第3题

确定n个不同数的数组S和正整数i,[图],求S中最大的i个...

确定n个不同数的数组S和正整数i,,求S中最大的i个数,并且按照从小到大的次序输出。有下述算法: 算法A:调用i次找最大算法Findmax每次从S中删除一个最大的数。 算法B:对S排序,并输出S中最大的i个数。 (1)分析A,B两个算法在最坏情况下的时间复杂度。 (2)试设计一个最坏情况下时间复杂度的阶更低的算法,要求给出伪码。

点击查看答案

第4题

【Test-10-3】设有n个整数存放于一个一维数组A[ ]中,下...

【Test-10-3】设有n个整数存放于一个一维数组A[ ]中,下面算法的功能是:设计一个递归函数,实现简单选择排序算法。函数的首部为: void selectSort(int A[], int left, int right); 其中,A[]存放待排序数据,left和right是当前递归调用时排序区间的左、右端点。 最初外部调用的形式为:selectSort(A,0,n-1)。请在空白处填入正确的语句。 void selectSort(int A[ ], int left, int right) { if(________①________) { int k = ______②______, i, temp; for(_______③________; i <= right; i++) if(a[i] a[k]) ______④______; 寻找区间内最小整数 if(left !="k)" { 交换到 left 端 temp="A[left];" a[left]="A[k];" a[k]="temp;" } __________⑤______________; 对剩余整数递归排序>

点击查看答案

第5题

有n个分别排好序的整数数组[图],其中[图]含有[图]个整...

有n个分别排好序的整数数组,其中含有个整数,i = 0, 1, ..., n - 1。已知这些数组顺序存放在一个圆环上,现在要将这些数组合并成一个排好序的大数组,且每次只能把两个在圆环上处于相邻位置的数组合并,问如何选择这n - 1次合并的次序以使得合并时总的比较次数达到最少?设计一个动态规划算法求解这个问题,说明算法的时间复杂度。

点击查看答案

第6题

请编制程序,其功能是:内存中有一个由16个十六位二进制数组成的数组(SOURCE)和一个字变量L。试将L作为逻辑尺对数组SOURCE进行下列处理:如L的第i位为0,则数组的第i个数不变:如L的第i位为1,则数纽的第i个数按位取反。字L的位序从低到高依次为0至15,数组下标依次从0到15。

例如:L=0009H

数组为:139CH,89C6H,5437H,8819H,…

变换为:EC63H,89C6H,5437H,77E6H,…

部分程序已给出,其中原始数据由过程LOAD从文件INPUT.DAT中读入(L在前,SOURCE在后)。运算结果要求从RESULT开始存放,由过程SAVE保存到文件OUTPUT.DAT中。

请填空BEGIN和END之间已给出的源程序使其完整,空白已用横线标出,每个空白一般只需一条指令,但采用功能相当的多条指令亦可,或删除BEGIN和END之间原有的代码并自行编程来完成所要求的功能。

对程序必须进行汇编,并与IO.OBJ链接产生可执行文件,最终运行程序产生结果。调试中若发现整个程序中存在错误之处,请加以修改。

[试题程序]

EXTRN LOAD:FAR,SAVE:FAR

N EQU 16

STAC SEGMENT STACK

DB 128 DUP (?)

STAC ENDS

DATA SEGMENT

L DW ?

SOURCE DW N DUP(?)

RESULT DW N DUP(0)

NAME0 DB 'INPUT.DAT',0

NAME1 DB 'OUTPUT.DAT',0

DATA ENDS

CODE SEGMENT

ASSUME CS:CODE, DS:DATA, SS:STAC

START PROC FAR

PUSH DS

XOR AX,AX

PUSH AX

MOV AX,DATA

MOV DS,AX

LEA DX,L ;数据区起始地址

LEA SI,NANE0 ;原女合数据文件名

MOV CX,2*(N+1) ;字节数

CALL LOAD ;从'INPUT.DAT'中读取数据

; ******** BEGIN ************

LEA SI, SOURCE

(1)

MOV CX,N

MOV DX, (2)

L0: MOV AX, [SI]

(3) L,DX

(4) STORE

NOT AX

STORE:MOV [DI],AX

ADD DI,2

ADD SI,2

(5)

LOOP L0

; ******** END ********

LEA DX,RESULT ; 结果数据区首址

LEA SI,NAME1 ;结果文件名

MOV CX,2*N ;结果字节数

CALL SAVE ;保存结果到文件

RET

START ENDP

CODE ENDS

END START

点击查看答案
热门考试 全部 >
相关试卷 全部 >
账号:
你好,尊敬的上学吧用户
发送账号至手机
获取验证码
发送
温馨提示
该问题答案仅针对搜题卡用户开放,请点击购买搜题卡。
马上购买搜题卡
我已购买搜题卡, 登录账号 继续查看答案
重置密码
确认修改
谢谢您的反馈

您认为本题答案有误,我们将认真、仔细核查,
如果您知道正确答案,欢迎您来纠错

警告:系统检测到您的账号存在安全风险

为了保护您的账号安全,请在“上学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!

微信搜一搜
上学吧
点击打开微信
警告:系统检测到您的账号存在安全风险
抱歉,您的账号因涉嫌违反上学吧购买须知被冻结。您可在“上学吧”微信公众号中的“官网服务”-“账号解封申请”申请解封,或联系客服
微信搜一搜
上学吧
点击打开微信