首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程proj3,其中包含主程序文件main。cpp和用户定义的头文件Array.h,整个程序包含有类Array的定义和主函数main的定义。请把主程序文件中的Array类的成员函数Contrary(
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程proj3,其中包含主程序文件main。cpp和用户定义的头文件Array.h,整个程序包含有类Array的定义和主函数main的定义。请把主程序文件中的Array类的成员函数Contrary(
admin
2016-06-12
18
问题
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程proj3,其中包含主程序文件main。cpp和用户定义的头文件Array.h,整个程序包含有类Array的定义和主函数main的定义。请把主程序文件中的Array类的成员函数Contrary()的定义补充完整,经补充后运行程序,得到的输出结果应该是:
5 8
5,4,3,2,1
0,0,8.4,5.6,4.5,3.4,2.3,1.2
注意:只允许在“//**********333**********”和“//**********666**********”之间填写内容,不允许修改其他任何地方的内容。
//Array.h
#include
using namespace std;
template
class Array{//数组类
public:
Array<
函数
for(int i=0;i
if(i
=b
;
else a
=0;
}
void Contrary();
//交换数组a中前后位置对称的元素的值
int Length()const{return m;)
//返回数组长度
Type operator[](int i)const{
//下标运算符重载为成员函数
if(i<0 || i>=m)
{cout<<“下标越界!”<
return a
;
}
private:
Type a[m];
};
void writeToFile(const char*);
//不用考虑此语句的作甩
//main.cpp
#include“Array.h”
//交换数组a中前后位置对称的元素的值
template
void Array
::Contrary(){
//补充函数体
//*********333*********
//*********666*********
}
int main(){
int sl[5]={1,2,3,4,5);
double s2[6]={1.2,2.3,3.4,4.5,5.6,8.4};
Array
dl(sl,5);
Array
d2(s2,6);
int i;
d1.Contrary();d2.Contrary();
cout<
for(i=0;i<4;i++)
cout<
<<“,”;
cout<
for(i=0;i<7;i++)
cout<
<<“,”;
cout<
writeToFile(“”);
//不用考虑此语句的作用
return 0;
}
选项
答案
for(int i=0,j =m一1;i
解析
本题考查的是Array类,其中涉及构造函数、const函数和运算符重载。交换数组中前后对称的元素的值,要使用两个下标i和j,一个代表第一个元素,一个代表最后一个元素,交换后i++,j一即可。
【解题思路】
主要考查考生对交换算法的掌握情况,根据题目对要完成的函数Contrary的要求:交换数组a中前后位置对称的元素的值。这里取下标i=0,即为数组中的第一个元素,j=m一1,即为数组中的最后一个元素,利用中间值temp交换元素的值,然后i逐次递增的同时j逐次递减,再交换,循环到i>j时停止交换即可。
【解题宝典】
主要考查考生对数组中元素交换的掌握情况,交换算法要使得两个下标i和j移动的范围能覆盖全部元素,同时要确定for循环的终止条件。
转载请注明原文地址:https://kaotiyun.com/show/dYNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
派生类的成员一般分为两部分,一部分是【】,另一部分是自己定义的新成员。
若有如下语句#include<iostream.h>voidmain(){intx=3;do{x=x-2;cout
下列字符串中可以用作C++语言标识符的是
如果表达式--X+y中,--是作为成员函数重载的,+是作为成员函数重载的,则该表达式还可为
下面程序段的运行结果是 #include<iostream.h> voidmain() {char*s="abcde"; S+=2; cout<<&s;}
假定MyClass为一个类,那么下列的函数说明中,()为该类的析构函数。
已知枚举类型定义语句为:enumToken{NAME,NUMBER,PLUS=5,MINUS,PRINT=10};则下列说法中,错误的是()。
下面叙述错误的是()。
在重载运算符函数时,下面()。运算符必须重载为类成员函数形式。
以下哪个不是C++语言中的有效标识符()。
随机试题
在PowerPoint2010中,幻灯片中占位符的作用是_____________。
肌浆网
临床应用抗菌药物的基本原则是()
颅脑损伤病人的卧位下列哪项正确
基带局域网是指介质中只有一条信道,宽带局域网中存在多条信道,它们介质中传送的既可以是数字信号也可以是模拟信号。()
根据资料,回答问题。某发展中国家近年来经济快速增长,但是受到全球性金融危机的影响,经济出现了许多新问题,其中之一就是物价问题,近年来的物价指数分别是99.2%、98.6%、100.4%、100.7%和99.2%。这种物价现象属于()。
下列不是刑警的人员是()。
某公司向计算机个人用户提供免费的安全和杀毒服务,占据了国内网络安全软件市场的半壁江山。该公司的产品和服务之所以免费提供,是因为其提供的产品与服务()。
依次填入下列各句横线上的词语,最恰当的一组是:①在宽敞的客厅里,我们见到了这位老人,他就是《红岩》中华子良的_________。②他始终牢记父亲临终时的谆谆教诲:为人_________要自尊自重,不亢不卑。③婚姻是儿女的___
Incrimenovelsthemysteriesseenindetectivestoriesareretained,buttheinvestigationfocusesmoreoncharacterthanonph
最新回复
(
0
)