C++期末考试试题及答案.pdf
《C++期末考试试题及答案.pdf》由会员分享,可在线阅读,更多相关《C++期末考试试题及答案.pdf(68页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、2002年春季软件学院C+期末考试试题及答案考试时间:120分钟1.(10)分现有两种实体:次巨形(R ectangle)和,翼杆(Flagpole)其 中,“矩形”的属性为长度与宽度,“旗 杆”的属性为高度(指地面以上)大奚爱(指地面以下)、且均为婆数。若有:struct R ectangle I ini length.width;:struct Flagpole int height,depth;int rec tang 1 eArea(ini x,int y)(return(x=0/y=0)?x*y:0:)计算矩影的面积int flagpol eLeng th(int x.int y)f
2、ret uni(x=0&y=0)?x+y:0;)/计算祺杆的高度void f ()struct R ectangle red;struet Flagpo1e flgp;rect.length=20;red.width=5;flgp.height=20;flgp.depth=5;int area=rectang 1 eArea(rect.length,rect.width);int lenglh=flagpoleLength(门gp.height,flgp.depth);)试续写函数f,以各 举 一 例 说 明,对 函 数rectangleArea和flagpoleLength的调用都可能出现语
3、法上合法,但结果与函数的语义不一致的情况,并指出其原因。答案:续写的二句如下:area=rectangleArea(f Igp.height,f Igp.depth);length=flagpoleLength(rect.length,rect.width);原因:在函数调用时,只需实参和形参类型相容即可,而不管语义如何?如上例二句语法上是合法的,但结果与函数的语义不一致。若欲使该情况不发生,必须将数据及其上的操作绑定在一起,这必须用类来定义。2.(15 分)阅读下面的程序,写出main的输出。#include s tdio.hint f (int i,const int*J,int&k)if
4、(i%3=0)if(*j=6)k*=i;k+=i;k-=i;return*j+k;)ini main 0Jnt i,j=l,k=2,m;for(1=0;i10;i+,j*=2)真的不掉线吗?01=f (i,&j,k);p rin tf(i=%2d,j=%2d,k=%2d,m=%2d.nnf i,j,k,m);return 0;)答案:i=0,j=l,k=2,m=3.i=l,j=2,k=2,m=4.i=2,J=4,k=2,m=6.i=3,j=8,k=6t m=14.m=22.i=5,j=32t k=6,m=38.i=6,j-64,k=36,m=100.j=128,k=36,m=164.i=8,j
5、=256,k=36,m=292.i=9,j=512,k=324,m=836.3.(15 分)根 据main程序的输出结果,定义并实现max函数。int main 0cout umax=f,max(l.0,67.3)endl;/max=67.3cout“max=max(102f 90)endl;/max=l 02cout max=max(a,z,)endl;/max=zcou t “max=max(“a be”,b d)end!;/max=bdcout max=max(50,82.3)endl;/max=82.3cout“max=max(1.0,21.5f 87.4)endl;/max=87.4
6、cout umax=max(gh”,atye,zs )endl;/max=zscout umax=f,max(23,7,62)endl;/max=62return 0;(假定所有的赋值、比较运算符都已定义)答案:templateT max(T xf T y)return x=y?x:y;templateT max(T x,T y,T z)(T temp;temp=max(x,y);return temp=z?temp:z;float max(int x,float y)return x=y?x:y;)4.(20 分)真的不掉线吗?,?定义堆栈类模板Stack,栈的大小由使用者确是.要求该类模板
7、对外提供如下二种基本操作:(1)push(2)pop(假定赋值操作已定义)答案:/fine 1 ude template class Stack(T ssize;int iCurrentElem;public:Stack 0;bool push(T x);T pop 0;void print 0(for(int i=0;isize;i+)coutsiendl;);templateStack:Stack()for(int i=0;isize;i+)si=0;iCurren tElem=-l;templatebool Stack:push(T x)(i f (iCurren tElem=(s iz
8、e-1)cout,I t/s full.endl;return fa Ise;else(s+iCurrentElem=x;return true;)templateT Stack:pop()T temp;i f (iCurrentElem=-l)cout,I t/s empty.,endl;return-1;)else temp=siCurrentElem;siCurrentElem=0;iCurrentElem-;return temp;void main()float t;Stack si;si.push(10);si.push(20);si.push(30);si.push(40);si
9、.print();t=sl.pop 0;si.print();couttendl;5(2其的不掉线吗?,?5分)用C+语言定义MyString(包括成员函数的实现代码),使之能符合下面程序及在注释中描述的运行结果的要求:ma in 0MyString si=0123456789,s2,s3,s4(sl);si.display();/此时显示出:s2.display 0;此 时 显 示 出(之间是五个空格):s3.display 0;/此时显示出:s4.display();此时显示出:s3=si;s3.display();此 时 显 示 出:s3=3+s 3;s3.display 0;此 时 显
10、 示 出:0123456789999s2=si 2;s2.display 0;/此时显示出:23456789)si.display();/此时显示出:s3=s2+;s2.display 0;/此时显示出:s3.display 0;此 时 显 示 出:答案:#include include#include class MyString char cpBody81;public:MyString(const char*p=NULL);MyString(int i);MySt r ing(MySt r ingi s);MyString&operator=(const MyString&s)stmcp
11、y(cpBody,s.cpBody,80);return his;MyString&operator(int i);MyString&operator+(int i)static MyString s;s=*this;*this=(cpBody0=z 07)?*this:(*this)1;returnvoid display 0 print f (n cpBody);)friend MyString&operator+(int i,MyString&s););MyS tri ng:MyS t r i ng(cons t char*p)i f (p=NULL)cpBody0=z I O;else
12、strncpy(cpBody,p,80);真的不掉线吗?999999999999MySt ri ng:MyString(int i)int j;for(j=0;j i&j 80;j+)cpBodytj=cpBodyJ=MyString:MyString(MyString&s)*this=s;/*或 者 改 用 如下语 句:int length;length=strlen(s.cpBody);for(in t i=0;ilength-f-l;i+)cpBodyi=s.cpBodyi;*/MyString&MyString:opera tor(int i)sta tic MyString s;in
13、t j;s=*this;for(j=i;cpBody j/=z 10/;j+)s.cpBody j-i=s.cpBody j;s.cpBody j-i=z 10;return s;)MyString&operator+(int N,MyString&s)static MyString st;int i,length;length=strlen(s.cpBody);for(i=0;iN;i+)s.cpBodylength+i=s.cpBodylength-1;s.cpBodylength+i=0;st=s;return st;)6.(1 5 分)某公司有二类职员E m p l o y e e和M
14、 a na g e r,M a na g e r亦属于E m p l o y e e。每个E m p l o y e e对象所具有的基本信息为:姓名、年令、工作年限、部门号,M a na g e r对象除具有上述基本信息外,还有级别(l e v e l)信息。公司中的二类职员都具有二种基本操作:1).p r i nt O nO /输出个人信息2).r e t i r e 0 判断是否到了退休年令,麦,则从公司中除名。公司规定:/E m p l o y e e类的退休年令为5 5岁,M a na g e r类的退休年令为6 0岁。要求:1).定义并实现类E m p l o y e e和M a n
15、a g e r;2).分别榆出公司中二类职员的人数(注意:M a n a g e r亦属于E m p l o y e e)。答案:/fine 1 ude#include 真的不掉线吗?、??class Employee char name21;int work Year;int de pa r tmen t Num;protected:sta tic int ENumber;int age;public:Employee(char*s,int agel,in t workYearl,int depN)i f (str Jen(s)=18&workYearl=0&depN0)age=agel;w
16、orkYear=workYearl;depa r tmen t Num=depN;Employee:ENumber+;)virtual void printOn()coutnam en,a g e,w orkYear,depa r tmen tNum=55)(delete this;Employee:ENumber;)else return;sta tic void countE0(coutEmployee:ENumberendl;;int Emp 1 oyee:ENumber=O;class Manager:public Employeeint level;sta tic int MNumb
17、er;public:Manager(char*sf int agel,int workYearl,int depN,in t lev):Employee(s,a gel,work Yea rlf depN),level(lev)Manager:MNumber+;)void printOn()(Emp 1 oyee:printOn();coutlevel=60)(delete this;Manager:MN umber-;Employee:ENumber-;else return;static void countM()(coutManager:MNumber 9 )9 9 9小学数学考查内容一
18、年级1.设计并制作折纸飞机,把步骤记录下来。(10%)2.在家长或老师的陪同下逛小小商店,体验怎样购物及购物时怎样付钱,把过程整理下来.(10%)二年级1.剪一剪:设计并剪出自己喜欢的图案,以组为单位比一比看谁的美现、漂 亮.(10%)2.以小组为单位称体重,把结果整理并记录,根据数据提出自己的建议。(10%)三年级1.到图书室或网上查找与千米有关的资料,并在小组里交流,哪些知识用到了千米而不用米等长度单位.原因何在?(10%)2.通过实验了解运动前后1分钟脉搏跳动次数的变化情况.旧人一组做实验,把得到的数据填入表格里,并求出小组每次测量脉搏的平均数.(10%.)四年级1.查阅资料,了解美妙的
19、“杯琴”为什么会发出不同的声音?原因何在?把情况记录下来.(10%.)2.先画出一个或几个图形,再运用对称、平移或旋转的方法,设计美丽的图案,并在小组里 交 流.(图见课本第69页)(10%.)五年级1.运用所学的知识,分组设计包装方案。先设想与摆放,再记录和计算,然后交流与比较,最后看你有什么发现与思考.(10%.)2.调查与收集:通过上网、笈 列,询问等途径了解关于豆芽的情况(如营养成分、发制方法、烹饪方法等).把你收集、调查到的相关信息填在表格里(见课本第130页),并注明信息来 源.(10%.)真的不掉线吗?9 9 7 9 9 9 7 9 9 9 7 9小学音乐考查内容一年级l.Jfl
20、 啦”或“噜”模 唱 乃吻刀歌谱。(40%)2.背唱歌曲。云 儿(60%)二年级1.你能在演唱歌曲 请来看看我们的村庄 中正确地换气吗?嚼 一 喙(30%)2.装 簿 理发师(30%)三年级1.试着唱一唱rfW花的歌谱.(40%)2.背唱歌曲 卖报歌.(60%)四 年 级1.京剧主要的艺术装现手段有哪些?主要唱腔有哪些?四个行当分别是什么?(40%)2.背唱歌曲 茉莉花.(60%)五年级1.用双响筒,碰钟.三角铁、铃鼓,自编节奏型为歌曲 铃儿响町当伴 奏.(40%)2.分角色为 蛔蛔和蝴蝴设计表演,唱 一 喙(60%)小学美术考查内容一年级1.一张长纸条可以卷成很多的形状,你能用不同的卷纸方法
21、,制作一只神气的小狐狸或可爱的,卜花猫吗?(40%)2.画画镜子中的你或你的同位、好朋友.(60%)二年级1.什么在中国被称为“文房四宝”?(40%)2.请把你了解的好人好事画下来,设计制作成一幅宣传画.(60%)三年级1.谈谈你对原色、间色的了解。如何调制间色?试一试.(40%)2.创作一幅彩色吹塑纸版画.(60%)四年级1.用黑体字写出“我爱班集体”.(40%)2.请印制一幅画面简单的单色纸版画.(真的不掉线吗?,?60%)五年级1.用剪刻、压折的方法制作一件具有立体感的硬纸作品.(40%)2.设计一幅保护水资源的招贴画.(60%)小学英语口语考查内容三年级朗 读.(5%)朗读第五单元A部
22、分Let,s ta lk。(第5。页)要求学生语音语调正确流利.二.看 图,说 单 词.(5%)三.与同伴聂演对话.(5%)学生自由选择搭档,自由选择感兴趣的话题.自编自演一段对话。要求情景合理.对话不少于三个来回。四、英语歌初或儿歌.(5%)学生从课本上自由选择一首英语歌曲或儿歌进行演唱或者技演。四年级朗 读.(5%)朗读第四单元A部分Lets ta lk.(第47页)要求学生语音语调正确流利.二.看图,说单词.用一个词来宾示图国中聂示的天气状况.(5%)与同伴获演对话.(5%)学生自由选择搭档,自由选择感兴趣的话题.自编自演一段对话“要求情景合理.对话不少于四个来回.四,英语歌曲或儿歌。(
23、5%)学生从课本上自由选择一首英语歌曲或儿歌进行演唱或者表演。五年级一,朗读下列单词。(5%)parent holiday suggest dragon circle funny history borrow arrivebuilding二、朗读下列句子。(5%)1.The mountains are really beautiful.2.Lets send an email to Dad.3.Why dont you give him a kite?4.The actors told lots of jokes.5.When are you going to go to the airpor
24、t?三,与同伴表演对话。(5%)学生自由选择搭档,自由选择感兴趣的话题。自编自演一段对话。要求情景合理。对话不少于四个来回.四,演唱一首英语歌曲或朗诵一首英语诗歌.(5%)学生自由选择一首课本上的英语歌曲或儿歌进行荥演.小学信息技术一至五年级-学习态度.学习方法根据学生每个模块信息技术学习的兴趣、态 度,学习的方式.方法及学习效果,确定A.B,C.D四个等次。二.上机操作1.根据所学内容,让学生在规定时间内完成单项任务(如:汉字榆入、文字修饰、制作表格等),根据每个学生完成情况确定A、B.C,D四个等次。2.让学生综合运用所学知识完成一幅作品,根据每个学生的作品情况确定A、B.C.D四个等次。
25、综合以上情况为每个学生确定合适的等次.三项中有两个相同等次,即确定为相同等次级别;三项中都不相同即确定为中间等次级别.小学体育一至二年级投沙包三至四年级立定跳远五年级5 0米跑,仰卧起坐(标 准 见 国家体育锻炼标准的要求,由各单位具体操作)真的不掉线吗?999999999999Unit51.如果你去参加聚会,你将会玩得很愉快.2.如果你努力学习,你将会取得好成绩并且上大学.3.不要带手机来学校。如果你这么做,老师会把它没收.4.如果你成名了,人们将一直注视你到处跟着你.5.如果我赚了很多我,我会环游世界.真的不掉线吗?、??6.他以买报为生.7.对于一个运动员来说是很容易受伤的,8.我赞成你
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C+ 期末考试 试题 答案
限制150内