15秋福师《C++语言程序设计》在线作业一满分答案.docx
《15秋福师《C++语言程序设计》在线作业一满分答案.docx》由会员分享,可在线阅读,更多相关《15秋福师《C++语言程序设计》在线作业一满分答案.docx(9页珍藏版)》请在冰豆网上搜索。
15秋福师《C++语言程序设计》在线作业一满分答案
15秋福师《C++语言程序设计》在线作业一满分答案
一、单选题(共20道试题,共40分。
)
1. 设int*p2=&x,*p1=a;p2=*b;则a和b的类型分别是()。
A.int*和int
B.int*和int**
C.int和int*
D.int*和int*
正确答案:
B
2. 结构化程序设计的3种结构是_________。
A.顺序结构、选择结构、转移结构
B.分支结构、等价结构、循环结构
C.多分支结构、赋值结构、等价结构
D.顺序结构、选择结构、循环结构
正确答案:
D
3. C++源程序文件的扩展名是()。
A..CPP
B..C
C..DLL
D..EXE
正确答案:
A
4. 类TM和类TN是两个独立的类,那么类TM中哪种形式的数据成员一定是不允许的___________。
A.TM*a;
B.TN&a;
C.TMa;
D.TNa;
正确答案:
C
5. 下列描述正确的是_________。
A.表示m>n为true或mn&&m
B.switch语句结构中必须有default语句
C.if语句结构中必须有else语句
D.如果至少有一个操作数为true,则包含“‖”运算符的表达式为true
正确答案:
D
6. 如果类A被说明成类B的友元,则()。
A.类A的成员即类B的成员
B.类B的成员即类A的成员
C.类A的成员函数不得访问类B的成员
D.类B不一定是类A的友元
正确答案:
D
7. 如果有char*ssl=“0123456789”,则,sizeof(ssl)的值是()
A.4
B.10
C.11
D.40
正确答案:
A
8. 函数说明时,下列()项是不必要的。
A.函数类型
B.函数参数类型和名字
C.函数名字
D.返回值表达式
正确答案:
D
9. 下面说法中,正确的是()
A.公有派生类的成员函数可以访问基类的私有成员
B.私有派生类的成员函数可以访问基类的私有成员
C.无论公有派生还是私有派生,派生类的成员函数均可以访问基类的公有成员
D.无论公有派生还是私有派生,派生类的成员函数均可以访问基类的私有成员
正确答案:
C
10.
在类的定义中,用于为对象分配内存空间,对类的数据成员进行初始化并执行其他内部管理操作的函
数是_________。
A.友元函数
B.虚函数
C.构造函数
D.析构函数
正确答案:
C
11. 假定a为一个整型数组名,则元素a[4]的字节地址为()。
A.a+4
B.a+8
C.a+16
D.a+32
正确答案:
C
12.
下面程序的运行结果为_________。
#include
classA
{
public:
A(){cout<<”1”;}
~A(){cout<<”2”;}
}
classB:
publicA
{
public:
B(){cout<<”3”;}
~B(){cout<<”4”;}
}
voidmain()
{
Bb;
}
A.1234
B.1324
C.1342
D.3142
正确答案:
C
13. 考虑函数原型voidtest(inta,intb=7,char="*"),下面的函数调用中,属于不合法调用的是()。
A.test(5);
B.test(5,8);
C.test(6,"#")
D.test(0,0,"*")
正确答案:
C
14. 如果变量x,y已经正确定义,下列语句哪一项不能正确将x,y的值进行交换()
A.x=x+y,y=x-y,x=x-y
B.t=x,x=y,y=t
C.t=y,y=x,x=t
D.x=t,t=y,y=x
正确答案:
D
15. C++语言对C语言做了很多改进,C++语言相对于C语言的最根本的变化是()。
A.增加了一些新的运算符
B.允许函数重载,并允许设置缺省参数
C.规定函数说明符必须用原型
D.引进了类和对象的概念
正确答案:
D
16. 假定AB为一个类,则该类的拷贝构造函数的声明语句为_________。
A.AB&(AB x)
B.AB(AB x)
C.AB(AB &)
D.AB(AB*x)
正确答案:
C
17. 下列说法正确的是_________。
A.内联函数在运行时是将该函数的目标代码插入每个调用该函数的地方
B.内联函数在编译时是将该函数的月标代码插入每个调用该函数的地方
C.类的内联函数必须在类体内定义
D.类的内联函数必须在类体外通过加关键字inline定义
正确答案:
B
18. C++程序源文件默认的扩展名是()
A.cs
B.obj
C.cpp
D.exe
正确答案:
C
19. 以下结构类型可用来构造链表的是()。
A.structaa{inta;int*b;};
B.structbb{inta;bb*b;};
C.structcc{int*a;ccb;};
D.structdd{int*a;aab;};
正确答案:
B
20. 下列运算符中,运算对象必须是整型的是()
A./
B.%
C.=
D.&
正确答案:
B
福师《C++语言程序设计》在线作业一
二、判断题(共20道试题,共40分。
)
1. 内联函数是为了提高编程效率而实现的,它克服了用#define宏定义所带来的弊病。
()
A.错误
B.正确
正确答案:
B
2. sizeof运算符用于计算某种类型的对象在内存中所占的字节数。
()
A.错误
B.正确
正确答案:
B
3. C++目标程序经连接后生成扩展名为exe的可执行程序文件。
A.错误
B.正确
正确答案:
B
4. 16位计算机中整型占4个字节存储空间。
A.错误
B.正确
正确答案:
A
5. 在一个函数中,不允许定义与结构体类型的成员相同名的变量。
()
A.错误
B.正确
正确答案:
B
6. 以面向IA-32处理器的VC++2008和gcc4.2为准,float类型数据在内存中占4个字节,double型数据占8个字节,longdouble型数据占8个字节。
()
A.错误
B.正确
正确答案:
B
7. 派生类的成员函数可以直接访问基类的所有成员。
A.错误
B.正确
正确答案:
A
8. 若一全局变量只允许本程序文件中的函数使用,则定义它时应加上修饰符void。
A.错误
B.正确
正确答案:
A
9. 对于全局函数intf(void),与其完全等价的函数原型为constintf()。
A.错误
B.正确
正确答案:
B
10. C++语言中的每条基本语句以;作为结束符,每条复合语句以}作为结束符。
A.错误
B.正确
正确答案:
B
11. 构造函数不能重载。
A.错误
B.正确
正确答案:
A
12. 一个类可以作为另一个类的友元类。
A.错误
B.正确
正确答案:
B
13. 指向同一数组的两指针p1、p2相减的结果与所指元素的下标相减的结果是相同的。
()
A.错误
B.正确
正确答案:
B
14. 基类中被说明为protected和private的成员只能被其派生类的成员函数访问,不能被其它的函数访问。
A.错误
B.正确
正确答案:
A
15. 用new动态申请的内存空间,必须用delete来释放。
A.错误
B.正确
正确答案:
A
16. C++程序的开发步骤通常要经过编辑、编译、连接、运行调试这样几个步骤。
()
A.错误
B.正确
正确答案:
B
17. 在定义函数中指定的形参,在未出现函数调用时,它们并不占内存中的存储单元。
()
A.错误
B.正确
正确答案:
B
18. 定义全局变量要在程序开始时进行,并且放在所有函数的外面,静态局部变量要在函数内部定义,但生命期却随函数的第一次被调用而产生。
()
A.错误
B.正确
正确答案:
B
19. C语言程序总是从主函数开始执行,在主函数结束。
()
A.错误
B.正确
正确答案:
B
20. 在使用C语言库函数时,要用预编译命令“#include”将有关的头文件包括到用户源文件中。
()
A.错误
B.正确
正确答案:
B
福师《C++语言程序设计》在线作业一
三、多选题(共10道试题,共20分。
)
1. 关于函数重载,下列描述错误的是______。
A.函数重载是指两个或两个以上的函数取相同的函数名,但形参的个数或类型不同
B.函数重载是指两个以上的函数取相同的名字和具有相同的参数个数,但形参的类型可以不同
C.函数重载是指两个以上的函数名字不同,但形参的个数或类型相同
D.函数重载是指两个以上的函数取相同的函数名,并且函数的返回类型相同
正确答案:
BCD
2. 下列说法中错误的是______。
A.不允许设置参数的默认值
B.设置参数的默认值只能在定义函数时设置
C.设置参数的默认值时,应该设置右边的参数
D.设置参数的默认值时,应该全部参数都设置
正确答案:
ABD
3. 使用值传递方式将实参传给形参,下列说法不正确的是______。
A.形参是实参的备份
B.实参是形参的备份
C.形参和实参是同一对象
D.形参和实参无联系
正确答案:
BCD
4. 关于异常和C++提供的异常处理机制正确的说法是______。
A.若程序员预见到程序中的异常,则一定可以通过修改程序代码来避免异常出现
B.使用dynamic_cast操作符可能会产生异常
C.异常可以用catch进行捕获处理
D.异常可以是对象,也可以是普通整数
正确答案:
BCD
5. 以下关于函数模板叙述错误的是______。
A.函数模板也是一个具体类型的函数
B.函数模板的类型参数与函数的参数是同一个概念
C.通过使用不同的类型参数,函数模板可以生成不同类型的函数
D.用函数模板定义的函数没有类型
正确答案:
ABD
6. 下面关于指针变量和引用变量的说法正确的是______。
A.指针变量存放的是内存地址,并且可以置为0
B.定义引用变量时,必须同时指明具体被引用的对象或变量
C.使用取地址操作符,可以取得指针变量自身的地址,但取不到引用变量自身的地址
D.类中的数据成员可以是指针变量,但不能是引用变量
正确答案:
ABC
7. 在进行完成任何C++流的操作后,都可以用C++流的有关成员函数检测流的状态;其中不能用于检测输入流状态的操作函数名称是______。
A.fail
B.eof
C.bad
D.good
正确答案:
ACD
8. 下列哪些是类的特性______。
A.多态性
B.继承性
C.封装性
D.虚拟性
正确答案:
ABC
9. 下列说法中错误的是______。
A.C++程序总是从第一个定义的函数开始执行
B.C++程序总是从main函数开始执行
C.C++函数必须有返回值,否则不能使用函数
D.C++程序中有调用关系的所有函数必须放在同一个程序文件中
正确答案:
ACD
10. 以下不正确的描述是______。
A.函数的定义可以嵌套,函数的调用不可以嵌套
B.函数的定义不可以嵌套,函数的调用可以嵌套
C.函数的定义和函数的调用均可以嵌套
D.函数的定义和函数的调用均不可以嵌套
正确答案:
ACD