没有合适的资源?快使用搜索试试~ 我知道了~
首页西北农林科技大学C++编程题详解与答案
西北农林科技大学C++编程题详解与答案
需积分: 34 18 下载量 143 浏览量
更新于2024-07-21
1
收藏 506KB DOC 举报
西北农林科技大学信息学院的C++考试题库包含了丰富的知识点,涵盖了编程基础到高级概念。首先,试题从程序设计的基本流程开始,强调了编写C++程序的一般步骤,包括编辑源代码、编译成机器语言、链接为可执行文件,最后执行程序,正确答案是B,表示这一顺序为编辑、编译、连接、运行。 在函数的概念上,题目的第二部分考察了函数的返回值类型,明确指出返回值类型是在定义函数时确定的,对应选项D。接着,题目深入到了面向对象编程的继承机制,例如派生类通常采用公有继承(A)来保证代码的清晰性,同时提及了派生类对基类成员访问的规则,确保了无二义性,并解释了不同继承方式下公有成员在派生类中的可见性差异,指出基类的公有成员在私有继承下会变为私有(D)。 数据封装这一关键概念被以选择题形式提出,正确答案是A,表明数据封装是通过类来实现的,类将数据和操作打包在一起构成一个实体。接下来的问题涉及了访问权限,公有派生类的成员函数不能直接访问基类中的私有成员(A),这反映了封装原则中保护数据的私密性。 整个试题集旨在检验学生的C++基础知识掌握程度,包括编程流程、函数特性、继承机制和面向对象编程的核心概念,有助于学生巩固理论知识并提升实际编程能力。通过解答这些问题,考生不仅可以检验自己的学习成果,还能加深对C++语言的理解。
资源详情
资源推荐
![](https://csdnimg.cn/release/download_crawler_static/9307107/bg9.jpg)
1. 已定义一个?抽象类,在此基础上派生出矩形K+和圆形类,二者都有
G@/()函数计算对象的周长,并编写测试/()函数。
?
!
?!&
L?!&
1 M G@/"$
&
答案: K+ ?
!
K+M M NO!&
LK+!&
M G@/! %NO$&
1
M NO$
&$
?
!
M K!&
M G@/! *)'%%K$&
1
M K$
&$
1- /
!? % $
"5 $
..#0G@/ ..-$
"5 K+2'$
..#0G@/..-$
&66
程序设计模拟试卷二
一、单项选择题本大题共小题,每小题分,共分在每小题列出的四个备选项中
只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无
分。
1. 静态成员函数没有()
A. 返回值
B. 指针
C. 指针参数
D. 返回类型
答案:
解析:静态成员函数是普通的函数前加入它具有函数的所有的特征:返回类型、
形参,所以使用@E静态成员函数,指针可以作为形参,也具有返回值。静态成员是类具有的
属性,不是对象的特征,而表示的是隐藏的对象的指针,因此静态成员函数没有 指针
。静态成员函数当在类外定义时,要注意不能使用关键字作为前缀。由于静态成员函数在
类中只有一个拷贝(副本),因此它访问对象的成员时要受到一些限制:静态成员函数可以直接
访问类中说明的静态成员,但不能直接访问类中说明的非静态成员;若要访问非静态成员时,必
须通过参数传递的方式得到相应的对象,再通过对象来访问。
![](https://csdnimg.cn/release/download_crawler_static/9307107/bga.jpg)
2. 假定为一个类,则执行“ [*]%[']$:语句时调用该类构造函数的次数
为()
A. *
B. '
C. (
D. F
答案:
解析:调用次带参数的构造函数,[*]调用*次无参数的构造函数,指针没有给它
分配空间,没有调用构造函数。所以共调用构造函数的次数为'。
3. 有关多态性说法不正确的是()
A. 语言的多态性分为编译时的多态性和运行时的多态性
B. 编译时的多态性可通过函数重载实现
C. 运行时的多态性可通过模板和虚函数实现
D. 实现运行时多态性的机制称为动态多态性
答案:
解析:多态性分为静态的和动态的。静态通过函数的重载来实现,动态是通过基类指针或
基类引用和虚函数来实现的。所以错误的是项。
4. 假定一个类的构造函数为“ "' " !"$"$&: 则执行“ $:语
句后,)和)的值分别为()
A. 和
B. 和'
C. '和
D. '和
答案:
解析:带默认的构造函数,对应实参没有值时就采用形参值。调用构造函数时,"不采
用默认值,而只有一个参数,采用默认值即"因此""选择项。
5. 类;<的拷贝初始化构造函数是 ()
A. ;<
B. ;<;<%
C. ;<;<4
D. ;<;<
答案:
解析:复制即拷贝构造函数使用对象的引用作形参,防止临时产生一个对象,无参构造函
数,是指针作为形参,项是对象,所以选择项。
6. 在中,函数原型不能标识()
A. 函数的返回类型
B. 函数参数的个数
C. 函数参数类型
D. 函数的功能
答案:
解析:函数的声明,说明函数的参数、返回类型以及函数名,函数体即实现部分决定功能。所以
函数的原型不能决定函数的功能。
7. 友元关系不能()
A. 提高程序的运行效率
B. 是类与类的关系
C. 是一个类的成员函数与另一个类的关系
D. 继承
答案:
解析:友元可以是函数与类的关系即友元函数,也可以类与类的关系即友元类,但友元不
能继承,是单向性,且不具有传递性。友元可以访问类中所有成员,提高了访问的方便性。因此
选择项。
8. 实现两个相同类型数加法的函数模板的声明是()
A. --7 7 <
B. 7 --<
C. 7 --7 <
D. 7 --7 7 <
答案:
解析:实现两个相同类型数加法结果应该和操作数具有相同类型。进行加法运算后结果也
是和参数具有相同类型,需要返回值。无返回值时要用1-形参无类型,形参<没有类型
,所以选择项。
9. 在 "* %"4;中,%的值是()
A. 变量的地址值
B. 无意义
C. 变量的地址值
D. *
答案:
解析:%代表引用变量的值,代表的地址值。所以选择项。
10. 下列不是描述类的成员函数的是()
A. 构造函数
![](https://csdnimg.cn/release/download_crawler_static/9307107/bgb.jpg)
B. 析构函数
C. 友元函数
D. 拷贝构造函数
答案:
解析:构造函数、析构函数、拷贝构造函数都是特殊的成员函数,友元则不是成员函数。
所以选择项。
11. 如果从原有类定义新类可以实现的是()
A. 信息隐藏
B. 数据封装
C. 继承机制
D. 数据抽象
答案:
解析:继承指在原有类的基础上产生新类。数据封装即数据和操作组合在一起,形成类。
信息的隐藏,通过访问权限来实现。数据抽象,将事物的特征抽象为数据成员或服务。因此选择
项。
12. 下面有关类说法不正确的是()
A. 一个类可以有多个构造函数
B. 一个类只有一个析构函数
C. 析构函数需要指定参数
D. 在一个类中可以说明具有类类型的数据成员
答案:
解析:构造函数可以有参数、可以重载、因此可以有多个,项正确。析构函数只有一个不
能重载、不能继承,没有返回值,项正确,项错误。
13. 在函数定义中的形参属于()
A. 全局变量
B. 局部变量
C. 静态变量
D. 寄存器变量
答案:
解析:形参或函数中定义的变量都是局部变量。在函数外定义的变量是全局变量。形参只能用局
部变量,频繁使用的变量可以声明为寄存器变量,形参不能使用静态变量或寄存器变量。
14. 下列有关重载函数的说法中正确的是()
A. 重载函数必须具有不同的返回值类型
B. 重载函数参数个数必须相同
C. 重载函数必须有不同的形参列表
D. 重载函数名可以不同
答案:
解析:函数的重载必须函数名相同而形参类型或个数不同,与返回值无关。
15. 指针存在的目的是()
A. 保证基类私有成员在子类中可以被访问
B. 保证基类保护成员在子类中可以被访问
C. 保证每个对象拥有自己的数据成员,但共享处理这些数据成员的代码
D. 保证基类公有成员在子类中可以被访问
答案:
解析:要求函数在被调用之前,应当让编译器知道该函数的原型,以便编译器利用函数
原型提供的信息去检查调用的合法性,强制参数转换成为适当类型,保证参数的正确传递。对于
标准库函数,其声明在头文件中,可以用,-宏命令包含这些原型文件;对于用户自定义函
数,先定义、后调用的函数可以不用声明,但后定义、先调用的函数必须声明。一般为增加程序
的可理解性,常将主函数放在程序开头,这样需要在主函数前对其所调用的函数一一进行声明
,以消除函数所在位置的影响。所以选择项。
16. 关于5运算符的下列描述中,错误的是()
A. 它可以用来动态创建对象和对象数组
B. 使用它创建的对象或对象数组可以使用运算符-删除
C. 使用它创建对象时要调用构造函数
D. 使用它创建对象数组时必须指定初始值
答案:
解析:5创建的对象数组不能指定初始值,所以调用无参的构造函数,选择项。
17. 已知:是一个指向类数据成员/的指针,是类的一个对象。如果要给/赋值为(,正确
的是()
A. )"($
B. #0"($
C. )%"($
D. %)"($
答案:
解析:中是指针即地址,错误;选项中不是指针不能使用指向运算符#0错误
;“%:比“):级别要高,所以选项%)"(相当于%)"($错误。另外涉及到指向成员函数
时注意以下几点:
指向成员函数的指针必须于其赋值的函数类型匹配的三个方面:参数类型和个数;返回
剩余52页未读,继续阅读
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://profile-avatar.csdnimg.cn/default.jpg!1)
baidu_33169902
- 粉丝: 1
- 资源: 3
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![](https://csdnimg.cn/release/wenkucmsfe/public/img/voice.245cc511.png)
最新资源
- 计算机人脸表情动画技术发展综述
- 关系数据库的关键字搜索技术综述:模型、架构与未来趋势
- 迭代自适应逆滤波在语音情感识别中的应用
- 概念知识树在旅游领域智能分析中的应用
- 构建is-a层次与OWL本体集成:理论与算法
- 基于语义元的相似度计算方法研究:改进与有效性验证
- 网格梯度多密度聚类算法:去噪与高效聚类
- 网格服务工作流动态调度算法PGSWA研究
- 突发事件连锁反应网络模型与应急预警分析
- BA网络上的病毒营销与网站推广仿真研究
- 离散HSMM故障预测模型:有效提升系统状态预测
- 煤矿安全评价:信息融合与可拓理论的应用
- 多维度Petri网工作流模型MD_WFN:统一建模与应用研究
- 面向过程追踪的知识安全描述方法
- 基于收益的软件过程资源调度优化策略
- 多核环境下基于数据流Java的Web服务器优化实现提升性能
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035111.png)
安全验证
文档复制为VIP权益,开通VIP直接复制
![](https://csdnimg.cn/release/wenkucmsfe/public/img/green-success.6a4acb44.png)