扩届躬癌粉监抄崩私扑溉为酗
第一部分 面向对象方法与C++概述
1.1 随堂测试
1、单选题:
下面4句话中,最准确的表述是( )
A: A、程序=算法+数据结构
B: B、程序是使用编程语言实现算法
C: C、程序的开发方法决定算法设计
D: D、算法是程序设计中最关键的因素
答案: A、程序=算法+数据结构
2、单选题:
解释程序的功能是( )
A: A、将高级语言程序转换为目标程序
B: B、将汇编语言程序转换为目标程序
C: C、解释执行高级语言程序
D: D、解释执行汇编语言程序
答案: C、解释执行高级语言程序
3、单选题:
数据的逻辑结构分为( )
A: A、纯属结构和非线性结构
B: B、顺序结构和非顺序结构
C: C、树型结构和图型结构
D: D、链式结构和顺序结构
答案: A、纯属结构和非线性结构
4、单选题:
软件工程的出现主要是由于( )
A: A、程序设计方法学的影响
B: B、其他工程科学的影响
C: C、软件危机的出现
D: D、计算机的发展
答案: C、软件危机的出现
5、单选题:
数据的逻辑结构分为( )
A: A、纯属结构和非线性结构
B: B、顺序结构和非顺序结构
C: C、树型结构和图型结构
D: D、链式结构和顺序结构
答案: A、纯属结构和非线性结构
1.4 随堂测验
1、单选题:
封装是指把对象的( )结合在一起,组成一个独立的对象。
A: 属性和操作
B: 信息流
C: 消息和事件
D: 数据的集合
答案: 属性和操作
2、单选题:
类和对象都有属性,它们的差别是:类描述了属性的类型,而对象的属性必须有( )。
A: 正负号
B: 动作
C: 具体值
D: 私有成员
答案: 具体值
3、单选题:
对象有很多属性,但对于外部对象来说某些属性应该不能被直接访问,下面哪个不是类成员访问限定性( )
A: Public
B: Protected
C: Private
D: friendly
答案: friendly
1.5 随堂测验
1、单选题:
5.下列关于面向对象的分析与设计的描述,正确的是( )。
A: A.面向对象设计描述软件要做什么
B: B.面向对象分析不需要考虑技术和实现层面的细节
C: C.面向对象分析的输入是面向对象设计的结果
D: D.面向对象设计的结果是简单的分析模型
答案: B.面向对象分析不需要考虑技术和实现层面的细节
2、单选题:
一个对象和另一个对象之间,通过消息来进行通信。消息通信在面向对象的语言中即( )
A: 方法实现
B: 方法调用
C: 方法嵌套
D: 方法定义
答案: 方法调用
1.6 随堂测试
1、单选题:
以下关于C++语言的描述不正确的是()
A: 支持过程化程序设计
B: 不支持以抽象数据类型为特点的程序设计
C: 支持以继承和多态为特点程序设计
D: 可以提高大规模程序的编程质量与程序设计语言的问题描述能力
答案: 不支持以抽象数据类型为特点的程序设计
2、单选题:
编写C++程序一般需经过的几个步骤依次是()
A: 编辑、调试、编译、连接
B: 编辑、编译、连接、运行
C: 编译、调试、编辑、连接
D: 编译、编辑、连接、运行
答案: 编辑、编译、连接、运行
3、多选题:
C++语言有()特点
A: 数据封装
B: 数据隐藏
C: 继承和重用
D: 多态性
答案: 数据封装;
数据隐藏;
继承和重用;
多态性
4、填空题:
下列程序段的输出结果是___。for(i=0,j=10,k=0;i<=j;i++,j-=3,k=i+j);
cout<<k
答案: 4
第二部分 过程化编程技术-函数应用
2.1 随堂测试
1、单选题:
决定C++语言中函数的返回值类型的是()
A: return语句中的表达式类型
B: 调用该函数时系统随机产生的类型
C: 调用该函数时的主调用函数类型
D: 在定义该函数时所指定的数据类型
答案: 在定义该函数时所指定的数据类型
2、单选题:
在C++中,函数原型不能标识()
A: 函数的返回类型
B: 函数参数的个数
C: 函数参数类型
D: 函数的功能
答案: 函数的功能
3、单选题:
在函数定义中的形参属于()
A: 全局变量
B: 局部变量
C: 静态变量
D: 寄存器变量
答案: 局部变量
4、单选题:
有如下程序#include <iostream>
using namespace std;
int max(int x,int y)
{
int z;
if(x>y) z=x;
else z=y;
return z;
}
int main()
{
int a=3,b=5;
cout<<“max=”<<max(a,b)<<endl;
}
A: max=3
B: max=4
C: max=5
D: max=6
答案: max=5
5、单选题:
函数调用func((exp1,exp2),(exp3,exp4,exp5))中所含实参的个数为()
A: 1
B: 2
C: 4
D: 5
答案: 2
6、单选题:
在C++中不返回任何类型的函数应该说明为()
A: int
B: char
C: void
D: double
答案: void
2.10 随堂测验
1、单选题:
下列有关重载函数的说法中正确的是()
A: 重载函数必须具有不同的返回值类
B: 重载函数参数个数必须相同
C: 重载函数必须有不同的形参列表
D: 重载函数名可以不同
答案: 重载函数必须有不同的形参列表
2.11 随堂测试
1、单选题:
实现两个相同类型数加法的函数模板的声明是()
A: add(T x,T y)
B: T add(x,y)
C: T add(T x,y)
D: T add(T x,T y)
答案: T add(T x,T y)
2.16 随堂测验
1、单选题:
如下程序的最后运行结果为( )#include <iostream>
using namespace std;
int f(int a)
{
auto int b=0;
static int c=3;
b=b+1;c=c+1;
return (a+b+c);
}
int main()
{
int a=2,i;
for(i=0;i<3;i++)
cout<<f(a)<<endl;
}
A: 678
B: 789
C: 567
D: 无输出结果
答案: 789
2、单选题:
以下只有在使用时才为该类型变量分配内存的存储单元说明是( )
A: auto和static
B: auto和register
C: register和static
D: extern和register
答案: auto和register
2.3 随堂测验
1、单选题:
以下程序的运行结果是( )#include <iostream>
int func(int n)
{
if(n==1) return 1;
else return (n*func(n-1));
}
int main()
{
int x;
x=fun(3);
cout<<x<<endl;
}
A: 5
B: 6
C: 7
D: 8
答案: 6
2.5 随堂测验
1、单选题:
使用地址作为实参传给形参,下列说法正确的是()
A: 实参是形参的备份
B: 实参与形参无联系
C: 形参是实参的备份
D: 实参与形参是同一对象
答案: 实参与形参是同一对象
2、单选题:
使用值传递方式将实参传给形参,下列说法正确的是( )
A: 形参是实参的备份
B: 实参是形参的备份
C: 形参和实参是同一对象
D: 形参和实参无联系
答案: 形参是实参的备份
2.6 随堂测验
1、单选题:
要禁止修改指针p本身,又要禁止修改p所指向的数据,这样的指针应定义为()
A: const char *p=“ABCD”;
B: char *const p=“ABCD”;
C: char const *p=“ABCD”;
D: const char * const p=“ABCD”;
答案: const char * const p=“ABCD”;
2.8 随堂测验
1、单选题:
一个函数功能不太复杂,但要求被频繁调用,则应把它定义为 ()
A: 内联函数
B: 重载函数
C: 递归函数
D: 嵌套函数
答案: 内联函数
2、单选题:
适宜采用inline定义函数情况是()
A: 函数体含有循环语句
B: 函数体含有递归语句
C: 函数代码少、频繁调用
D: 函数代码多、不常调用
答案: 函数代码少、频繁调用
导入内容-随堂测验
1、单选题:
在C++中,使用流进行输入输出,其中用于屏幕输入()
A: cin
B: cerr
C: cout
D: clog
答案: cin
2、单选题:
语句ofstream f(“TEMP.DAT”,ios::app|ios::binary)?的功能是建立流对象f,试图打开文件TEMP.DAT 并与之连接,并且()
A: 若文件存在,将文件写指针定位于文件尾;若文件不存在,建立一个新文件
B: 若文件存在,将其置为空文件;若文件不存在,打开失败
C: 若文件存在,将文件写指针定位于文件首;若文件不存在,建立一个新文件
D: 若文件存在,打开失败;若文件不存在,建立一个新文件
答案: 若文件存在,将文件写指针定位于文件尾;若文件不存在,建立一个新文件
面向过程结构化编程单元测试01
1、单选题:
下列函数原型声明中错误的是____。
A: void Fun(int x=0,int y=0);
B: void Fun(int x,int y);
C: void Fun(int x,int y=0);
D: void Fun(int x=0,int y)
答案: void Fun(int x=0,int y)
2、单选题:
已知函数f的原型是:void f(int *a,long &b);,变量v1、v2的定义是;int v1; long v2;,正确的调用语句是____。
A: f(v1,&v2);
B: f(v1,v2);
C: f(&v1,v2);
D: f(&v1,&v2);
答案: f(&v1,v2);
3、单选题:
下列关于C++函数的描述中正确的是____。
A: 主函数是程序的入口,它由用户定义的函数调用
B: 函数在调用之前必须先被声明
C: 每个用户定义函数只能被其他函数调用一次
D: 函数是C++中面向对象程序设计框架的基本组成单元
答案: 函数在调用之前必须先被声明
4、单选题:
以下函数值的类型是____。fun(float x){ float y; y=3*x-4; return(y);}
A: int
B: char
C: void
D: float
答案: void
5、单选题:
下面关于转换函数重载的说法正确的是____
A: 转换函数的重载与普通函数的重载是一样的,也是靠函数的参数的个数和类型来区别不同的函数
B: 转换函数没有参数,因此不能重载,否则将发生二义性
C: 转换函数虽然没有参数,但可以依靠函数的类型区别,所以可以重载
D: 对转换函数进行调用时,必须使用强制类型转换以指明调用的是哪个转换函数
答案: 转换函数虽然没有参数,但可以依靠函数的类型区别,所以可以重载
6、单选题:
关于成员函数的重载,说法正确的是____
A: 就是在类中设计多个函数名相同,参数个数及参数类型也相同的函数
B: 析构函数可以重载
C: 函数重载,要求函数名相同,但参数个数不同,或参数相同,但其类型不同
D: 构造函数不可重载
答案: 函数重载,要求函数名相同,但参数个数不同,或参数相同,但其类型不同
7、单选题:
下面关于C++语言说法不正确的是____
A: 具有函数式的程序结构,其程序至少由一个函数构成,不论是主函数,还是其他函数
B: 变量的数据类型丰富,而且使用不同的存储类别,以控制函数内外信息的交换
C: 具有编译预处理的功能,为程序的设计与修改、调试、移植带来方便
D: 既是面向结构的程序设计语言,又是面向对象的程序设计语言,使用起来很方便
答案: 具有函数式的程序结构,其程序至少由一个函数构成,不论是主函数,还是其他函数
8、单选题:
有如下函数调用语句:func(a,a+b,(a+b,a+c,c));在该语句中,含有的实参个数是____
A: 3
B: 4
C: 5
D: 有语法错
答案: 有语法错
9、单选题:
关于模板函数与函数模板的说法正确的是____
A: 其实质是一样的,只是说法不同
B: 两者的形参类型是一样的
C: 模板函数是函数模板的实例化
D: 函数模板是模板函数的实例化
答案: 模板函数是函数模板的实例化
10、单选题:
关于函数的调用下面不正确的是____
A: 由于程序总是从主函数开始,所以函数的调用总是在主函数和其他函数之间进行
B: 函数的调用可以在任意函数之间进行,只要有需要
C: 一个函数可以自己调用自己
D: 函数返回时可以不必带返回值,这时函数在定义时其类型应用void标示
答案: 由于程序总是从主函数开始,所以函数的调用总是在主函数和其他函数之间进行
11、单选题:
以下叙述中不正确的是____
A: 在C++中,函数中的自动变量可以赋初值,每调用一次,赋一次初值
B: 在C++中,在调用函数时,参数和对应形参在类型上只需赋值兼容
C: 在C++中,外部变量的隐含类别是自动存储类别
D: 在C++中,函数形参可以说明为register变量
答案: 在C++中,函数形参可以说明为register变量
12、单选题:
下列函数的声明正确的是____
A: float sum(float x,y) {…….}
B: flaot sum(float,float );
C: float sum(x,y)
D: float sum(floatx,floaty) {…….}
答案: flaot sum(float,float );
13、单选题:
在C++中,函数原型不能标识____
A: 函数的返回类型
B: 函数参数的个数
C: 函数参数类型
D: 函数的功能
答案: 函数的功能
14、单选题:
决定C++语言中函数的返回值类型的是____
A: return语句中的表达式类型
B: 调用该函数时系统随机产生的类型
C: 调用该函数时的主调用函数类型
D: 在定义该函数时所指定的数据类型
答案: 在定义该函数时所指定的数据类型
15、单选题:
已知f1和f2是同一类的两个成员函数,但f1不能直接调用f2,这说明____
A: f1和f2都是静态函数
B: f1不是静态函数,f2是静态函数
C: f1是静态函数,f2不是静态函数
D: f1和f2都不是静态函数
答案: f1是静态函数,f2不是静态函数
16、单选题:
所有在函数中定义的变量,连同形式参数,都是____
A: 全局变量
B: 局部变量
C: 静态变量
D: 寄存器变量
答案: 局部变量
17、单选题:
一个函数功能不太复杂,但要求被频繁调用,则应把它定义为____
A: 内联函数
B: 重载函数
C: 递归函数
D: 嵌套函数
答案: 内联函数
18、单选题:
对下面的程序说法正确的是____。#include<iostream.h>void sum (float m,float n){ float sum=m+n; }main( ){cout<<sum(5.3,6.5)<<endl;}
A: 该程序是错误的,错误之处在于没有对sum( )函数进行说明
B: 程序书写规整,无语法错误,是正确的
C: 该程序语法无错误,但在调用函数sum( )时出错,因为sum( )函数被定义为void类型,但却被主函数调用,因而是错误的
D: 虽然sum( )函数被定义为void类型,但调用时也不会出错,程序能够编译通过
答案: 该程序语法无错误,但在调用函数sum( )时出错,因为sum( )函数被定义为void类型,但却被主函数调用,因而是错误的
19、单选题:
下列关于函数的调用,不正确的是____
A: 如果一个问题的解决要依靠另一个问题的解决,而另一个问题的解决的方法与原问题相同,则此问题可用递归方法来解决
B: 函数的调用可作为函数的实参
C: 函数的调用可作为函数形参
D: 函数的调用可出现在执行语句中,也可出现在表达式中
答案: 函数的调用可作为函数形参
20、单选题:
以下说法中正确的是____
A: C++语言程序总从第一个的函数开始执行
B: 在C++语言程序中,要调用的函数必须在main( )函数中定义
C: C++语言程序总是从main( )函数开始执行
D: C++语言程序中的main( )函数必须放在程序的开始部分
答案: C++语言程序总是从main( )函数开始执行
21、单选题:
关于内联函数的说法不正确的是____
A: 在说明类的同时定义成员函数,则函数隐含为内联函数
B: 也可在类外用inline关键字,对成员函数进行说明,则该函数也为内联函数
C: 当内联函数被调用时,内联函数的代码在调用处被打开
D: 当内联函数被调用时,内联函数将返回结果
答案: 当内联函数被调用时,内联函数将返回结果
22、单选题:
下面属于同一函数模板的是____
A: template<class t1> t1 max(t1 &a,t1 &b) {…} template<class t2> t2 max(t2 &a,t2 &b) {…}
B: template<class t1> t1 max(t1 a,t1 b) {…} template<class t2> t2 max(t2 &a,t2 &b) {…}
C: template<class t1> t1 max(t1 *a,t1 *b) {…} template<class t2> t2 max(t2 &a,t2 &b) {…}
D: template<class t1> t1 max(t1 a,t1 b) {…} template<class t2> t2 max(t2 &a,t2 &b,t2 c) {…}
答案: template<class t1> t1 max(t1 a,t1 b) {…} template<class t2> t2 max(t2 &a,t2 &b,t2 c) {…}
23、单选题:
关于函数的返回不正确的是____
A: 使程序的执行重新返回到主函数,使程序继续往下执行
B: 释放调用函数时临时分配的存储单元
C: 返回一个值给主调函数
D: 其返回值可为数值、地址,也可没有任何返回值
答案: 返回一个值给主调函数
24、单选题:
在进行了任何C++流的操作后,都可以用C++流的有关成员函数检测流的状态;其中只能用于检测输入操作的函数的函数名是____
A: fail
B: eof
C: bad
D: good
答案: eof
25、单选题:
在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是____
A: 地址传递
B: 单向值传递
C: 由实参传给形参,再由形参传回实参
D: 传递方式由用户指定
答案: 单向值传递
面向过程结构化编程单元测试02
1、单选题:
C++语言中所有在函数中定义的变量,连同形式参数,都属于()
A: 全局变量
B: 局部变量
C: 静态变量
D: 函数
答案: 局部变量
2、单选题:
当一个函数无返回值时,定义它的函数的类型是( )
A: void
B: int
C: 无
D: long
答案: void
3、单选题:
函数调用func((exp1,exp2),(exp3,exp4,exp5))中所含实参的个数为()
A: 1
B: 2
C: 4
D: 5
答案: 2
4、单选题:
实现两个相同类型数加法的函数模板的声明是()
A: add(T x,T y)
B: T add(x,y)
C: T add(T x,y)
D: T add(T x,T y)
答案: T add(T x,T y)
5、单选题:
下列有关重载函数的说法中正确的是()
A: 重载函数必须具有不同的返回值类型
B: 重载函数参数个数必须相同
C: 重载函数必须有不同的形参列表
D: 重载函数名可以不同
答案: 重载函数必须有不同的形参列表
6、单选题:
类型转换函数( )
A: 不能带有参数
B: 只能带一个参数
C: 只能带2个参数
D: 只能带3个参数
答案: 不能带有参数
7、单选题:
设有函数模板 template <class Q> Q Sum(Q x,Q y) {return (x)+(y);} 则下列语句中对该函数模板错误的使用是()
A: Sum(10,2);
B: Sum(5.0,6.7);
C: Sum(15.2f,16.0f);
D: Sum(“AB”,”CD”);
答案: Sum(“AB”,”CD”);
8、单选题:
一个交换两个浮点数的函数swap,并在主函数中调用这个 函数进行两个浮点数的交换,但结果未正确输出,只修改哪一行代码来使程序正确 Void swap(float a,float b){ float temp=a; a=b; b=temp; } void main( ) { float a=1,b=2; swap ( a, b ); }
A: 第1行
B: 第2行
C: 第4行
D: 第6行
答案: 第1行
9、单选题:
适宜采用inline定义函数情况是()
A: 函数体含有循环语句
B: 函数体含有递归语句
C: 函数代码少、频繁调用
D: 函数代码多、不常调用
答案: 函数代码少、频繁调用
10、单选题:
一个函数功能不太复杂,但要求被频繁调用,则应把它定义为 ()
A: 内联函数
B: 重载函数
C: 递归函数
D: 嵌套函数
答案: 内联函数
11、单选题:
决定C++语言中函数的返回值类型的是()
A: return语句中的表达式类型
B: 调用该函数时系统随机产生的类型
C: 调用该函数时的主调用函数类型
D: 在定义该函数时所指定的数据类型
答案: 在定义该函数时所指定的数据类型
12、单选题:
已知f1和f2是同一类的两个成员函数,但f1不能直接调用f2,这说明()
A: f1和f2都是静态函数
B: f1不是静态函数,f2是静态函数
C: f1是静态函数,f2不是静态函数
D: f1和f2都不是静态函数
答案: f1是静态函数,f2不是静态函数
13、单选题:
下面判断是否构成重载函数的条件中,错误的判断条件是( )
A: 参数类型不同
B: 参数个数不同
C: 参数顺序不同
D: 函数返回值不同
答案: 函数返回值不同
14、单选题:
在C++中,函数原型不能标识()
A: 函数的返回类型
B: 函数参数的个数
C: 函数参数类型
D: 函数的功能
答案: 函数的功能
15、单选题:
在int a=3,int *p=&a;中,*p的值是()
A: 变量a的地址值
B: 无意义
C: 变量p的地址值
D: 3
答案: 3
第三部分 封装与信息隐藏-类与对象
3.1 随堂测试
1、单选题:
下面有关类说法不正确的是()
A: 一个类可以有多个构造函数
B: 一个类只有一个析构函数
C: 析构函数需要指定参数
D: 在一个类中可以说明具有类类型的数据成员
答案: 析构函数需要指定参数
2、单选题:
下列不能作为类的成员的是()
A: 自身类对象的指针
B: 自身类对象
C: 自身类对象的引用
D: 另一个类的对象
答案: 自身类对象
3、单选题:
在类中说明的成员可以使用关键字的是()
A: public
B: extern
C: cpu
D: register
答案: public
3.15 随堂测验
1、单选题:
所谓数据封装就是将一组数据和与这组数据有关操作组装在一起,形成一个实体,这实体也就是()
A: 类
B: 对象
C: 函数体
D: 数据块
答案: 类
3.17 随堂测验
1、单选题:
静态成员函数没有()
A: 返回值
B: this指针
C: 指针参数
D: 返回类型
答案: this指针
2、单选题:
下列描述错误的是( )
A: 在创建对象前,静态成员不存在
B: 静态成员是类的成员
C: 静态成员不能是虚函数
D: 静态成员函数不能直接访问非静态成员
答案: 在创建对象前,静态成员不存在
3.18 随堂测验
1、单选题:
要禁止修改指针p本身,又要禁止修改p所指向的数据,这样的指针应定义为()
A: const char *p=“ABCD”;
B: char *const p=“ABCD”;
C: char const *p=“ABCD”;
D: const char * const p=“ABCD”;
答案: const char * const p=“ABCD”;
上方为免费预览版答案,如需购买完整答案,请点击下方红字:
为了方便下次阅读,建议在浏览器添加书签收藏本网页
添加书签方法:
1.电脑按键盘的Ctrl键+D键即可收藏本网页
2.手机浏览器可以添加书签收藏本网页
点击浏览器底部菜单-【添加书签】-收藏本网页
点击浏览器底部菜单-【书签/历史】-可查看本网页
获取更多慕课答案,欢迎在浏览器访问我们的网站:
http://mooc.mengmianren.com
注:请切换至英文输入法输入域名,如果没有成功进入网站,请输入完整域名:http://mooc.mengmianren.com/
我们的公众号
打开手机微信,扫一扫下方二维码,关注微信公众号:萌面人APP
本公众号可查看各种网课答案,还可免费查看大学教材答案
点击这里,可查看公众号功能介绍
APP下载
APP功能说明
1.可查看各种网课答案
点击【萌面人官网】,可查看知到智慧树,超星尔雅学习通,学堂在线等网课答案
点击【中国大学慕课答案】,可查看mooc慕课答案
2.可一键领取淘宝/天猫/京东/拼多多无门槛优惠券
如图所示,点击对应图标即可领取淘宝/天猫/京东/拼多多无门槛优惠券
戊谜念冲匹闺茬劲马廉棘讲浇