福建师范大学2015年春学期《C++语言程序设计》在线作业二满分答案
- 格式:doc
- 大小:33.00 KB
- 文档页数:8
福师《C++语言程序设计》在线作业二试卷总分:100 测试时间:-- 试卷得分:100一、单选题(共20道试题,共40分。
)得分:401.下列叙述错误的是()。
A. 一个函数中可以有多条return语句B. 调用函数必须在一条独立的语句中完成C. 函数中通过return语句传递函数值D. 主函数main也可以带有形参答案:B满分:2分得分:22.函数定义为Fun(int&k),变量定义n=100,则下面调用正确的是()。
A. Fun(20)B. Fun(20+n)C. Fun(n)D. Fun(&n)答案:C满分:2分得分:23.如要求在if后一对括号中的表达式,表示a不等于0的时候的值为"真",则能正确表示这一关系的表达式为()A. a<>0B. !aC. a=0D. a答案:D满分:2分得分:24.能做为C++程序基本单位的是()A. 字符;B. 语句;C. 函数;D. 源文件;答案:C满分:2分得分:25.下列do-while循环的循环次数是():已知:int i=5 do{ cout<<i--<<endl i-- }while (i!=0)A. 0B. 2C. 5D. 无限次答案:D满分:2分得分:26.文件包含中被包含的文件的扩展名( )A. 必须为.hB. 不能用.hC. 必须是.cD. 不一定是 .h答案:D满分:2分得分:27.函数重载体现了面向对象的()A. 封装性B. 多态性C. 继承性D. 抽象性答案:B满分:2分得分:28.下面的哪个保留字不能作为函数的返回类型?A. voidB. intC. newD. long答案:C满分:2分得分:29.设int f(int);和int g(int);是函数f和g的原形,以下将f作为语句调用的是()。
A. g(f(3));B. f(g(3));C. g(f(3)+2);D. p= f(g(3)+1);答案:B满分:2分得分:210.一个类的友元函数能够访问该类的()。
A. 私有成员B. 保护成员C. 公有成员D. 所有成员答案:D满分:2分得分:211.设有定义intx;floatv;,则10+x+v值的数据类型是()。
A. intB. doubleC. floatD. 不确定答案:C满分:2分得分:212.下列描述中哪个是正确的()。
A. 私有派生的子类无法访问父类的成员B. 类A的私有派生子类的派生类C无法初始化其祖先类A对象的属性,因为类A的成员对类C是不可访问的C. 私有派生类不能作为基类派生子类D. 私有派生类的所有子孙类将无法继续继承该类的成员答案:B满分:2分得分:213.在公有派生情况下,有关派生类对象和基类对象的关系,下列叙述不正确的是_________。
A. 派生类的对象可以赋给基类的对象B. 派生类的对象可以初始化基类的引用C. 派生类的对象可以直接访问基类中的成员D. 派生类的对象的地址可以赋给指向基类的指针答案:C满分:2分得分:214.如果变量x,y已经正确定义,下列语句哪一项不能正确将x,y的值进行交换A. x=x+y,y=x-y,x=x-yB. t=x,x=y,y=tC. t=y,y=x,x=tD. x=t,t=y,y=x答案:D满分:2分得分:215.以下结构类型可用来构造链表的是()。
A. struct aa{ int a;int * b;};B. struct bb{ int a;bb * b;};C. struct cc{ int * a;cc b;};D. struct dd{ int * a;aa b;};答案:B满分:2分得分:216.4、下列函数参数默认值定义错误的是()。
(假定函数f()已经定义)A. Fun(intx,inty=0)B. Fun(intx=100)C. Fun(intx=0,inty)D. Fun(intx=f())答案:C满分:2分得分:217.在函数定义前加上关键字”inline”,表示该函数被定义为()。
A. 重载函数B. 内联函数C. 成员函数D. 普通函数答案:B满分:2分得分:218.已知:print( )函数是一个类的常成员函数,且无返回值。
在下列表示中,正确的是()A. void print( ) const;B. const void print( );C. void print( );D. void print(const);答案:A满分:2分得分:219.类B是通过public继承方式从类A派生而来的,且类A和类B都有完整的实现代码,那么下列说法正确的是_______。
A. 类B中具有pubic可访问性的成员函数个数一定不少于类A中public成员函数的个数。
B. 一个类B的实例对象占用的内存空间一定不少于一个类A的实例对象占用的内存空间。
C. 只要类B中的构造函数都是public的,在main函数中就可以创建类B的实例对象。
D. 类A和类B中的同名虚函数的返回值类型必须完全一致。
答案:B满分:2分得分:220.下列字符中不能构成标识符的是()A. 数字字符B. 大写字母C. 下划线字符D. 连接符答案:D满分:2分得分:2二、判断题(共20道试题,共40分。
)得分:401.内联函数是为了提高编程效率而实现的,它克服了用#define宏定义所带来的弊病。
()A. 错误B. 正确答案:B满分:2分得分:22.声明一个结构并不分配内存,内存分配发生在定义这个新数据类型的变量中。
()A. 错误B. 正确答案:B满分:2分得分:23.如果派生类的成员函数的原型与基类中被定义为虚函数的成员函数原型相同,那么,这个函数自动继承基类中虚函数的特性。
A. 错误B. 正确答案:B满分:2分得分:24.继承的方式有公有继承、私有继承两种。
A. 错误B. 正确答案:A满分:2分得分:25.在使用C语言库函数时,要用预编译命令“#include”将有关的头文件包括到用户源文件中。
()A. 错误B. 正确答案:B满分:2分得分:26.在一个函数中,不允许定义与结构体类型的成员相同名的变量。
()A. 错误B. 正确答案:B满分:2分得分:27.每个cpp文件是单独编译的,但一个程序中多个cpp文件的编译顺序是不固定的。
A. 错误B. 正确答案:B满分:2分得分:28.设置函数的参数默认值的顺序是自左向右。
A. 错误B. 正确答案:A满分:2分得分:29.C++中函数声明就是函数原型。
()A. 错误B. 正确答案:B满分:2分得分:210.执行if (x>=0||x<=0) cout<<"abcd";else cout<<"wxyz";屏幕上显示的是dcab。
A. 错误B. 正确答案:A满分:2分得分:211.空类型指针不能进行指针运算,也不能进行间接引用。
()A. 错误B. 正确答案:B满分:2分得分:212.一个类的对象只有一个。
A. 错误B. 正确答案:A满分:2分得分:213.C++目标程序经连接后生成扩展名为exe的可执行程序文件。
A. 错误B. 正确答案:B满分:2分得分:214.C语言程序总是从主函数开始执行,在主函数结束。
()A. 错误B. 正确答案:B满分:2分得分:215.float和double类型的大小分别为4和8。
A. 错误B. 正确答案:B满分:2分得分:216.表达式8&3的结果是1。
A. 错误B. 正确答案:A满分:2分得分:217.C++语句constchar*constp="hello",,所定义的指针p和它所指的内容都不能被改变。
A. 错误B. 正确答案:B满分:2分得分:218.私有成员只能被本类的成员函数访问,来自类外部的任何访问都是非法的。
()A. 错误B. 正确答案:A满分:2分得分:219.空类型指针不能进行指针运算,也不能进行间接引用。
()A. 错误B. 正确答案:B满分:2分得分:220.程序设计的目标在正确的前提下,其重要性排列次序依次为:可读,可维护,可移植和高效()A. 错误B. 正确答案:B三、多选题(共10道试题,共20分。
)得分:201.C++语言的跳转语句中,对于break和continue说法不正确的是______。
A. break语句只应用于循环体中B. continue语句只应用于循环体中C. break是无条件跳转语句,continue不是D. break和continue的跳转范围不够明确,容易产生问题答案:ACD满分:2分得分:22.在下面的一维数组定义中,没有语法错误的是______。
A. int a[ ]={1,2,3}B. int a[10]={0}C. int a[ ]D. int a[5]答案:ABD满分:2分得分:23.考虑函数原型void test(int a ,int b=7,char z=’*’),下面的函数调用中,属于合法调用的是______。
A. test(5)B. test(5,8)C. test(6,’#’)D. test(0,0,’*’)答案:ABD满分:2分得分:24.下列说法中错误的是______。
A. C++程序总是从第一个定义的函数开始执行B. C++程序总是从main函数开始执行C. C++函数必须有返回值,否则不能使用函数D. C++程序中有调用关系的所有函数必须放在同一个程序文件中答案:ACD满分:2分得分:25.下面哪些保留字可以作为函数的返回类型______。
A. voidB. intC. newD. long答案:ABD满分:2分得分:26.函数调用可以______。
A. 出现在一个表达式中B. 出现在执行语句中C. 作为一个函数的实参D. 作为一个函数的形参答案:ABC7.下列关于构造函数的描述中,正确的是______。
A. 构造函数可以设置默认参数B. 构造函数在定义类对象时自动执行C. 构造函数可以是内联函数D. 构造函数不可以重载答案:ABC满分:2分得分:28.下列说法中错误的是______。
A. 不允许设置参数的默认值B. 设置参数的默认值只能在定义函数时设置C. 设置参数的默认值时,应该设置右边的参数D. 设置参数的默认值时,应该全部参数都设置答案:ABD满分:2分得分:29.下列哪种函数不可以是虚的______。
A. 自定义的构造函数B. 拷贝构造函数C. 静态成员函数D. 析构函数答案:ABC满分:2分得分:210.下面关于指针变量和引用变量的说法正确的是______。
A. 指针变量存放的是内存地址,并且可以置为0B. 定义引用变量时,必须同时指明具体被引用的对象或变量C. 使用取地址操作符,可以取得指针变量自身的地址,但取不到引用变量自身的地址D. 类中的数据成员可以是指针变量,但不能是引用变量答案:ABC满分:2分得分:2。