青青 发表于 2014-11-22 21:41:04

福师14秋《C++语言程序设计》在线作业答案

福师《C++语言程序设计》在线作业一
试卷总分:100   测试时间:--
一、单选题(共20道试题,共40分。)
1.下面有关重载函数的说法中正确的是( )
A. 重载函数必须具有不同的返回值类型
B. 重载函数形参个数必须不同
C. 重载函数必须有不同的形参列表
D. 重载函数名可以不同
满分:2分
2.下列描述正确的是()。
A. 表示m>n为true或mn&&m
B. switch语句结构中必须有default语句
C. if语句结构中必须有else语句
D. 如果至少有一个操作数为true,则包含“‖”运算符的表达式为true
满分:2分
3.C++语言对C语言做了很多改进,C++语言相对于C语言的最根本的变化是()。
A. 增加了一些新的运算符
B. 允许函数重载,并允许设置缺省参数
C. 规定函数说明符必须用原型
D. 引进了类和对象的概念
满分:2分
4.下列函数中,可以是虚函数的是______。( )
A. 自定义的构造函数
B. 拷贝构造函数
C. 静态成员函数
D. 析构函数
满分:2分
5.设void f1(int * m,long & n);int a;long b;则以下调用合法的是( )。
A. f1(a,b);
B. f1(&a,b);
C. f1(a,&b);
D. f1(&a,&b);
满分:2分
6.如果有char* ssl=“0123456789”,则,sizeof(ssl)的值是( )
A. 4
B. 10
C. 11
D. 40
满分:2分
7.下列描述中哪个是正确的()。
A. 私有派生的子类无法访问父类的成员
B. 类A的私有派生子类的派生类C无法初始化其祖先类A对象的属性,因为类A的成员对类C是不可访问的
C. 私有派生类不能作为基类派生子类
D. 私有派生类的所有子孙类将无法继续继承该类的成员
满分:2分
8.下面对静态数据成员的描述中,正确的是_________。
A. 静态数据成员可以在类体内进行初始化
B. 静态数据成员不可以被类的对象调用
C. 静态数据成员不能受private控制符的作用
D. 静态数据成员可以直接用类名调用
满分:2分
9.类模板规定了如何创建一个______。( )
A. 对象
B. 类
C. 实例
D. 变量
满分:2分
10.下面的哪个选项不能作为函数的返回类型
A. void
B. int
C. new
D. long
满分:2分
11.在公有派生情况下,有关派生类对象和基类对象的关系,下列叙述不正确的是_________。
A. 派生类的对象可以赋给基类的对象
B. 派生类的对象可以初始化基类的引用
C. 派生类的对象可以直接访问基类中的成员
D. 派生类的对象的地址可以赋给指向基类的指针
满分:2分
12.当说明一个结构变量时,系统分配给它的内存是( )
A. 各成员所需内存量的总和
B. 结构中第一个成员所需内存量
C. 成员中占内存量最大的成员所需的容量
D. 结构中最后一个成员所需内存量
满分:2分
13.不能作为重载函数的调用的依据是_________。
A. 参数个数
B. 参数类型
C. 函数类型
D. 函数名称
满分:2分
14.已知:f1(int)是类A的公有成员函数,函数p是指向成员函数f1()的指针,采用()是正确的。
A. p=f1
B. p=A::f1
C. p=A::f1()
D. p=f1()
满分:2分
15.对于全局函数 int f(void) ,与其完全等价的函数原型为____________。
A. int& f( );
B. int f(void ) const;
C. const int f( );
D. A、B、C都不是
满分:2分
16.设B类是由A类继承的。当创建一个B类的对象时,构造函数的调用顺序是( )
A. 先调用A类的构造函数,然后调用B类的构造函数
B. 先调用B类的构造函数,然后调用A类的构造函数
C. 不调用A类的构造函数
D. 视定义时A类和B类出现的位置
满分:2分
17.下列运算符中,( )运算符在C++中不能重载
A. &&
B. []
C. ::
D. new
满分:2分
18.下面关于new 和delete操作符的说法中,不正确的是( )
A. 使用new操作符,可以动态分配全局堆中的内存资源
B. 若p的类型已由A*强制转换为void *,那么执行语句delete p;时,类A的析构函数不会被调用
C. 实现全局函数时,new和delete通常成对地出现在由一对匹配的花括号限定的语句块中
D. 执行语句A * p=new A时,类A的构造函数只会被调用1次
满分:2分
19.如果变量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
满分:2分
20.
下列程序的运行结果为_________。
#include
      void print(double a)
      {
            cout<<++a;
      }
      void print(int a,int b)
      {
         cout<      }
      void main()
      {
          print(1.2);
          cout<<” ”;
          print(3,4);
      }
