首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: (1)完成构造函数,设置数组元素的个数为0,请在注释//********1********之后添加语句。
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: (1)完成构造函数,设置数组元素的个数为0,请在注释//********1********之后添加语句。
admin
2018-10-23
63
问题
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能:
(1)完成构造函数,设置数组元素的个数为0,请在注释//********1********之后添加语句。
(2)完成函数AddMember(int n),如果参数n包含在类的数据成员数组中,则返回0,否则把数据写入数组,然后返回1,请在注释//********2********之后添加语句。
(3)完成函数DelMember(int n),如果变量在数据中,则删除该变量,并且返回1,如果不存在则返回0,请在注释//********3********之后添加语句。
(4)完成成员函数islnclude(int n)的定义,该函数检查参数n是否在类的数据成员数组elems中,如果在返回1,否则返回0。请在注释//********4********之后添加语句。
注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。
1 #include<iostream.h>
2 #define MAX LENGTH 500
3 class CArray
4 {
5 public:
6 CArray()
7 {
8 //********1********
9
10 }
11 int AddMember(int n)
12 {
13 for(int i=0;i<length;i++)
14 {
15 //********2********
16 if(Array
=n)
17 return 0;
18 }
19 Array[1ength++]=n;
20 return 1;
21 }
22 int DelMember(int n)
23 {
24 int i;
25 for(i=0;i<length;i++)
26 {
27 if(Array
==n)
28 {
29 break;
30 }
31 }
32 //********3********
33 if()
34 {
35 for(;i<length-1;i++)
36 {
37 Array
=Array[i+1];
38 }
39 length--;
40 return 1;
41 }
42 return 0;
43 }
44 int isInclude(int n)
45 {
46 for(int i=0;i<length;i++)
47 {
48 //********4********
49 if()
50 {
51 return 1;
52 }
53 }
54 return 0;
55 }
56 private:
57 int Array[MAX LENGTH];
58 int length;//用来记录数组的个数
59 };
60 int main()
61 {
62 CArray obj;
63 obj.AddMember(1);
64 obj.AddMember(3);
65 obj.AddMember(8);
66 obj.AddMember(23);
67 cout<<obj.isInclude(8)<<end1;
68 cout<<obj.isInclude(11)<<end1:
69 obj.DelMember(3);
70 obj.DelMember(8);
71 cout<<obj.isInclude(2)<<end1;
72 cout<<obj.isInclude(1)<<end1;
73 return 0;
74 }
选项
答案
(1)添加语句:length=0; (2)将“if(Array[i]=n)”补充完整为:if(Array[i] ==n) 或if(n==Array[i]) (3)将“if()”补充完整为:if(i<lenqth)或if(i!=lenqth) (4)将“if()”补充完整为:if(Array[i]==n)或if(n==Array[i])
解析
程序中定义了类CArray,有两个数据成员和多个成员函数。变量为length用来记录数组元素的个数,数组Array[MAX_LNGTH]用来存放数组元素。成员函数AddMember()和DelMember()分别表示添加和删除元素,函数isInclude(int n)检查数组当中是否存在值为n的元素。
(1)使length的初始化为0,因此添加语句:“length=0;”。
(2)第2个标识下是检查n是否已经在数组当中存在,用if语句来判断,即if(Array
==n)或if(n==Array
)。
(3)DelMember(int n)函数删除指定的元素,由于元素在数组当中的位置未知,因此必须先查找该元素的位置,在该函数的实现过程当中通过for循环来完成,即第一个for循环查找n在数组中的位置。如果n存在于数组中,那么if中的break语句就会执行跳出循环,此时循环变量i的值会小于length,即通过判断i的值是否小于length值可以知道n是否存在数组中,如果存在数组中接下来进行删除操作。即第3个标识下应改为if(i<length)或if(i!=length)。
(4)islnclude(int n)成员函数用来判断n是否存在数组当中,可用if语句比较,即第4个标识下应改为“if(Array
==n)或if(n==Array
)”。
转载请注明原文地址:https://www.kaotiyun.com/show/lwAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有以下程序:#include<iostream>usingnamespacestd;intmain(){intx=15;while(x>10&&x<50){x++;if(x/3
下面程序的执行结果是#include"iostream.h"voidmain(){int*p,r;p=newint;*p=20;r=sizeof(*p);cout<<r<<endl
下列for语句的循环次数为______。for(inta=0,b=1;b&&a<5;a++);
有下列语句序列:intk=0;do{k+=5;cout<<’$’;}while(k<19);while(k-->0)cout<<’*’;执行上面的语句序列输出字符“$”和“*”的个数
有如下程序;#include<iostream>usingnamespacestd;classDA{intk;public:DA(intx=1):k(x){}~DA(){c
二分法查找仅限于这样的表:表中的数据元素必须有序,其存储结构必须是______。
假定A为一个类,则语句A(A&a);为该类______函数的原型说明。
对长度为n的线性表进行顺序查找,在最坏情况下需要比较的次数为()。
下列不是描述类的成员函数的是
在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。其中数据独立性最高的阶段是
随机试题
行政组织创建良好宗教环境的措施包括()
患者,产钳助产,产后第3天,主诉下腹疼痛,查体:体温38.5℃,恶露多且混浊,有臭味,双乳稍胀,子宫脐下2横指。考虑可能是发生了
绩效评价的内容分()发展能力和社会贡献等方面。
电路如图所示,设二极管均为理想元件,则D1、D2、D3的工作状态为()。
()是项目决策分析与评价的基础和必要条件。
港航工程
下列表述中,属于报关单位共有特征的有:()。
中国公民张先生是某民营非上市公司的大股东,同时也是一位作家。2019年5月取得的部分实物或现金收入情况如下:(1)公司为其购买了1辆轿车并将车辆所有权登记到其名下,该轿车购买价为35万元。(2)将本人一部长篇小说手稿的复印件拍卖取得收入
()画山水,常画一角之景,因此人称“马一角”。
()是我国外交政策的最高准则。
最新回复
(
0
)