深圳大学C++期末考试试卷及答案

合集下载

大学C期末考试试卷(含答案)

大学C期末考试试卷(含答案)

一、单项选择题(每题2分,共40分)1-5. BDABC 6-10. BDAAC11-15. CADBB 16-20. CADDAB 1. ______不是属于面向对象程序设计的特性A. 抽象性B. 数据相关性C. 多态性D. 继承性D 2. 将对某一类数据的处理算法应用到另一类数据的处理中,要用到C++的______A. 类B. 虚函数C. 运算符重载D. 模板A 3. C++与C语言最根本的不同之处在于_______A. 使用了类B. 能够实现变量自动初始化C. 支持软件重用D. 支持接口重用B 4. 动态内存分配的主要目的是_______A. 使程序按动态联编方式运行B. 正确合理的使用内存C. 提高程序的运行速度D. 提高程序的可维护性C 5. 在C++函数的形参前加const关键字,是为了提高函数的_______A. 数据封装性B. 可理解性C. 可维护性D. 可重用性B 6. 函数重载的目的是________A. 实现共享B. 使用方便,提高可读性C. 提高速度D. 减少空间D 7. 从程序片断:char name[] = "C++"; course(name);可判断函数course的调用采用的是_______ A. 传值调用 B. 带缺省参数值的函数调用 C. 引用调用 D. 传址调用A 8. 用来说明类中公有成员的关键字是________A. publicB. privateC. protectedD. friendA 9. 如果一个类的成员函数print()不修改类的数据成员值,则应将其声明为A. void print() const;B. const void print();C. void const print();D. void print(const);C 10. 下列关于构造函数的论述中,不正确的是_______A. 构造函数的函数名与类名相同B. 构造函数可以设置默认参数C. 构造函数的返回类型缺省为int型D. 构造函数可以重载C 11. 在程序代码:A::A(int a, int *b) { this->x = a; this->y = b; }中,this的类型是______ A. int B. int * C. A D. A *A 12. 内存泄漏是指_______A. 内存中的数据出现丢失B.试图释放一个已经释放了的动态分配的堆内存C. 函数中局部变量所占的栈内存没有及时回收D. 动态分配的堆内存在程序退出后始终被占用D 13. 从程序片断:student zhangsan("张三","M",22); zhangsan.id("2005131000");可判断id 是一个________A. 私有成员数据B. 私有成员函数C. 公有成员数据D. 公有成员函数C. 可以用类名或对象名来调用D. 只能用对象名来调用B 15. 若一个类的成员函数前用static关键字修饰,则该成员函数________A. 可以被声明为constB. 没有this指针C. 可以访问该类的所有成员D. 只能用对象名来调用C 16. C++是用_______实现接口重用的A. 内联函数B. 虚函数C. 重载函数D. 模板函数A 17. 公有继承的派生类对象可以访问其基类的________A. 公有成员B. 公有成员及受保护成员C. 受保护成员D. 私有成员D 18. 设置虚基类的目的是________A. 简化程序B. 使程序按动态联编方式运行C. 提高程序运行效率D. 消除二义性D 19. 下列关于纯虚函数和抽象类的描述中,不正确的是________A. 纯虚函数是一个没有具体实现的虚函数B. 抽象类是包括纯虚函数的类C. 抽象类只能作为基类,其纯虚函数的实现在派生类中给出D. 可以定义一个抽象类的对象A 20. 关于运算符重载的不正确的描述是________A. 运算符重载函数是友元函数B. 体现了程序设计的多态性C. 增加新的运算符D. 使运算符能对对象操作二、下面的程序是关于CBook类的一个定义,试改正程序中的错误。

2022年深圳大学公共课《C语言》科目期末试卷A(有答案)

2022年深圳大学公共课《C语言》科目期末试卷A(有答案)

2022年深圳大学公共课《C语言》科目期末试卷A(有答案)一、填空题1、设有char a,b;若要通过a&b运算屏蔽掉a中的其他位,只保留第2和第8位(右起为第1位),则b的二进制数是_______。

2、在C语言源程序中,一个变量代表【】。

3、C语言的源程序必须通过【】和【】后,才能被计算机执行。

4、在C语言中,用关键字_______定义单精度实型变量,用关键字_______定义双精度实型变量,用关键字_______定义字符型变量。

5、若a是int型变量,则表达式(a=4*5,a*2),a+6的值为_______。

6、下面程序段的运行结果是_______。

Char a[]="123456789",*p;inti=0;p=a;while(*p){if(i%2==0)*p='*';p++;i++;}puts(a);7、下面程序段的运行结果是_______。

x=2;do{printf("*");x--;)while(!x==0);8、设有以下定义和语句,请在printf语句的_______中填上能够正确输出的变量及相应的格式说明。

union{int n;doublex;}num;num.n=10;num.x=10.5;printf("_______",_______);9、假设变量a、b和c均为整型,以下语句借助中间变量t把a、b和c中的值进行交换,即把b中的值给a,把c中的值给b,把a中的值给c。

例如:交换前,a=10、b=20、c=30;交换后,a=20、b=30、c=10。

请填空。

_______;a=b;b=c;_______;10、下面程序段的运行结果是_______。

char ch[]="600";int a,s=0;for(a=0;ch[a]>= '0'&&ch[a]<='9';a++)s=10*s+ch[a]-'o';printf("%d",s);二、选择题11、C语言中的标识符只能由字母、数字和下划线3种字符组成,且第一个字符( )A.必须为字母B.必须为下划线C.必须为字母或下划线D.可以是字母、数字和下划线中任一种字符12、下面正确的字符常量是( )A."c"B. "\\"C. 'w'D. "13、阅读以下程序,当输入数据的形式为25,13,10<回车>,程序的输出结果#include<stdio.h>int main(){int x,y,z;scanf("%d%d%d”,8.x.&y,&z);printf("x+y+z=%d\n",x+y+z);return0;}A.x+y+z=48B.x+y+z=35C.x+z=35D.不确定值14、设有如下程序:#include<stdio.h>int main(){char ch1='A',ch2='a';printf("%c\n",(chl,ch2));return 0;}则以下叙述中正确的是()。

c期末考试题目及答案详解

c期末考试题目及答案详解

c期末考试题目及答案详解一、选择题(每题2分,共20分)1. 以下哪个选项是描述计算机存储器的容量单位?A. 米B. 千克C. 字节(Byte)D. 秒答案:C详解:计算机存储器的容量单位通常以字节(Byte)为单位,1字节等于8位(bit)。

其他选项分别代表长度、质量、时间的单位。

2. 在数学中,以下哪个公式用于计算圆的面积?A. A = πr²B. A = 2πrC. A = πrD. A = r²答案:A详解:圆的面积计算公式为A = πr²,其中 r 代表圆的半径,π 是圆周率,约等于 3.14159。

(此处省略其他选择题,共10题)二、填空题(每空1分,共10分)1. 在二进制数系统中,数字“10”表示十进制数中的_。

答案:2详解:二进制数系统中,从右到左的每一位分别代表2的0次方、2的1次方等。

因此,“10”表示 2^1 * 1 + 2^0 * 0 = 2。