A. 1.2 34
B. 2.2 34
C. 1.2 43
D. 2.2 43
满分:2分
二、判断题(共20道试题,共40分。)
1.以面向IA-32处理器的VC++ 2008和gcc 4.2为准,float类型数据在内存中占4个字节,double型数据占8个字节,long double型数据占8个字节。( )
A. 错误
B. 正确
满分:2分
2.NULL是空指针值,它不指向任何地方。( )
A. 错误
B. 正确
满分:2分
3.函数的返回值也称函数值,返回的不是函数本身,而是一个值。( )
A. 错误
B. 正确
满分:2分
4.C++中,一个函数必须在函数声明后才能使用( )
A. 错误
B. 正确
满分:2分
5.若在类Base和派生类Derived中,分别声明一个同名的整型成员变量int x;,那么通过Derived类的实例对象,不可能输出基类Base中的变量x的值。
A. 错误
B. 正确
满分:2分
6.表达式8&3的结果是1。
A. 错误
B. 正确
满分:2分
7.私有成员只能被本类的成员函数访问,来自类外部的任何访问都是非法的。( )
A. 错误
B. 正确
满分:2分
8.对一个类中的数据成员的初始化可以通过构造函数中的初始化表实现,也可以通过构造函数中的函数体实现。
A. 错误
B. 正确
满分:2分
9.变量分为全局和局部两种,局部变量没有赋初值时,其值是确定的。
A. 错误
B. 正确
满分:2分
10.类的静态数据成员需要在定义每个类的对象时进行初始化。
A. 错误
B. 正确
满分:2分
11.C++程序的开发步骤通常要经过编辑、编译、连接、运行调试这样几个步骤。( )
A. 错误
B. 正确
满分:2分
12.面向对象的模型中,最基本的概念是对象和函数。
A. 错误
B. 正确
满分:2分
13.设有int w;,pw是与数组名w等价的数组指针,则pw应初始化为int (* pw)=w;
A. 错误
B. 正确
满分:2分
14.C++语言的参数传递机制包括传值和传地址两种,如果调用函数时,需要改变实参或者返回多个值,应该采取传地址方式。
A. 错误
B. 正确
满分:2分
15.每个cpp文件是单独编译的,但一个程序中多个cpp文件的编译顺序是不固定的。
A. 错误
B. 正确
满分:2分
16.typedef定义一个新的数据类型,在建立一个tepedef类型时同时分配内存空间( )
A. 错误
B. 正确
满分:2分
17.float和double类型的大小分别为4和8。
A. 错误
B. 正确
满分:2分
18.带extern的变量说明是变量声明,不是变量定义。( )
A. 错误
B. 正确
满分:2分
19.类是一种类型,它封装了数据和操作。
A. 错误
B. 正确
满分:2分
20.关键字friend用于声明友元。
A. 错误
B. 正确
满分:2分
三、多选题(共10道试题,共20分。)
1.对C++语言和C语言的兼容性,描述不正确的是______。
A. C++兼容C
B. C++部分兼容C
C. C++不兼容C
D. C兼容C++
满分:2分
2.函数调用可以______。
A. 出现在一个表达式中
B. 出现在执行语句中
C. 作为一个函数的实参
D. 作为一个函数的形参
满分:2分
3.下面描述中,表达正确的是______。
A. 公有继承时基类中的public成员在派生类中仍是public的
B. 公有继承时基类中的private成员在派生类中是public的
C. 公有继承时基类中的protected成员在派生类中仍是protected的
D. 私有继承时基类中的public成员在派生类中是private的
满分:2分
4.下列说法中错误的是______。
A. C++程序总是从第一个定义的函数开始执行
B. C++程序总是从main函数开始执行
C. C++函数必须有返回值,否则不能使用函数
D. C++程序中有调用关系的所有函数必须放在同一个程序文件中
满分:2分
5.下列哪种函数不可以是虚的______。
A. 自定义的构造函数
B. 拷贝构造函数
C. 静态成员函数
D. 析构函数
满分:2分
6.以下关于函数模板叙述错误的是______。
A. 函数模板也是一个具体类型的函数
B. 函数模板的类型参数与函数的参数是同一个概念
C. 通过使用不同的类型参数,函数模板可以生成不同类型的函数
D. 用函数模板定义的函数没有类型
满分:2分
7.以下不正确的描述是______。
A. 函数的定义可以嵌套,函数的调用不可以嵌套
B. 函数的定义不可以嵌套,函数的调用可以嵌套
C. 函数的定义和函数的调用均可以嵌套
D. 函数的定义和函数的调用均不可以嵌套
满分:2分
8.在下面的一维数组定义中,没有语法错误的是______。
A. int a[ ]={1,2,3}
B. int a={0}
C. int a[ ]
D. int a
满分:2分
9.C++语言的跳转语句中,对于break和continue说法不正确的是______。
A. break语句只应用于循环体中
B. continue语句只应用于循环体中
C. break是无条件跳转语句,continue不是
D. break和continue的跳转范围不够明确,容易产生问题
满分:2分
10.关于异常和C++提供的异常处理机制正确的说法是______。
A. 若程序员预见到程序中的异常,则一定可以通过修改程序代码来避免异常出现
B. 使用dynamic_cast操作符可能会产生异常
C. 异常可以用catch进行捕获处理
D. 异常可以是对象,也可以是普通整数
满分:2分
福师《C++语言程序设计》在线作业二
试卷总分:100   测试时间:--
一、单选题(共20道试题,共40分。)
1.C++程序源文件默认的扩展名是( )
A. cs
B. obj
C. cpp
D. exe
满分:2分
2.设void f1(int * m,long & n);int a;long b;则以下调用合法的是( )。
A. f1(a,b);
B. f1(&a,b);
C. f1(a,&b);
D. f1(&a,&b);
满分:2分
3.循环while(int i=0) i--;执行次数是( )。
A. 0
B. 1
C. 5
D. 无限
满分:2分
4.如果a=1,b=2,c=3,d=4,则条件表达式“a>ba:c<dc:d ” 的值为( )
A. 2
B. 3
C. 1
D. 4
满分:2分
5.在C++语言中,数据封装要解决的问题是_________。
A. 数据的规范化
B. 便于数据转换
C. 避免数据丢失
D. 防止不同模块之间数据的非法访问
满分:2分
6.C++语言中函数返回值的类型是由()决定的?
A. return语句中的表达式类型
B. 调用该函数的主调函数类型
C. 定义函数时所指定的函数类型
D. 以上说法都不正确
满分:2分
7.将小写字母n赋值给字符变量one_char,正确的操作是()。
A. one_char=‘\n’;
B. one_char=“n”;
C. one_char=110;
D. one_char=‘N’;
满分:2分
8.下列哪个是C++语言的有效标识符
A. _No1
B. No.1
C. 12345
D. int
满分:2分
9.设有数组定义:chararray[]=”China";,则数组array所占的空间为()。
A. 4个字节
B. 5个字节
C. 6个字节
D. 7个字节
满分:2分
10.在C++语言中,二维数组元素在内存中的存放顺序是( )
A. 按行存放
B. 按列存放
C. 由用户自己定义
D. 由编译器决定
满分:2分
11.下列运算符中,在C++语言中不能重载的是_________。
A. *
B. >=
C. ::
D. /
满分:2分
12.下面关于类的对象性质的描述,正确的是( )
A. 对象之间不可以相互赋值
B. 不可以说明指向对象的指针
C. 对象不能用作数组元素
D. 一个对象能用作另一个对象的成员
满分:2分
13.在下列运算符中,优先级最低的是( )
A. ||
B. !=
C. <
D. +
满分:2分
14.如果友元函数重载一个运算符时,其参数表中没有任何参数则说明该运算符是()。
A. 一元运算符
B. 二元运算符
C. 选项和选项
D. 都可能
E. 重载错误
满分:2分
15.在进行完任何C++流的操作后,都可以用C++流的有关成员函数检测流的状态;其中只能用于检测输入流状态的操作函数名称是()。
A. fail
B. eof
C. bad
D. good
满分:2分
16.如果变量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
满分:2分
17.以下哪个不是循环语句
A. while语句
B. do-while语句
C. for语句
D. if-else语句
满分:2分
18.关于异常和C++提供的异常处理机制。不正确的说法是( )
A. 若程序员预见到程序的异常,则一定可以通过修改程序代码来避免异常出现
B. 使用dyname cast操作符可能会发生异常
C. 异常可以用catch捕获处理
D. 异常可以是对象,也可以是普通函数
满分:2分
19.静态成员函数仅能访问( )
A. 静态的数据成员
B. 非静态的成员函数
C. 非静态的数据成员
D. 以上都不对
满分:2分
20.类TM和类TN是两个独立的类,那么类TM中哪种形式的数据成员一定是不允许的___________。
A. TM* a;
B. TN& a;
C. TM a;
D. TN a;
满分:2分
二、判断题(共20道试题,共40分。)
1.在基类定义的public和protected成员在保护继承的派生类中不可见。
A. 错误
B. 正确
满分:2分
2.指针在使用前可以不进行初始化( )
A. 错误
B. 正确
满分:2分
3.常量不能作为左值使用。
A. 错误
B. 正确
满分:2分
4.字符串’hello,world”在内存中存放时,占用11个字节的空间。
A. 错误
B. 正确
满分:2分
5.NULL与void *是不同的概念,NULL是一个指针值,任何类型的指针都可赋予该值。而void *是一种类型,是一种无任何类型的指针。( )
A. 错误
B. 正确
满分:2分
6.作为语句的函数调用是通过函数的副作用来体现的。
A. 错误
B. 正确
满分:2分
7.当将一个类S定义为另一个类A的友元类时,类S的所有成员函数都可以直接访问类A的所有成员。
A. 错误
B. 正确
满分:2分
8.在一个函数中,不允许定义与结构体类型的成员相同名的变量。( )
A. 错误
B. 正确
满分:2分
9.typedef没有实际地定义一个新的数据类型,在建立一个tepedef类型时没有分配内存空间( )
A. 错误
B. 正确
满分:2分
10.类是一种类型,它封装了数据和操作。
A. 错误
B. 正确
满分:2分
11.一个对象必属于某个类。
A. 错误
B. 正确
满分:2分
12.表达式8&3的结果是1。
A. 错误
B. 正确
满分:2分
13.假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是8。( )
A. 错误
B. 正确
满分:2分
14.系统可以提供默认的析构函数。( )
A. 错误
B. 正确
满分:2分
15.字符型变量用来存放字符常量,可以存放多个字符。( )
A. 错误
B. 正确
满分:2分
16.下面两个语句是等价的:charstr[]='hello,world';charstr='hello,world';
A. 错误
B. 正确
满分:2分
17.静态就是让变量和函数在生命的区域内成为私有。( )
A. 错误
B. 正确
满分:2分
18.对于全局函数int f(void),与其完全等价的函数原型为const int f( )。
A. 错误
B. 正确
满分:2分
19.C++语言中,标识符不区分大小写。( )
A. 错误
B. 正确
满分:2分
20.变量必须先定义,后使用。
A. 错误
B. 正确
满分:2分
三、多选题(共10道试题,共20分。)
1.下列说法中错误的是______。
A. C++程序总是从第一个定义的函数开始执行
B. C++程序总是从main函数开始执行
C. C++函数必须有返回值,否则不能使用函数
D. C++程序中有调用关系的所有函数必须放在同一个程序文件中
满分:2分
2.考虑函数原型void test(int a ,int b=7,char z=’*’),下面的函数调用中,属于合法调用的是______。
A. test(5)
B. test(5,8)
C. test(6,’#’)
D. test(0,0,’*’)
满分:2分
3.以下不正确的描述是______。
A. 函数的定义可以嵌套,函数的调用不可以嵌套
B. 函数的定义不可以嵌套,函数的调用可以嵌套
C. 函数的定义和函数的调用均可以嵌套
D. 函数的定义和函数的调用均不可以嵌套
满分:2分
4.下面关于指针变量和引用变量的说法正确的是______。
A. 指针变量存放的是内存地址,并且可以置为0
B. 定义引用变量时,必须同时指明具体被引用的对象或变量
C. 使用取地址操作符,可以取得指针变量自身的地址,但取不到引用变量自身的地址
D. 类中的数据成员可以是指针变量,但不能是引用变量
满分:2分
5.下面描述中,表达正确的是______。
A. 公有继承时基类中的public成员在派生类中仍是public的
B. 公有继承时基类中的private成员在派生类中是public的
C. 公有继承时基类中的protected成员在派生类中仍是protected的
D. 私有继承时基类中的public成员在派生类中是private的
满分:2分
6.下面哪些保留字可以作为函数的返回类型______。
A. void
B. int
C. new
D. long
满分:2分
7.对C++语言和C语言的兼容性,描述不正确的是______。
A. C++兼容C
B. C++部分兼容C
C. C++不兼容C
D. C兼容C++
满分:2分
8.下列哪些是类的特性______。
A. 多态性
B. 继承性
C. 封装性
D. 虚拟性
满分:2分
9.关于函数重载,下列描述错误的是______。
A. 函数重载是指两个或两个以上的函数取相同的函数名,但形参的个数或类型不同
B. 函数重载是指两个以上的函数取相同的名字和具有相同的参数个数,但形参的类型可以不同
C. 函数重载是指两个以上的函数名字不同,但形参的个数或类型相同
D. 函数重载是指两个以上的函数取相同的函数名,并且函数的返回类型相同
满分:2分
10.函数调用可以______。
A. 出现在一个表达式中
B. 出现在执行语句中
C. 作为一个函数的实参
D. 作为一个函数的形参
满分:2分


答案请在附件下载,需要辅导请联系客服qq 761296021

页: [1]
查看完整版本: 福师14秋《C++语言程序设计》在线作业答案