计算机二级C上机答案Word文件下载.docx
- 文档编号:21363288
- 上传时间:2023-01-30
- 格式:DOCX
- 页数:53
- 大小:42.44KB
计算机二级C上机答案Word文件下载.docx
《计算机二级C上机答案Word文件下载.docx》由会员分享,可在线阅读,更多相关《计算机二级C上机答案Word文件下载.docx(53页珍藏版)》请在冰豆网上搜索。
endl;
的定义补充完整。
使程序的输出结果为:
Theelementofstackare:
4321
(1)item(val)
(2)delete[]p
(3)temp=top
(4)temp->
next=top
了用于表示平面坐标系中的点的类MyPoint和表示矩形的类MyRectangle;
程序应当显示:
(0,2)(2,2)(2,0)(0,0)4
(1)MyPointp1,MyPointp2
(2)up_left.getX(),down_right.getY()
(3)doubleMyRectangle
第三套
//ERROR****found****"
(1)MyClass(intval):
value(val){}
(2)voidMyClass:
SetValue(intval){value=val;
}
请在程序中的横线处填写适当的代码,然后删除横线,以实现上述功能。
a,b,c
c,b,a
(1)newchar[s]
(3)p[top]=c
(4)returnp[top]
C++程序proj3.cpp,其功能是读取文本文件in.dat中的全部内容,将文本存放到doc类的对象myDoc中。
然后将myDoc中的字
符序列反转,并输出到文件out.dat中。
文件in.dat的长度不大于1000字节。
inti,j;
for(i=0,j=length-1;
i<
j;
i++,j--)
{
chartemp=str[i];
str[i]=str[j];
str[j]=temp;
}
第四套
个注释"
//ERROR****found****"
(4,4)
(1)Point(doublex,doubley):
_x(x),_y(y){}或Point(doublex,doubley){_x=x;
_y=y;
}
(2)voidMove(doublexOff,doubleyOff)
('
pt.GetX()<
'
pt.GetY()<
)'
请在程序中的横线处填写适当的代码,然后删除横线,以完成Base1、Base2和Derived类的功能。
I'
maderivedclass.
(1)virtualvoidShow()=0
(2)strcpy(_p,s)
(3)publicBase1,privateBase2
(4)Base2(s)
文本文件in.dat中读取全部整数,将整数序列存放到intArray类的对象myArray中,然后对整数序列按非递减排序,最后由函数
writeToFile选择序列中的部分数据输出到文件out.dat中。
文件in.dat中的整数个数不大于300个。
for(inti=0;
i<
length;
++i)
for(intj=i;
j<
++j)
if(array[i]>
array[j])
{
inttemp;
temp=array[i];
array[i]=array[j];
array[j]=temp;
for(inta=0;
a<
++a)
cout<
array[a]<
第五套个注释"
//ERROR*********found**********"
NUM=0
Value=1
(1)MyClass(inti=0):
NUM(0){
(2)voidIncrement(MyClass&
f){f._i++;
(3)Increment(obj);
Score是一个用于管理考试成绩的类。
其中,数据成员_s指向存储成绩的数组,_n表示成绩的个数;
成员函数Sort使用冒
排序法将全部成绩按升序进行排列。
(1)i++
(2)_n-1
(3)_s[j]=_s[j-1]
(4)_s[j-1]=t
组测试数据,此种情况下程序的输出应该是:
ValArrayv1={1,2,3,4,5}
ValArrayv2={2,2,2,2,2}
size=other.size;
v=newint[other.size];
size;
v[i]=other.v[i];
第六套
Thevalueis:
(1)public:
(2)MyClass(intval):
_m(val){}或MyClass(intval){_m=val}
Thevalueis:
obj->
GetValue()<
CharShape是一个抽象基类,它表示由字符组成的图形(简称字符图形),纯虚函数Show用于显示不同字符图形的相同操
作接口。
Triangle和Rectangle是CharShape的派生类,它们分别用于表示字符三角形和字符矩形,并且都定义了成员函数
Show,用于实现各自的显示操作。
程序的正确输出结果应为:
*
***
*****
*******
########
########
(1)i
(2)_rows
(3)_cols
(4)CharShape&
cs
myArray。
类intArray重载了"
="
运算符。
程序中给出了一个测试数据文件input,不超过300个的整数。
程序的输出是:
10
11
13
16
20
i++)
array[i]=src.array[i];
第七套
****found****"
Thisobjectisno.1
(1)voidInc()
(2)intcount;
(3)obj->
Inc();
运行程序时,如果输入的一行字符序列是
ABC012XYZ378MN274WS
则输出为:
Digitstring1is012
Digitstring2is378
Digitstring3is274
(1)returnNULL
(2)*buf=*src
(3)i++
的类Person和表示职员的类Staff;
张小丽123456789012345
(1)delete[]idcardno,name
(2)name=newchar[strlen(newname)+1]
(3)Person(idcardno,pname,ismale)
第八套
数组元素个数的常量Size定义为4,并用int类型对类模板进行了实例化。
文件中位于每个注释"
之后
的一行语句存在错误。
1234
(1)constintSize=4;
(2)voidMyClass<
T>
Print()
(3)MyClass<
int>
obj(intArray);
处填写适当的代码,然后删除横线,以实现上述类定义和函数定义。
教材名:
C++语言程序设计
页 数:
299
作 者:
张三
相关课程:
面向对象的程序设计
(1)writer=newchar[strlen(the_writer)+1];
(2)delete[]title,writer;
(3)Book(the_title,pages,the_writer)
(4)a_book.theCourse()<
endl
和表示一天中的时间的类TimeOfDay;
01:
02:
03.004
06:
04:
06.021
(1)Number<
60>
seconds;
(2)advanceMinutes(seconds.advance(k))
(3){s++;
n-=base;
}
第九套
Youareright.
(1)~MyClass(){}
(2)friendvoidJudge(MyClass&
obj);
(3)MyClassobject(10);
上述功能。
此图形是一个抽象图形,周长=0,面积=0
此图形是一个三角形,周长=6.82843,面积=2
(1)x(x0),y(y0)
(2)Pointpoint1,point2,point3
(3)returnlength(point1,point2)+length(point1,point3)+length(point2,point3)
(4)voidshow(Shape&
shape)
请使用"
答题"
菜单命令或直接用VC6打开考生文件夹下的工程proj3,其中声明的是一个人员信息类,补充编制程序,使
其功能完整。
在main函数中给出了一组测试数据,此种情况下程序的输出应该是:
Zhang20Tsinghua。
address=newchar[strlen(add)+1];
strcpy(address,add);
、
第十套
书名:
C++语句程序设计 总页数:
已把"
C++语言程序设计"
翻到第50页
翻到第51页
翻到第52页
已把书合上。
(1)Book(constchar*theTitle,intpages):
num_pages(pages)
(2)voidopenAtPage(intpage_no){//把书翻到指定页
(3)cur_page=0;
办公室房间号:
308
办公室长度:
5.6
办公室宽度:
4.8
办公室面积:
26.88
办公室所属部门:
会计科
(1)returnlength*width;
(2)Room(theroom_no,the_length,the_width)
(3)depart,the_depart
(4)anoffice(308,5.6,4.8,"
会计科"
屏幕上输出的正确结果应该是:
Hello!
Happynewyear!
length=otherString.length;
setString(otherString.sPtr);
return*this;
第十一套
Copyconstructorcalled.
Destructorcalled.
(1)MyClass(inti=10)
(2)MyClass(constMyClass&
p)
(3)~MyClass()
请使用VC6或使用"
菜单打开考生文件夹proj2下的工程proj2,其中有矩阵基类MatrixBase、矩阵类Matrix和单位阵
UnitMatrix的定义,还有main函数的定义。
请在横线处填写适当的代码并删除横线,以实现上述类定义。
此程序的正确输出结
果应为:
12345
23456
34567
(1)getElement(i,j)
(2)MatrixBase(rows,cols)
(3)newdouble[rows*cols]
(4)r==c
类。
DataList的重载运算符函数operator+,其功能是求当前数据表与另一个相同长度的数据表之和;
即它返回一个数据表,
其每个元素等于相应两个数据表对应元素之和。
请编写这个operator+函数。
程序的正确输出应该是:
两个数据表:
1,2,3,4,5,6
3,4,5,6,7,8
for(inti=0;
len;
dd[i]=d[i]+list.d[i];
第十二套
菜单打开考生文件夹proj1下的工程proj1,其中有枚举DOGCOLOR、狗类Dog和主函数main的定
义。
程序中位于每个//ERROR****found****下的语句行有错误,请加以更正。
更正后程序的输出应该是:
ThereisawhitedognamedHoho.
ThereisablackdognamedHaha.
ThereisamotleydognamedHihi.
(1)this->
color=color;
(2)constchargetName()const{return*name;
(3)Dogdog1("
Hoho"
WHITE),dog2("
Haha"
BLACK),dog3("
Hihi"
OTHER);
菜单打开考生文件夹proj2下的工程proj2,该工程中包含一个程序文件main.cpp,其中有坐标点类point、线段类Line和三角形类Triangle的定义,还有main函数的定义。
程序中两点间的距离的计算是按公式
Side1:
9.43398
Side2:
5
Side3:
8
area:
20
(1)constPoint&
p
(2)p1(p1),p2(p2)
(3)Pointp1,Pointp2,Pointp3
(4)(length1()+length2()+length3())/2
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
for(inti=0;
for(intj=i;
if(d[i]>
d[j])
inttemp=d[i];
d[i]=d[j];
d[j]=temp;
第十三套
****found****之后的一行语句有错误,请加以更正。
Endpoint1=(1,8),Endpoint2=(5,2),
length=7.2111。
(1)Line(doublex1,doubley1,doublex2,doubley2){
),length="
length(*this)<
。
"
(3)returnsqrt((l.getX1()-l.getX2())*(l.getX1()-l.getX2())+(l.getY1()-l.getY2())*(l.getY1()-l.getY2()));
菜单打开考生文件夹proj2下的工程proj2。
其中有向量基类VectorBase、向量类Vector和零向量类
ZeroVector的定义。
该程序正确输出结果应为:
(1,2,3,4,5)
(0,0,0,0,0,0)
(1)getElement(length()-1)<
(2)delete[]val
(3)s+=val[i]
(4)return0.0;
的类。
其成员函数insert的功能是将一个数据插入到一个有序表中,使得该数据表仍然保持有序。
请编写这个insert函数。
程
序的正确输出应为:
插入前:
1,2,4,5,7,8,10
插入6和3后:
1,2,3,4,5,6,7,8,10
for(inti=0;
if(data<
d[i])
len++;
double*dd=newdouble[len];
for(intk=len;
k>
i;
k--)
dd[k]=d[k-1];
dd[i]=data;
for(intj=0;
i;
j++)
dd[j]=d[j];
delete[]d;
d=newdouble[len];
for(intindex=0;
index<
++index)
d[index]=dd[index];
delete[]dd;
break;
第十四套
语句有错误,请加以更正。
更正后程序的输出应为:
Name:
SmithAge:
21ID:
99999CourseNum:
12
Record:
970
(1)char*Name;
(2)~StudentInfo(){}
(3)StudentInfo:
StudentInfo(char*name,intage,intID,intcourseNum,floatrecord)
然后以motorcar和bicycle作为基类,再派生出motorcycle类。
要求将vehicle作为虚基类,避免二义性问题。
请在程序中的
横线处填写适当的代码并删除横线,以实现上述类定义。
80
150
100
1
(1)MaxSpeed(maxspeed),Weight(weight){};
(2)virtual
(3)virtual
(4)publicbicycle,publicmotorcar
菜单打开考生文件夹proj3下的工程proj3,其中声明的CDeepCopy是一个用于表示矩阵的类。
请
编写这个类的赋值运算符成员函数operator=,以实现深层复制。
n=r.n;
delete[]p;
p=newint[n];
n;
p[i]=r.p[i];
第十五套
value=63
number=1
N
(1)
(2)~MyClass(){delete[]p;
(3)voidprint(MyClass&
obj)
菜单打开考生文件夹proj2下的工程proj2,其中定义了Component类、Composite类和Leaf
Component是抽象基类,Composite和Leaf是Component的公有派生类。
请在横线处填写适当的代码并删除横线,以实现上
述类定义。
LeafNode
(1)virtualvoidprint()const=0
(2)Component*child
LeafNode"
菜单打开考生文件夹proj3下的工程proj3,其中定义的Matrix是一个用于表示矩阵的类。
成员函
数max_value的功能是求出所有矩阵元素中的最大值。
例如,若有3×
3矩阵
则调用max_value函
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 二级 上机 答案