2. 牛顿第二定律表明,力等于质量乘以_。

答案:加速度详解:牛顿第二定律的公式为 F = ma,其中 F 代表力,m 代表质量,a 代表加速度。

(此处省略其他填空题,共5空)三、简答题(每题5分,共10分)1. 解释什么是操作系统,并简要描述其主要功能。

答案:操作系统是管理计算机硬件和软件资源的系统软件,它提供了用户与计算机硬件之间的接口。

主要功能包括进程管理、内存管理、文件系统管理、输入/输出设备管理等。

详解:操作系统负责分配和调度计算机资源,如CPU时间、内存空间和I/O设备,以确保程序的高效运行。

它还负责文件系统的管理,确保数据的存储、检索和保护。

2. 描述什么是遗传算法,并简述其基本工作原理。

答案:遗传算法是一种模拟自然选择和遗传学原理的搜索算法,用于解决优化问题。

详解:遗传算法通过模拟生物进化过程中的遗传、变异和自然选择机制来迭代地改进解决方案。

它从一组随机生成的候选解开始,通过选择、交叉和变异等操作生成新的解,然后根据适应度函数评估这些解,并选择最优解进行迭代。

c期末考试试题及答案

c期末考试试题及答案

c期末考试试题及答案### 期末考试试题及答案#### 一、选择题(每题2分,共20分)1. 计算机科学中的“冯·诺依曼”架构指的是什么?A. 一种编程语言B. 一种操作系统C. 一种计算机存储结构D. 一种计算机网络协议2. 在数学中,下列哪个选项表示“或”逻辑?A. ∧B. ∨C. ⇒D. ¬3. 根据牛顿第三定律,作用力与反作用力的关系是什么?A. 相等且方向相反B. 相等且方向相同C. 不相等且方向相反D. 不相等且方向相同4. 英语中,“as well as”用于连接两个并列的成分,其含义是什么?A. 以及B. 而不是C. 但是D. 尽管5. 在经济学中,GDP代表什么?A. 国内生产总值B. 国内生产成本C. 国内生产利润D. 国内生产投资6. 根据达尔文的进化论,物种进化的驱动力是什么?A. 突变B. 自然选择C. 人工选择D. 环境适应性7. 在化学中,pH值用来衡量什么?A. 溶液的浓度B. 溶液的酸碱性C. 溶液的离子强度D. 溶液的溶解度8. 根据相对论,时间旅行理论上可能吗?A. 是的,只要超过光速B. 是的,只要存在闭合时间曲线C. 不可能,因为时间是线性的D. 不可能,因为相对论禁止超光速9. 在心理学中,弗洛伊德的“超我”是什么?A. 潜意识B. 意识C. 无意识D. 道德监督者10. 在物理学中,光的波粒二象性指的是什么?A. 光同时具有波和粒子的特性B. 光只具有波的特性C. 光只具有粒子的特性D. 光既没有波的特性也没有粒子的特性#### 二、简答题(每题10分,共30分)1. 解释什么是“二进制”并举例说明其在计算机科学中的应用。

2. 描述牛顿第二定律,并给出一个实际生活中的例子。

3. 解释什么是“通货膨胀”,并简述其可能带来的社会经济影响。

#### 三、论述题(每题25分,共50分)1. 论述互联网对现代社会的影响,并讨论其正面与负面影响。

深圳大学2014-2015学年《面向对象程序设计》C++期末考试试卷及答案

深圳大学2014-2015学年《面向对象程序设计》C++期末考试试卷及答案

一、单项选择题(每题2分,共40分)1. ______不是属于面向对象程序设计的特性A. 抽象性B. 数据相关性C. 多态性D. 继承性2. 将对某一类数据的处理算法应用到另一类数据的处理中,要用到C++的______A. 类B. 虚函数C. 运算符重载D. 模板3. C++与C语言最根本的不同之处在于_______A. 使用了类B. 能够实现变量自动初始化C. 支持软件重用D. 支持接口重用4. 动态内存分配的主要目的是_______A. 使程序按动态联编方式运行B. 正确合理的使用内存C. 提高程序的运行速度D. 提高程序的可维护性5. 在C++函数的形参前加const关键字,是为了提高函数的_______A. 数据封装性B. 可理解性C. 可维护性D. 可重用性6. 函数重载的目的是________A. 实现共享B. 使用方便,提高可读性C. 提高速度D. 减少空间7. 从程序片断:char name[] = "C++"; course(name);可判断函数course的调用采用的是_______A. 传值调用B. 带缺省参数值的函数调用C. 引用调用D. 传址调用8. 用来说明类中公有成员的关键字是________A. publicB. privateC. protectedD. friend9. 如果一个类的成员函数print()不修改类的数据成员值,则应将其声明为A. void print() const;B. const void print();C. void const print();D. void print(const);10. 下列关于构造函数的论述中,不正确的是_______A. 构造函数的函数名与类名相同B. 构造函数可以设置默认参数C. 构造函数的返回类型缺省为int型D. 构造函数可以重载11. 在程序代码:A::A(int a, int *b) { this->x = a; this->y = b; }中,this的类型是______A. intB. int *C. AD. A *12. 内存泄漏是指_______A. 内存中的数据出现丢失B.试图释放一个已经释放了的动态分配的堆内存C. 函数中局部变量所占的栈内存没有及时回收D. 动态分配的堆内存在程序退出后始终被占用13. 从程序片断:student zhangsan("张三","M",22); zhangsan.id("2005131000");可判断id是一个________A. 私有成员数据B. 私有成员函数C. 公有成员数据D. 公有成员函数14. 友元函数_______A. 可以被声明为constB. 没有this指针C. 可以用类名或对象名来调用D. 只能用对象名来调用15. 若一个类的成员函数前用static关键字修饰,则该成员函数________A. 可以被声明为constB. 没有this指针C. 可以访问该类的所有成员D. 只能用对象名来调用16. C++是用_______实现接口重用的A. 内联函数B. 虚函数C. 重载函数D. 模板函数17. 公有继承的派生类对象可以访问其基类的________A. 公有成员B. 公有成员及受保护成员C. 受保护成员D. 私有成员18. 设置虚基类的目的是________A. 简化程序B. 使程序按动态联编方式运行C. 提高程序运行效率D. 消除二义性19. 下列关于纯虚函数和抽象类的描述中,不正确的是________A. 纯虚函数是一个没有具体实现的虚函数B. 抽象类是包括纯虚函数的类C. 抽象类只能作为基类,其纯虚函数的实现在派生类中给出D. 可以定义一个抽象类的对象20. 关于运算符重载的不正确的描述是________A. 运算符重载函数是友元函数B. 体现了程序设计的多态性C. 增加新的运算符D. 使运算符能对对象操作二、下面的程序是关于CBook类的一个定义,试改正程序中的错误。

大学生C语言期末考试试题汇总

大学生C语言期末考试试题汇总

大学生C语言期末考试试题汇总第1-3章习题一、单项挑选题1C语言属于()。

A.机器语言B.低级语言C.中级语言D.高级语言2一个C程序可以包含随意多个不同名的函数,但有且仅有一个。

