还剩9页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
南昌大学2008~2009学年第二学期期末考试试卷试卷编号B卷课程编号课程名称C++语言程序设计考试形式闭卷适用班级姓名学号班级学院专业考试日期题号一二三四五六七八九十总分累分人签名题分3020102020100得分考生注意事项
1、本试卷共7页,请查看试卷中是否有缺页或破损如有立即举手报告以便更换
2、考试结束后,考生不得将试卷、答题纸和草稿纸带出考场选择题每小题2分,共30分得分评阅人
1、下列字符串中可以用作C++标识符的是A_123Bfoo~barCcaseD3var
2、字符串”student”占用个字节的空间A7 B6 C5 D
83、在inta[]
[3]={{1}{32}{456}{0}}中,a
[2]
[2]的值是A3 B2 C6 D
44、在类中说明的成员可以使用关键字进行修饰Aprivate BexternCauto Dregister
5、下列关于指针运算的描述错误的是A在一定条件下,两个指针可以进行关系运算B在一定条件下,两个指针可以相加C在一定条件下,指针可以为空D在一定条件下,两个指针可以相互赋值
6、在C++语言中,对函数参数默认值描述正确的是A函数参数的默认值只能设定一个B一个函数的参数若有多个,则参数默认值的设定可以不连续C函数参数必须设定默认值D在设定了参数的默认值后,该参数后面定义的所有参数都必须设定默认值
7、假定AB为一个类,则执行ABx;语句时将自动调用该类的A有参构造函数B无参构造函数C拷贝构造函数D赋值构造函数
8、下述关于开关语句的描述中,是正确的A开关语句中default子句可以没有,也可以有一个;B开关语句中每个语句序列中必须有break语句;C开关语句中default子句只能放在最后;D开关语句中case子句后面的表达式可以是整形表达式
9、关于对象概念的描述中,是错误的A对象就是C语言中的结构变量;B对象代表着正在创建的系统中的一个实体;C对象是一个状态和操作(或方法)的封装体;D对象之间的信息传递是通过消息进行的;
10、下列给字符数组进行初始化中,是正确的Achars1[]=12345abcd;Bchars2
[3]=xyz;Cchars3[]
[3]={axy};Dchars4[2
[3]={xyzmnp};
11、一个const对象A能访问所有成员函数B只能访问const成员函数C也能访问volatile成员函数D能访问const和volatile成员函数
12、声明类test的拷贝构造函数的正确形式是AinttestBvoidtestCtestvoidDtesttest
13、关于new运算符的下列描述中,是错的A它可以用来动态创建对象和对象数组;B使用它创建的对象或对象数组可以使用运算符delete删除;C使用它创建对象时要调用构造函数;D使用它创建对象数组时必须指定初始值
14、在C++中有以下4条语句staticinthot=200;intrad=hot; hot=hot+100;coutradendl;执行这4条语句后输出为A0 B100C300 D
20015、下列关于构造函数的描述中,错误的是A构造函数可以设置默认参数;B构造函数在声明对象时自动执行;C构造函数可以对静态数据成员进行初始化;D构造函数可以重载;填空题每空题1分,共20分得分评阅人
1、C++程序中,一个基本语句的最后一个字符是【1】
2、一个C++程序的开发步骤通常包括编辑、【2】编译、【3】链接、运行和调试
3、类的具体表现是通过定义【4】成员函数__来操作的
4、一般情况下,按照面向对象的要求,把类中的数据成员属性定义为【5】__权限,而把成员函数方法定义为【6】__权限
5、假定用户没有给一个名为MyClass的类定义构造函数和析构函数,则系统为其定义的默认构造函数形式为_【7】____,默认析构函数形式为【8】_
6、在类中定义和实现的函数称为_【9】内联函数_
7、 描述命题A大于B或小于C的表达式为 【10】
8、C++中没有字符串类型,字符串是通过 【11】字符串数组来表示的,每一个字符串都有一个结尾字符【12】‘\0’
9、要使语句p=newdouble
[12]
[5];能够正常执行,变量p的定义应为13double*p
10、当一个成员函数被调用时,该成员函数的【14】this指针指向调用它的对象
11、完成下面的类定义classMyClass{public:MyClass{x=0;}【15】friend__intGetNum【16】MyClass___my;private:intx;};intGetNum_【17】MyClass___my{returnmy.x;}
12、以下程序实现求1~100这100个整数的和的运算#includeiostream.hvoidmain{int isum; sum=0;fori=1;【18】i=100 ; 【19】i++ 【20】sum+=i ;cout”sum=”sum;}判断题每小题1分,共10分得分评阅人C++程序中的变量,必须先定义声明,才能使用()While循环语句的循环体至少执行一次( )C++中允许对数组进行动态定义( )double数据类型属于简单数据类型()类中所提供的成员函数可以直接访问私有成员( )返回值类型、参数个数和参数类型都相同的函数也可以重载( )友元函数是类的成员函数,所以可以存取或修改该类中的私有成员( )析构函数是函数体为空的函数()C++中,当我们定义了数组inta
[5];则数组元素的下标从1到
510、就是某个变量的别名,对引用的操作,实质上就是对被引用的变量的操作( )程序阅读题每小题5分,共20分得分评阅人写出下列程序的运行结果
1、#includeiostream.hvoidmain{intx=3y=3;switchx%2{case1:switchy{case0:coutFirst\t;case1:coutSecond\t;break;default:coutHellow\t;}case2:coutThird\n;}}
2、#includeiostream.hvoidmain{inta=50b0;b=++a;coutabendl;b=a++;coutabendl;}
3、#include iostream.h void main { int i=1; while i=15{ i++; if i%3!=2 continue; else cout i“”; } }
4、#includeiostream.hclassA{inta;public:Aintaa=0{a=aa;}~A{cout”DestructorA!”aendl;}};classB:publicA{intb;public:Bintaa=0intbb=0:Aaa{b=bb;}~B{cout”DestructorB!”bendl;}};voidmain{Bx5y67;}程序设计题每小题10分,共20分得分评阅人编写一个判断素数的函数,并输出100-300之间的全部素数之和定义并实现一个时钟类,要求能设置并显示时间南昌大学2008~2009学年第二学期期末考试试卷C++程序设计(B卷)参考答案1A2D3C4A5B6D7B8A9A10A11B12D13D14C15C
1、选择题(每小题2分,共30分)
2、填空题(每空1分,共20分)【1】分号;【2】编译【3】链接【4】成员函数【5】private【6】public【7】MyClass{}【8】~MyClass{}【9】内联函数【10】AB||AC【11】数组【12】‘\0’【13】double*p;【14】this指针【15】friend【16】MyClass【17】MyClass【18】i=100【19】i++【20】sum+=i
3、判断题(每小题1分,共10分)1√2×3×4√5√6×7×8×9×10√
4、程序阅读题每小题5分,共20分
1、HellowThird
2、
25811142、
51514、DestructorB!75251DestructorA!6DestructorB!0DestructorA!
55、程序设计题每小题10分,共20分
1、#includeiostream.hboolprimeintn;voidmain{intsum=0;forinti=100;i300;i++ifprimeisum+=i;coutSum=sumendl;}boolprimeintn{forinti=2;in;i++{ifn%i==0{returnfalse;}}returnTRUE;}
2、#includeiostreamusingnamespacestd;classClock{public:voidSetTimeinth=0intm=0ints=0;voidShowTime;private:intHourMinuteSecond;};voidClock::SetTimeinthintmints{Hour=h;Minute=m;Second=s;}voidClock::ShowTime{coutHour”:”Minute”:”Secondendl;}voidmain{ClockMyClock;MyClock.SetTime81030;MyClock.ShowTime说明请将前面4个大题的答案写到答题卡上。