A.函数B.主函数C.includeD.过程3系统默认的C语言源程序扩展名为.C,需经过之后,生成.exe文件,才干运行?A.编辑?编译B.编译?衔接C.编辑?改错D.编辑?衔接4C语言程序从开头执行。

A.程序中第一条可执行语句B.程序中第一个函数C.程序中的main函数D.包含文件中的第一个函数5C语言程序是由构成的。

A.一些可执行语言B.main函数C.函数D.包含文件中的第一个函数6一个算法应具有“确定性”等5个特性,则对另外4个特性描述错误的是。

A.有效性B.有穷性C.有零个或多个输入D.有零个或多个输出7设变量a是整型,f是实型,i双精度型,则表达式10+’a’+i*f 值的数据类型。

A.intB.floatC.doubleD.不确定8在C语言中,变量所分配的内存空间大小是由。

A.均为一个字节B.由用户自己定义C.由变量的类型打算D.是随意的9执行scanf (“a=%d,b=%d”,&a,&b)语句,若要使变量a和b的值分离为3和4,则正确的输入办法为。

A. 3 ,4B.a:3 b: 4C.a=3,b=4D. 3 410在算术表达式中允许使用的括号类型是。

A.{ }B.[ ]C.( )D.以上三项皆错11存储以下数据,占用存储字节最少的是。

A. 0B. ‘0’C. “0”D. 0.012设n=10,i=4,则运算n%=i+1执行后,n 的值是。

A.0B.3C.2D.113C语言中运算对象必需是整型的运算符是。

A.%B. /C. =D.〈=14已知int x=5,y=5,z=5;执行语句x%=y+z;后,x的值是.A .0 B. 1 C. 5 D. 615若有以下类型说明语句:char w;int x;float y;double z;则表达式w-x*y/z的结果为类型A.floatB.charC.intD.double16在C语言的库函数中,可以输出char型变量x值的语句是。

2007年深圳大学C++期末考试试卷(含答案)

2007年深圳大学C++期末考试试卷(含答案)

深圳大学期末考试试卷开/闭卷 闭卷A/B 卷 A 卷 课程编号 22139906课程名称面向对象程序设计学分 2.5命题人(签字) 张冰 审题人(签字) 2007 年 5 月 29 日 题号 一 二 三 四 五 六 七 八 九 十 基本题总分附加题得分评卷人一、单项选择题(每题2分,共40分)1. ______不是属于面向对象程序设计的特性A. 抽象性B. 数据相关性C. 多态性D. 继承性2. 将对某一类数据的处理算法应用到另一类数据的处理中,要用到C++的______A. 类B. 虚函数C. 运算符重载D. 模板3. C++与C 语言最根本的不同之处在于_______A. 使用了类B. 能够实现变量自动初始化C. 支持软件重用D. 支持接口重用4. 动态内存分配的主要目的是_______A. 使程序按动态联编方式运行B. 正确合理的使用内存C. 提高程序的运行速度D. 提高程序的可维护性5. 在C++函数的形参前加const 关键字,是为了提高函数的_______A. 数据封装性B. 可理解性C. 可维护性D. 可重用性6. 函数重载的目的是________A. 实现共享B. 使用方便,提高可读性C. 提高速度D. 减少空间7. 从程序片断:char name[] = "C++"; course(name);可判断函数course 的调用采用的是_______ A. 传值调用 B. 带缺省参数值的函数调用 C. 引用调用 D. 传址调用8. 用来说明类中公有成员的关键字是________A. publicB. privateC. protectedD. friend9. 如果一个类的成员函数print()不修改类的数据成员值,则应将其声明为A. void print() const;B. const void print();C. void const print();D. void print(const);10. 下列关于构造函数的论述中,不正确的是_______A. 构造函数的函数名与类名相同B. 构造函数可以设置默认参数C. 构造函数的返回类型缺省为int 型D. 构造函数可以重载11. 在程序代码:A::A(int a, int *b) { this->x = a; this->y = b; }中,this 的类型是______ _____________ ________学院 专业 姓名 学号( 密 封 线 内 不 答 题 ) …………………………………密………………………………………………封………………………………………线………………………………12. 内存泄漏是指_______A. 内存中的数据出现丢失B.试图释放一个已经释放了的动态分配的堆内存C. 函数中局部变量所占的栈内存没有及时回收D. 动态分配的堆内存在程序退出后始终被占用13. 从程序片断:student zhangsan("张三","M",22); zhangsan.id("2005131000");可判断id是一个________A. 私有成员数据B. 私有成员函数C. 公有成员数据D. 公有成员函数14. 友元函数_______A. 可以被声明为constB. 没有this指针C. 可以用类名或对象名来调用D. 只能用对象名来调用15. 若一个类的成员函数前用static关键字修饰,则该成员函数________A. 可以被声明为constB. 没有this指针C. 可以访问该类的所有成员D. 只能用对象名来调用16. C++是用_______实现接口重用的A. 内联函数B. 虚函数C. 重载函数D. 模板函数17. 公有继承的派生类对象可以访问其基类的________A. 公有成员B. 公有成员及受保护成员C. 受保护成员D. 私有成员18. 设置虚基类的目的是________A. 简化程序B. 使程序按动态联编方式运行C. 提高程序运行效率D. 消除二义性19. 下列关于纯虚函数和抽象类的描述中,不正确的是________A. 纯虚函数是一个没有具体实现的虚函数B. 抽象类是包括纯虚函数的类C. 抽象类只能作为基类,其纯虚函数的实现在派生类中给出D. 可以定义一个抽象类的对象20. 关于运算符重载的不正确的描述是________A. 运算符重载函数是友元函数B. 体现了程序设计的多态性C. 增加新的运算符D. 使运算符能对对象操作二、下面的程序是关于CBook类的一个定义,试改正程序中的错误。

深圳大学10年高数C(2)试卷A

深圳大学10年高数C(2)试卷A

深圳大学期末考试试卷开/闭卷 闭卷A/B 卷 A 课程编号 2219001501-20 课程名称高等数学C(2)学分 4命题人(签字) 审题人(签字) 2010 年 6 月 日一、单项选择题(本题共6小题,每小题3分,满分18分)1.设 ()y f x = 是定义在 (),-∞+∞ 上的连续函数,则⎰=xdt t tf dx d02)(( )A. 2()x f x ⋅ ;B. 2()x f x -⋅ ;C. 22()x f x ⋅ ;D. 22()x f x -⋅ 。

2.下列反常积分中,收敛的是 ( )A. 0x x e dx +∞-⋅⎰ ;B. 0x x e dx +∞⋅⎰ ; C. 1201dx x ⎰ ; D. 11e dx x nx ⋅⎰ 。

3.设 22(,)43f x y x xy y =-+ ,则0(1,1)(1,1)y f y f im y∆→+∆-=∆ ( )A. 0 ;B. 1 ;C. 2 ;D. 34.设 :0D x ≥ ,2214x y ≤+≤ , 则 Ddxdy =⎰⎰ ( ) A. 2π ; B. π ; C. 32π ; D. 2π 。

5.下列说法中,正确的是 ( )A.若 21pn n ∞-=∑收敛,则3<p ;B.若 21n n a ∞=∑ 收敛,则 1n n a ∞=∑ 收敛;C.若 11()nn a ∞=∑收敛,则1a ≤;D.若正项级数1n n a ∞=∑与1n n b ∞=∑都收敛,则1n n n a b ∞=⋅∑收敛。

6.微分方程20y y y '''+-= 的通解y = ( )A. 212x xc e c e -⋅+⋅ ; B. 212x xc e c e -⋅+⋅ ; C. 212x xc e c e --⋅+⋅ ; D. 212x xc e c e ⋅+⋅ 。

二、填空题(本题共6小题,每小题3分,满分18分)1. 设函数 ()y f x = 在 [],a b 上连续,则 ()f x 在 [],a b 上的平均值是 ;2. 设 2(,)sinyf x y y nx x x y+=⋅+⋅- ,则 (2,2)x f '-= ; 3. 设 :D )0(,222>≤+R R y x ,且 22()8Dx y dxdy π+=⎰⎰ ,则R = ;4. 幂级数 121(1)(2)3n nn nn x -∞=-+⋅∑ 的收敛半径 R = ; 5. 二阶常系数线性微分方程065=+'-''y y y 的通解是________________;6. 微分方程 2cos ydx xdy = 满足初始条件 4x y e π== 的特解是 y = 。

深圳大学期末考试试卷选择题

深圳大学期末考试试卷选择题

一、单项选择题[2.0分/题]??( 得分率: 65.6%??平均得分: 27.55 )1、以下有关类的说法,不正确的是选项A:类是一种用户自定义的数据类型选项B:只有类中的成员函数或类的友元函数才能存取类的私有数据选项C:在类中,如果不做特殊说明,所有数据均为私有数据选项D:在类中,如果不做特殊说明,所有成员函数均为公有成员函数试题答案:D2、以下不是构造函数特征的是选项A:构造函数的函数名与类名相同选项B:构造函数可以重载选项C:构造函数可以设置默认参数选项D:构造函数必须指定类型说明试题答案:D?3、以下有关类和对象的叙述,不正确的是选项A:任何一个对象都属于一个具体的类选项B:类与对象的关系和数据类型与变量的关系相同选项C:类的数据成员不允许是另一个类的对象选项D:一个类可以被实例化多个对象试题答案:B4、设有以下类的定义:class Ex{ int x;public :void setx(int t=0);};若在类外定义成员函数setx(),以下定义形式正确的是选项A:void setx(int t){…}选项B:void Ex:: setx(int t){…}选项C:Ex::void setx(int t){…}选项D:void setx(){…}试题答案:B5、以下对派生类的描述中不正确的是选项A:一个派生类可以作为另一个派生类的基类选项B:一个派生类可以有多个基类选项C:具有继承关系时,基类成员在派生类中的访问权限不变选项D:派生类的构造函数与基类的构造函数有成员初始化参数传递关系试题答案:C6、设有基类定义:class cbase{ private: int a;protected: int b;public: int c;};派生类采用何种继承方式可以使成员变量b成为自己的私有成员选项A:私有继承选项B:保护继承选项C:公有继承选项D:私有,保护,公有均行试题答案:A7、设有cbase为基类,cderived是cbase的派生类,且有以下定义:cbase a1,*b1;cderived aa1,*bb1;则以下语句不合语法的是选项A:b1=bb1选项B:a1=aa1选项C:b1=&aa1选项D:bb1=(cbase*)b1试题答案:D8、下面的哪个保留字不能作为函数的返回类型?选项A:void选项B:int选项C:new选项D:long试题答案:C9、假定AB为一个类,则执行“AB a(4) , b[3] , * p[2] ;”语句时,自动调用该类构造函数的次数为选项A:3选项B:4选项C:6选项D:9试题答案:B10、假定要对类AB定义加号操作符重载成员函数,实现两个AB类对象的加法,并返回相加结果,则该成员函数的声明语句为选项A:AB operator+(AB& a , AB& b)选项B:AB operator+(AB& a)选项C:operator+(AB a)选项D:AB& operator+( )试题答案:B11、假定AB为一个类,则该类的拷贝构造函数的声明语句为选项A:AB&(AB x)选项B:AB(AB x)选项C:AB(AB&)选项D:AB(AB* x)试题答案:C12、对于结构中定义的成员,其隐含访问权限为选项A:public选项B:protected选项C:private选项D:static试题答案:A13、关于类和对象不正确的说法是选项A:类是一种类型,它封装了数据和操作选项B:对象是类的实例选项C:一个类的对象只有一个选项D:一个对象必属于某个类试题答案:C14、在类定义的外部,可以被访问的成员有选项A:所有类成员选项B:private或protected的类成员选项C:public的类成员选项D:public或private的类成员试题答案:C*15、关于this指针的说法错误的是选项A:this指针必须显示说明选项B:当创建一个对象后,this指针就指向该对象选项C:成员函数拥有this指针选项D:静态成员函数不拥有this指针试题答案:A16、声明一个类的对象时,系统自动调用构造函数,撤消对象时,系统自动调用(?)函数选项C:析构函数17、下面对构造函数的不正确描述是选项A:系统可以提供默认的构造函数选项B:构造函数可以有参数,所以可以有返回值选项C:构造函数可以重载选项D:构造函数可以设置默认参数试题答案:B18、下面对析构函数的正确描述是选项A:系统不能提供默认的析构函数选项B:析构函数必须由用户定义选项C:析构函数没有参数选项D:析构函数可以设置默认参数试题答案:C*19、对静态成员的不正确描述是选项A:静态成员不属于对象,是类的共享成员选项B:静态数据成员要在类外定义和初始化选项C:调用静态成员函数时要通过类或对象激活,所以静态成员函数拥有this指针选项D:非静态成员函数也可以操作静态数据成员试题答案:C20、下面选项中,不是类的成员函数为选项C:友元函数二、完型填空[10.0分/题]??( 得分率: 34.04%??平均得分: 6.81 )1、 #include <iostream.h>class BASE1 {public:BASE1(int x){ cout<<x<<"->Constructing base1 object.\n"; }~BASE1() {cout<<"Destructing base1 object.\n"; }};class BASE2 {public:BASE2(int x) {cout<<x<<"->Constructing base2 object.\n"; }~BASE2() {cout<<"Destructing base2 object.\n"; }};class DERIVED:public BASE2,public BASE1 {public:DERIVED(int x,int y):BASE1(x),BASE2(y){ cout<<"Constructing derived object. \n"; }~DERIVED() {cout<<"Destructing derived object.\n"; }};int main(){ DERIVED obj(10,20);return 0; }程序输出:—————1———————10->Constructing base1 object.——————2———————————3—————————————4——————Destructing base2 object.共四个选项,1,2,3,4,各备选项均相同A:Destructing base1 object.B:20->Constructing base2 object.C:Destructing derived object.D:Constructing derived object.试题答案:1B,2D,3C,4A??一、单项选择题[2.0分/题]??( 得分率: 58.5%??平均得分: 24.57 )(2010期中考B卷)1、下面选项中,不是类的成员函数为选项A:构造函数选项B:析构函数选项C:友元函数选项D:缺省参数的构造函数试题答案:C2、下面对友元的错误描述是选项A:关键字friend用于声明友元选项B:一个类的成员函数可以是另一个类的友元选项C:友元函数访问对象的成员不受访问特性影响选项D:友元函数通过this指针访问对象成员试题答案:D3、在C++中,类与类之间的继承关系具有选项A:自反性选项B:对称性选项C:传递性选项D:反对称性试题答案:C4、下列关于类的继承描述中,错误的是选项A:派生类可以访问基类的所有数据成员,也能调用基类的所有成员函数选项B:派生类也是基类,但基类不一定具有派生类的全部属性和方法选项C:继承描述类的层次关系,派生类可以具有与基类相同的属性和方法选项D:一个基类可以有多个派生类,一个派生类可以有多个基类试题答案:A5、下面描述中,正确的是选项A:在基类定义的public成员在公有继承的派生类中可见,但不能在类外被访问选项B:在基类定义的public和protected成员在私有继承的派生类中可见,在类外可以被访问选项C:在基类定义的public和protected成员在保护继承的派生类中不可见选项D:在派生类中不可见的成员要变成可访问的,需要进行访问声明试题答案:D6、当不同的类具有相同的间接基类时,有如下特点选项A:各派生类对象将按继承路线产生自己的基类版本选项B:派生类对象无法产生自己的基类版本选项C:为了建立惟一的间接基类版本,在基类定义前加virtual即可选项D:为了建立惟一的间接基类版本,不必声明虚继承试题答案:A7、在派生类中,重载一个虚函数时,要求函数名、参数的个数、参数的类型、参数的顺序和函数的返回值选项A:不同选项B:相同选项C:相容选项D:部分相同试题答案:B8、若一个类中含有纯虚函数,则该类称为选项D:抽象类试题答案:D9、下面有关new和delete操作符的说法。

深圳大学C语言题库

深圳大学C语言题库

习题一程序设计语言概述一、单项选择题1.下面属于C语言保留关键字的是()A)Int B)typedef C)ENUM D)unien2.. 下列四组C语言用户标识符中,正确的一组是()A)name Int _abc D56B)ab?c 4bbs -hello _1234C)print const type defineD)include interger Double short选择理由:________________________________________________________3.一个C语言程序的执行是从()A)函数main开始,直到函数main结束B)第一个函数开始,直到最后一个函数结束C)第一个语句开始,直到最后一个语句结束D)函数main 开始,直到最后一个函数结束4.C语言源程序的基本单位是()A)过程B)函数C)子程序D)标识符5.一个C语言程序是由()A)一个主程序和若干个子程序组成B)一个或若多个函数组成C)若干过程组成D)若干个子程序组成6.下列叙述中,正确的是()A)C程序中的所有字母都必须小写B)C程序中的关键字必须小写,其他标识符不区分大小写C)C程序中的所有字母都不区分大小写D)C语言中所有的关键字必须小写答案:1、B2、A3、A4、B5、B6、D 注:该题选项B后半部分不是很严谨,其他标识符用大小写均可,但是大小写形式被认为是两个不同的标识符(大小写敏感)。

习题二C语言的基本数据类型与表达式一.单项选择题1. C语言中规定,不同类型的数据占用存储空间的长度是不同的。

下列各组数据中满足占用存储空间从小到大顺序排列的是()A)short int , char , float , doubleB)char , float , int , doubleC)int , unsigned char , long int , floatD)char , int , float , double选择理由:________________________________________________________ 2.C语言中能用八进制表示的数据类型是()A)字符型、整型B)整型、实型C)字符型、实型、双精度型D)字符型、整型、实型、双精度型3.下列属于合法的C语言中字符常数是()A)’\97’B)”A”C)’\t’D)”\0”4.C语言中字符型(char)数据在内存中是以( )形式存储的。

C期末考试试卷及参考答案

C期末考试试卷及参考答案

.性,在下面表格中对—学应的题号下填入是非选择,—若正确,则打钩(√);否则,打叉(×)。

—线题号 1 2 3 4 5 6 7 8 9 10—是/否——1. 说明函数原型时不需要指明每个函数参数的名字,只需要说明每个参数的类型和—返回值类型就可以了。

— 2. 函数定义中的形参的作用域是该函数的函数体。

_—__—4. 释放。

elete 来new 动态申请的存空间,必须用d3. 用__—_构造函数和析构函数都可以声明为虚函数。

_—_ 5. 在公有继承中,基类中的公有成员和私有成员在派生类中都是可见的。

_—__类的静态数据成员需要在定义每个类的对象时进行初始化。

6. —名—7. 使用关键字class 定义的类中缺省的访问权限是私有(private)的。

姓—能具有8. 在基类中被说明为虚函数的类的成员函数必须在每个派生类中说明为虚函数,才—多态的特征。

—订程序将流对象看作是文件的化身。

9. C++程序中,—的值不10.如果程序中有多处要抛掷异常,应该用不同的操作数类型来相互区别,操作数—能用来区别不同的异常。

—_—__—_分) 1. 5 分,共15 二、填空题(每小题_—__—以须变量的标识,由组成,而且必量1 .变名是__—_开头。

_—级开始。

2.有了函数原型,函数的作用域就不是从开始,而是从—班。

3.获取一个变量的地址所采用的操作符是装—4.使用const 语句定义一个标识符常量时,则必须对它同时进行。

—,在类外不通过对象名访问该成b AB 中有一个公用属性的静态数据成员b5.假定类—的写法为b 。

员b —_—句的作用为6.typedef 语。

__—_ MFC 7.平时所提到的使用M编程,这里的FC 是的缩写。

_—_8.若要在程序文件中进行标准输入输出操作,则必须在开始的命令中# include _—__—使用头文件。

_—.9C++中,若将操作符插入到输出流中,则以十六进制格式输出。

院—学10.。

(最新整理)C期末考试复习题(附答案)

(最新整理)C期末考试复习题(附答案)

Case
D。 2a
DO
sizeof
答案:B
C 期末考试复习题(附答案)
5。引用类型主要有 4 种:类类型、数组类型、接口类型和(
)。
A.对象类型 B。字符串类型 C.委托类型 D。整数类型
答 案:C
6。加载窗体时触发的事件是( )。
A. Click B.Load C。GotFoucs D。DoubleClick
C 期末考试复习题(附答案)
答案:C 18。 假定一个 10 行 20 列的二维整型数组,下列哪个定义语句是 正确的( )。
A. int[]arr = new int[10,20] B. int[]arr = int new[10,20] C。 int[,]arr = new int[10,20] D。 int[,]arr = new int[20;10] 答案:C 19。 以下正确的描述是( )。 A。 函数的定义可以嵌套,函数的调用不可以嵌套 B. 函数的定义不可以嵌套,函数的调用可以嵌套 C。 函数的定义和函数的调用均可以嵌套 D. 函数的定义和函数的调用均不可以嵌套 答案:B 20.小数类型和浮点类型都可以表示小数,正确说法:( ) A. 两者没有任何区别 B. 小数类型比浮点类型取值范围大 C。小数类型比浮点类型精度高 D。 小数类型比浮点类型精度低 答案:C 21。在 C#中,可以标识不同的对象的属性是( )。 A。Text C.Title D。Index
A。 abstract B。 camel C。 Salary D. Employ
答案:A
25.C#语言中,值类型包括:基本值类型、结构类型和( )。
A.小数类型 B。整数类型 C.类类型 D。枚举类型
答案:D

c期末考试题及答案

c期末考试题及答案

c期末考试题及答案一、选择题(每题2分,共20分)1. 以下哪个选项是正确的?A. 地球是平的B. 太阳是银河系的中心C. 水的化学式是H2OD. 光速在真空中是无限的2. 根据牛顿第三定律,作用力和反作用力的大小关系是:A. 相等B. 不相等C. 有时相等,有时不相等D. 无法确定3. 以下哪个不是计算机病毒的特点?A. 破坏性B. 复制性C. 隐蔽性D. 有益性4. 英语中,“apple”的意思是:A. 苹果B. 香蕉C. 橙子D. 梨5. 以下哪个不是中国四大名著?A. 《红楼梦》B. 《西游记》C. 《水浒传》D. 《哈利波特》6. 根据相对论,时间是:A. 绝对的B. 相对的C. 静止的D. 无限的7. 以下哪个不是数学中的基本运算?A. 加B. 减C. 乘D. 排序8. 以下哪个是蛋白质的主要功能?A. 储存能量B. 构成细胞C. 调节体温D. 储存维生素9. 以下哪个不是酸雨的成因?A. 工业排放B. 汽车尾气C. 火山爆发D. 森林火灾10. 以下哪个不是计算机编程语言?A. JavaB. PythonC. HTMLD. C++二、填空题(每空1分,共10分)11. 地球的自转周期是________小时。

12. 光合作用的产物是________和氧气。

13. 牛顿第二定律的公式是________。

14. 计算机的硬件包括输入设备、输出设备、________和存储设备。

15. 英语中,“Hello”的中文意思是________。

三、简答题(每题5分,共15分)16. 请简述牛顿第一定律的内容。

17. 请解释什么是光的折射现象。

18. 请列举三种常见的网络攻击类型。

四、计算题(每题5分,共10分)19. 若一个物体的质量为2千克,受到的重力为19.6牛顿,请计算该物体受到的加速度。

20. 假设一个物体以5米/秒的速度匀速直线运动,求该物体在10秒内行驶的距离。

五、论述题(每题15分,共30分)21. 论述相对论对现代物理学的影响。

大一c期末考试题及答案

大一c期末考试题及答案

大一c期末考试题及答案大一C期末考试题及答案一、选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于定义一个类?A. classB. structC. unionD. enum答案:B2. 在C语言中,以下哪个函数用于将字符串复制到另一个字符串中?A. strcpy()B. strcat()C. strlen()D. strcmp()答案:A3. 下列哪个选项不是C语言的基本数据类型?A. intB. floatC. charD. string答案:D4. 在C语言中,以下哪个运算符用于计算两个数的乘方?A.B. *C. /D. %答案:A5. 以下哪个语句可以用于C语言中的条件判断?A. ifB. whileC. forD. switch答案:A6. 在C语言中,以下哪个不是数组的初始化方式?A. int arr[5] = {1, 2, 3, 4, 5};B. int arr[5] = 5;C. int arr[] = {1, 2, 3};D. int arr[5] = {0,};答案:B7. 下列哪个选项是C语言中正确的函数定义?A. int function(int a, int b) { ... }B. void myFunc(int a, int b) { ... }C. int myFunc(int a, int b) { ... }D. all of the above答案:D8. 在C语言中,哪个关键字用于定义指针?A. intB. floatC. charD. *答案:D9. 下列哪个选项是C语言中正确的循环结构?A. do-whileB. forC. whileD. all of the above答案:D10. 在C语言中,以下哪个不是标准库函数?A. printf()B. scanf()C. malloc()D. myFunc()答案:D二、填空题(每空3分,共15分)1. 在C语言中,使用________关键字可以定义一个函数。

c大一期末考试题及答案

c大一期末考试题及答案

c大一期末考试题及答案# 一、选择题(每题2分,共20分)1. 根据题目所给的四个选项,选择最符合题意的一个。

A. 选项一B. 选项二C. 选项三D. 选项四答案:B2. 下列哪个选项不是大一课程中的内容?A. 微积分B. 线性代数C. 量子物理D. 大学物理答案:C3. 根据题目所给的数学公式,计算下列哪个选项是正确的结果。

\( x = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a} \)A. \( x = 1 \)B. \( x = -1 \)C. \( x = 2 \)D. \( x = 3 \)答案:A...(此处省略剩余选择题)# 二、填空题(每空1分,共10分)1. 根据题目所给的函数表达式,求出 \( f(x) \) 在 \( x = 2 \)时的值。

\( f(x) = x^2 - 5x + 6 \)答案:-22. 请写出大一上学期所学的一门基础课程名称。

答案:高等数学...(此处省略剩余填空题)# 三、简答题(每题10分,共20分)1. 简述大一上学期所学的主要课程内容,并列举至少两门课程。

答案:大一上学期主要学习了高等数学、线性代数、大学物理等基础课程。

高等数学主要涉及极限、微分、积分等概念;线性代数则包括矩阵运算、线性空间等基础内容。

2. 描述大一上学期你在学习过程中遇到的一个挑战,并说明你是如何克服它的。

答案:在大一上学期,我在学习高等数学时遇到了理解微积分概念的挑战。

为了克服这个问题,我首先复习了高中数学的相关知识,然后通过参加学习小组和向老师请教,逐渐理解了微积分的基本原理。

# 四、计算题(每题15分,共30分)1. 根据题目所给的物理定律,计算下列物体在特定条件下的运动状态。

答案:(此处应详细描述计算过程和结果)2. 利用线性代数的知识,求解下列矩阵方程。

\( \begin{bmatrix} 2 & 1 \\ 1 & 3 \end{bmatrix} \times\mathbf{x} = \begin{bmatrix} 5 \\ 7 \end{bmatrix} \)答案:(此处应详细描述计算过程和结果)# 五、论述题(每题20分,共20分)1. 论述大一上学期你在学习过程中的收获和感悟。

某年C++期末试卷

某年C++期末试卷

《面向对象程序设计》试卷 A 卷 第 1 页 共 2 页深圳大学期末考试试卷开/闭卷 闭卷A/B 卷 卷 课程编号课程名称面向对象程序设计学分 2.5命题人(签字) 审题人(签字) 年 月 日 在C 的基础上成为面向对象程序设计语言的主要原因是_______A.增加了一些新的运算符B.允许函数同名C.使用cin 和cout 进行键盘输入和屏幕输出D.引进了类和对象的概念 将一组数据和对这组数据进行操作的函数组装成对象的过程叫________A. 数据封装与信息隐藏B. 函数重载C. 软件重用D. 接口重用 用同一个函数实现对不同类型的数据进行相同处理,要用到C++的______类 B. 继承 C. 重载 D. 模板 若函数int fun(int &p)的形参int &p 前加const,在主函数中该函数被调用x=fun(y);则_______ 的值在主函数内不能被改变 B. y 的值在fun()函数内不能被改变C. x 的值在主函数内不能被改变性D. x 的值与y 的值相同 一个功能不太复杂,但被频繁调用的函数应尽量定义为_______A. 内联函数B. 带缺省参数值的函数C. 重载函数D. 虚函数 函数重载不是根据________参数个数 B. 参数的类型 C. 参数的顺序 D. 函数的类型 用来说明类中受公共成员的关键字是________A. publicB. privateC. protectedD. friend 如果一个类CA 的成员函数show()定义如下: void CA::show() const { cout << this->a; } 则上述代码中的const 关键字表示________函数返回一个常量 B. show()函数的参数类型为常量; C. 不能修改目标对象数据成员a 的值 D. 可以修改目标对象数据成员a 的值 在第9小题的show()函数体内的程序代码中,this 是一个_______A. show()函数的形参,是指向CA 类对象的指针B. 指向CA 类对象的全局指针变量 函数的形参,是CA 类对象的引用 D. CA 类对象的全局引用 若CA 是一个类,则定义语句CA a(1), b[2], *p[3];执行时将自动调用构造函数的次数为_______C. 3D. 611. 从程序片断:CSieve a(1000); a.findPrime();可判断findPrime()是一个________A. 私有成员数据B. 私有成员函数C. 公有成员数据D. 公有成员函数12. 若一个类的数据成员前用static关键字修饰,则该数据成员________A. 是该类所有对象所共享的B. 要在构造函数内初始化C. 在每个对象的实例中都保留一个备份D. 只能由静态成员函数来访问13. 友元函数________A. 用于增强封装性B. 用于提高程序运行效率C. 有this指针D. 可以是虚函数14. 派生类对象d可以访问其基类的数据成员b,即d.b,其中b是________A. 私有继承的公有成员B. 公有继承的公有成员C. 公有继承的受保护成员D. 公有继承的私有成员15. 假设class CA : public CB,即类CA是类CB的派生类,则一个CA类对象定义和撤消时,调用构造函数和析构函数的次序分别为________A. CA,CB;~CA,~CBB. CB,CA;~CB,~CAC. CA,CB;~CB,~CAD. CB,CA;~CA,~CB16. 要实现接口重用的基本条件是________A. 用基类对象名来调用虚函数B. 用派生类对象名来调用虚函数C. 用基类对象指针来调用虚函数D. 用派生类对象指针来调用虚函数17. 以下叙述中,不正确的是________A. 纯虚函数是一个没有具体实现的虚函数B. 设置虚基类的目的是使程序按动态联编方式运行C. 抽象类是包括纯虚函数的类D. 抽象类只能作为基类,其纯虚函数的实现在派生类中给出18. 赋值运算符重载函数必须定义成________的形式A. 友元函数B. 静态成员函数C. 非静态成员函数D. 虚函数19. C++的异常是用_______语句块处理的A. if…else…B. try…catch…C. template…classD. try…throw…20. 实现两个相同类型数加法的函数模板应声明为_______A. add(T x,T y)B. T add(T x,T y)C. T add(x,y)D. T add(T x,y)《面向对象程序设计》试卷A 卷第2 页共2 页。

深圳大学期末考试试卷圳大学期末考试试卷参考解答及评分标准

深圳大学期末考试试卷圳大学期末考试试卷参考解答及评分标准

深圳大学期末考试试卷参考解答及评分标准基本题6小题,每小题5分,满分30分。

在每小题给出的四个选项中,只有一(每道选择题选对满分,选0分)事件表达式A B 的意思是 ( ) 事件A 与事件B 同时发生 (B) 事件A 发生但事件B 不发生 事件B 发生但事件A 不发生 (D) 事件A 与事件B 至少有一件发生 D ,根据A B 的定义可知。

假设事件A 与事件B 互为对立,则事件A B ( ) 是不可能事件 (B) 是可能事件 发生的概率为1 (D) 是必然事件 A ,这是因为对立事件的积事件是不可能事件。

已知随机变量X ,Y 相互独立,且都服从标准正态分布,则X 2+Y 2服从 ( ) 自由度为1的χ2分布 (B) 自由度为2的χ2分布 自由度为1的F 分布 (D) 自由度为2的F 分布选B ,因为n 个相互独立的服从标准正态分布的随机变量的平方和服从自由度为n 的2分布。

已知随机变量X ,Y 相互独立,X ~N (2,4),Y ~N (-2,1), 则( ) X +Y ~P (4) (B) X +Y ~U (2,4) (C) X +Y ~N (0,5) (D) X +Y ~N (0,3) 选C ,因为相互独立的正态变量相加仍然服从正态分布,而E (X +Y )=E (X )+E (Y )=2-2=0, (X +Y )=D (X )+D (Y )=4+1=5, 所以有X +Y ~N (0,5)。

样本(X 1,X 2,X 3)取自总体X ,E (X )=μ, D (X )=σ2, 则有( ) X 1+X 2+X 3是μ的无偏估计(B)1233X X X ++是μ的无偏估计22X 是σ2的无偏估计(D)21233X X X ++⎛⎫ ⎪⎝⎭是σ2的无偏估计B ,因为样本均值是总体期望的无偏估计,其它三项都不成立。

随机变量X 服从在区间(2,5)上的均匀分布,则X 的数学期望E (X )的值为( ) (B) 3 (C) 3.5 (D) 4 C ,因为在(a ,b )区间上的均匀分布的数学期望为(a +b )/2。

c期末试卷及答案.doc

c期末试卷及答案.doc

C + +期末试卷及答案一、选择题(每小题1分,共40分)1、下列有关内联函数的叙述中,止确的是()。

A.内联函数在调用时发生控制转移B.内联函数必须通过关键字inline来定义C.内联函数是通过编译器来实现的D.内联函数函数体的最后一条语句必须是return语句2、语句int*P = k;定义了指针P,与这个语句等效的语旬序列是()。

A.int* p;P=k;B.int * P;P=k;C.int * p;* P = k;D.int * p;* P=k;3、有如下程序:# includeusing namespace std;class A{public:A(){cout,,A,,;J-A(){cout"-A";}class B : public AA*P;public :B(){cout,,B,,;P=ncw A();}-B(){cout,^〜B”; p;}I;int main(){B obj;return 0;}执行这个程序的输出结果是()oA.BAA〜A〜B〜AB.ABA〜B〜A〜AC.BAA~B~A 〜AD.AB A〜A〜B〜A4、有如下类定义:class AA{im a: public :int getRef()const {returna; }//© int getVal ue()con st { return a;}//②void set(int n)const{ a=n; }//(§)friend void show(AA aA.const{cout };其中四个函数的定义中正确的是( )。

A.①B.②C.③D.④5、若要对Data类中重载的加法运算符成员函数进行声明,下列选项中正确的是()。

A・Data+(DatA・;B.Data operator+(DatA・;C・ Data+operator(Dat A.;D.operator+(Data, DatA.;6、有如下数组声明:int num[10];,下标值引用错误的是()。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

深圳大学期末考试试卷开/闭卷 闭卷 A/B 卷 A 卷 课程编号课程名称面向对象程序设计学分2.5命题人(签字) 张冰 审题人(签字)一、单项选择题(每题2分,共40分)1. ______不是属于面向对象程序设计的特性A. 抽象性B. 数据相关性C. 多态性D. 继承性2. 将对某一类数据的处理算法应用到另一类数据的处理中,要用到C++的______A. 类B. 虚函数C. 运算符重载D. 模板3. C++与C 语言最根本的不同之处在于_______A. 使用了类B. 能够实现变量自动初始化C. 支持软件重用D. 支持接口重用4.动态内存分配的主要目的是_______A. 使程序按动态联编方式运行B. 正确合理的使用内存C. 提高程序的运行速度D. 提高程序的可维护性5. 在C++函数的形参前加const 关键字,是为了提高函数的_______A. 数据封装性B. 可理解性C. 可维护性D. 可重用性6. 函数重载的目的是________A. 实现共享B. 使用方便,提高可读性C. 提高速度D. 减少空间7. 从程序片断:char name[] = "C++"; course(name);可判断函数course 的调用采用的是_______ A. 传值调用 B. 带缺省参数值的函数调用 C. 引用调用 D. 传址调用8. 用来说明类中公有成员的关键字是________A. publicB. privateC. protectedD. friend9. 如果一个类的成员函数print()不修改类的数据成员值,则应将其声明为A. void print() const;B. const void print();C. void const print();D. void print(const);10. 下列关于构造函数的论述中,不正确的是_______A. 构造函数的函数名与类名相同B. 构造函数可以设置默认参数C. 构造函数的返回类型缺省为int 型D. 构造函数可以重载11. 在程序代码:A::A(int a, int *b) { this->x = a; this->y = b; }中,this的类型是______A. intB. int *C. AD. A *12. 内存泄漏是指_______A. 内存中的数据出现丢失B.试图释放一个已经释放了的动态分配的堆内存C. 函数中局部变量所占的栈内存没有及时回收D. 动态分配的堆内存在程序退出后始终被占用13. 从程序片断:student zhangsan("张三","M",22); zhangsan.id("2005131000");可判断id是一个________A. 私有成员数据B. 私有成员函数C. 公有成员数据D. 公有成员函数14. 友元函数_______A. 可以被声明为constB. 没有this指针C. 可以用类名或对象名来调用D. 只能用对象名来调用15. 若一个类的成员函数前用static关键字修饰,则该成员函数________A. 可以被声明为constB. 没有this指针C. 可以访问该类的所有成员D. 只能用对象名来调用16. C++是用_______实现接口重用的A. 内联函数B. 虚函数C. 重载函数D. 模板函数17. 公有继承的派生类对象可以访问其基类的________A. 公有成员B. 公有成员及受保护成员C. 受保护成员D. 私有成员18. 设置虚基类的目的是________A. 简化程序B. 使程序按动态联编方式运行C. 提高程序运行效率D. 消除二义性19. 下列关于纯虚函数和抽象类的描述中,不正确的是________A. 纯虚函数是一个没有具体实现的虚函数B. 抽象类是包括纯虚函数的类C. 抽象类只能作为基类,其纯虚函数的实现在派生类中给出D. 可以定义一个抽象类的对象20. 关于运算符重载的不正确的描述是________A. 运算符重载函数是友元函数B. 体现了程序设计的多态性C. 增加新的运算符D. 使运算符能对对象操作二、下面的程序是关于CBook类的一个定义,试改正程序中的错误。

(共10分)#include <iostream.h>#include <math.h> #inlcude <string>class CBook{private:char *p_book;public: p_book=new char[strlen(p_val)+1]CBook(const char *p_val) { p_book = new char[strlen(p_val)]; strcpy(p_book, p_val); }void print() const { cout << p_book << endl; }~CBook() { delete [] p_book; }};void main(){char book_title[60];CBook *p_book_obj;cout << “Enter book title: ”;cin >> p;CBook abook(p);p_book_obj = &abook;p_book_obj->print();}三、根据如下所示程序,回答下列问题(共10分)#include <iostream.h>class CJournal{public:CJournal() { cout << “Journal default constructor” << endl; }virtual void subscribe() = 0;void read() { cout << “Read paper” << endl; }~CJournal() { cout << “Journal default destruct or” << endl; }};class CComputerDesign : public CJournal{public:CComputerDesign () {cout << “《Computer Design》default constructor” << endl; } virtual void subscribe() { cout << “Subscribing 《Computer Design》” << endl; } void read() {cout << “Reading 《Computer Design》” << endl; }~CComputerDesign() { cout << “《Computer Design》default destructor” << endl; } };void main(){CComputerDesign journal1;CJournal *p_journal;journal1.subscribe();journal1.read();// ①p_journal = &journal1;p_journal->subscribe();p_journal->read();}1.当程序运行到①处时,写出程序运行的输出结果 (3分)2. 当程序结束时,程序会在第1问的基础上增加哪些输出。

(4分)3. 若在主函数中定义一个对象CJournal journal;程序编译时会否出错?为什么?(3分)四、编程题(共40分)1. 定义一个商品类CGoods,其中包含商品号(long no)、商品名(char *p_name)、商品价格(double price)三个数据成员,以及相应的构造函数、拷贝构造函数、析构函数、打印数据成员的成员函数。

(10分)#include <iostream>#include <string.h>using namespace std;class CCourse{private:long no;char *p_name;float credit;public:CCourse(long no_val,char p_val,float credit_val);CCourse(const CCourse &r_course);~CCourse(){delete p_name;}void print() const;};CCourse:CCourse(long no_val,char p_val,float credit_val){no=no_val;p_name=new char[strlen(p_val)+1];strcpy(p_name,p_val);credit=credit_val;}CCourse:CCourse(const CCourse &r_course){no=r_course.no;p_name=new char[strlen(r_course.p_name)+1];strcpy(p_name,r_course.p_name);credit=r_course.credit;}void CCourse:print() const{cout<<"Course number"<<no<<endl;cout<<"Course name"<<p_name<<endl;cout<<"Course credit"<<credit<<endl;}2. 为CGoods类增加一个商品总数(int count)数据成员,并增加一个成员函数getCount()获取count的值,编写一个友元函数getName()获取商品名称p_name。

做如上修改后,重新实现CGoods类(与第1问相同的不用再重复)。

(10分)3. 为CGoods类定义小于运算符(‘<’)和不小于运算符(‘>=’)两个运算符重载函数。

CGoods类对象大小的比较是根据其商品价格(price)的值的大小来实现的。

(与第2问相同的不用再重复)(10分)4. 以CGoods类为基类,派生出服装类CClothes和食品类CFood两个派生类,并在这两个类中分别增加一个表示品牌的指针数据成员(char *p_brand)和表示用途的成员函数(void usedFor()——可分别输出一条表示服装和食品用途的信息)。

相关文档
最新文档