奥鹏17春16秋华师《面向对象程序设计》在线作业
一、单选题(共 20 道试题,共 40 分。)
1.  将两个字符串连接起来组成一个字符串时,选用( )函数。
A. strlen()
B. strcap()
C. strcat()
D. strcmp()
正确答案:
2.  定有定义“int b[10]; int *pb;”,则不正确的赋值语句为( )。
A. pb=b;
B. pb=&b[0];
C. *pb=new int;
D. pb=b[5];
正确答案:
3.  C++中函数返回值的类型是由( )决定的。
A. return语句中表达式的类型
B. 该函数定义时的类型
C. 调用函数时的调用语句
D. 系统根据结果
正确答案:
4.  C++语言提供的预处理语句有3种,下面不属于预处理语句的是( )。
A. 宏定义预处理
B. 文件预处理
C. 条件编译预处理
D. 中止预处理
正确答案:
5.  假定一个二维数组的定义语句为“int a[3][4]={{3,4},{2,8,6}};”,则元素a[2][1]的值为( )。
A. 0
B. 4
C. 8
D. 6
正确答案:
6. 
字符串转数组在线
A. n/2
B. n/2+1
C. n/2-1
D. n-1
正确答案:
7.  函数重载是指( )。
A. 两个或两个以上的函数取相同的函数名,但形参的个数或类型不同
B. 两个以上的函数取相同的名字和具有相同的参数个数,但形参的类型可以不同
C. 两个以上的函数名字不同,但形参的个数或类型相同
D. 两个以上的函数取相同的函数名,并且函数的返回类型相同
正确答案:
8.  能作为C++程序的基本单位是()。
A. 字符
B. 语句
C. 函数
D. 源程序文件
正确答案:
9.  以下叙述中正确的是( )。
A. 使用#define可以为常量定义一个名字,该名字在程序中可以再赋另外的值
B. 使用const定义的常量名有类型之分,其值在程序运行时是不可改变的
C. 在程序中使用内联函数使程序的可读性变差
D. 在定义函数时可以在形参表的任何位置给出缺省形参值
正确答案:
10.  设”int a=15,b=26;”,则”cout<<(a,b);”的输出结果是( )。
A. 15
B. 26,15
C. 15,26
D. 26
正确答案:
11.  下列if语句的条件为真的是( )。
A. if(0)
B. if(3)
C. bool bFlag=true;if(!bFlag)
D. if(a)
正确答案:
12.  假定p是具有double类型的指针变量,则表达式++p使p的值(以字节为单位)增加( )。
A. 1
B. 4
C. sizeof(double)
D. sizeof(p)
正确答案:
13.  x>0 || y==5的相反表达式为____。
A. x<=0 || y!=5
B. x<=0 && y!=5
C. x>0 || y!=5
D. x>0 && y==5
正确答案:
14.  在下面循环语句中内层循环体S语句的执行总次数为____。 for(int i=0; iq.Type = "1"; q.ObjectID[q.ObjectID.length] = "rdo_b7be34de-9cba-47f0-8a35-e890c607a05b_Response" q.Response[q.Response.length] = "Response"; q.Answer[q.Answer.length] = "";
A. n^2 (n平方)
B. (n+1)/2
C. n(n-1)/2
D. n(n+1)/2
正确答案:
15.  C++程序中主函数的名字为____。
A. main
B. MAIN
C. Main
D. 任意标识符
正确答案:
16.  从键盘的输入中读入一个值,并赋值给x的语句是( )。
A. cin>>x
B. cin<<x
C. cout>>x
D. cout<<x
正确答案:
17.  从键盘上输入数据的时候,只有在输入完数据并按下( )后,系统才把该行数据存入缓冲区。
A. 空格
B. 回车
C. Tab
D. 空格或回车
正确答案:
18.  若定义了函数 double *function(), 则函数function的返回值为( )。
A. 实数型
B. 实数的地址
C. 指向函数的指针
D. 函数的地址
正确答案:
19.  在下面循环语句中循环体执行的次数为____。 int i=0; do i++; while(i*i<10);
A. 4
B. 3
C. 5
D. 2
正确答案:
20.  为了提高程序的运行速度,可将不太复杂的功能用函数实现,此函数应选择( )。
A. 内联函数
B. 重载函数
C. 递归函数
D. 函数模板
正确答案:
华师《面向对象程序设计》在线作业
二、多选题(共 15 道试题,共 30 分。)
1.  C++语言中,下面的描述不正确的是()。
A. do-while语句构成的循环,当while语句中的表达式值为非零时结束循环
B. do-while语句构成的循环必须用break语句才能退出
C. 不能使用do-while语句构成的循环
D. do-while语句构成的循环,当while语句中的表达式值为零时结束循
正确答案:
2.  关于局部变量,下面说法错误的是()。
A. 定义该变量的程序文件中的函数都可以访问
B. 定义该变量的函数中的定义处以下的任何语句都可以访问
C. 定义该变量的复合语句中的定义处以下的任何语句都可以访问
D. 定义该变量的函数中的定义处以上的任何语句都可以访问
正确答案:
3.  下面的表达式中值为0的()。
A. 3/5
B. 5>>3
C. !3
D. 5%3
正确答案:
4.  下列说法中正确的是()。
A. 在一个函数中,可以有多条return语句
B. 函数的定义不能嵌套,但函数的调用可以嵌套
C. 函数必须有返回值
D. 即使在不同的函数中,也不可以使用相同名字的变量
正确答案:
5.  关于void指针,下列说法错误的是()。
A. void指针就是未指向任何数据的指针
B. void指针就是已定义而未初始化的指针
C. 指向任何类型数据的指针可直接赋值给一个void指针
D. void指针值可直接赋给一个非void指针
正确答案:
6.  在C++语言中,不合法的字符常量是()。
A. \x43'
B. 'ab'
C. '\084'
D. "\0"
正确答案:
7.  关于派生类的说法不正确的是()。
A. 派生类可显现基类的任何函数成员
B. 派生类可重载已有的函数成员
C. 派生类可以拥有自己的新成员
D. 派生类无法给基类的数据成员初始化
正确答案:
8.  关于封装,下列说法中正确的是()。
A. 通过封装,对象的全部属性和操作结合在一起,形成一个整体
B. 通过封装,一个对象的实现细节被尽可能地隐藏起来(不可见)
C. 通过封装,每个对象都成为相对独立的实体
D. 通过封装,对象的属性都是不可见的
正确答案:
9.  请选出不合法的C++语言赋值语。
A. i++;
B. a=a mod b
C. a=/b;
D. k=int(a+b);
正确答案:
10.  关于函数重载,下列描述错误的是()。
A. 函数重载是指两个或两个以上的函数取相同的函数名,但形参的个数或类型不同
B. 函数重载是指两个以上的函数取相同的名字和具有相同的参数个数,但形参的类型可以不同
C. 函数重载是指两个以上的函数名字不同,但形参的个数或类型相同
D. 函数重载是指两个以上的函数取相同的函数名,并且函数的返回类型相同
正确答案:
11.  类A中有唯一的一个公有成员函数f,对于类A的一个对象a,执行语句f(100);成功,那么f的函数原型可以为()。
A. A &f(int,int=50);
B. void f(int&)const;
C. const A *f(const int);
D. A f(const int&)const;
正确答案:
12.  关于类中重载赋值运算符,正确的说法是()。
A. 由编译器提供的缺省赋值函数具有public访问性并且执行按位赋值
B. 在重载派生类的赋值操作时,不但要实现派生类中数据成员的赋值,还要负责基类中数据成员的赋值
C. 只有在类中含有指针数据成员或引用数据成员时,才需要重载类的赋值操作
D. 通过修改类A的声明或定义,可以禁止用户在类A对象间进行任何赋值操作
正确答案:
13.  下列()是C++的函数声明。
A. float result( );
B. float result(float, float);
C. float result(float x, float y) { ? }
D. float result(x, y);
正确答案:
14.  下列对引用的陈述中正确的是()。
A. 每一个引用都是其所引用对象的别名,因此必须初始化
B. 形式上针对引用的操作实际上作用于它所引用的对象
C. 一旦定义了引用,一切针对其所引用对象的操作只能通过该引用间接进行
D. 不需要单独为引用分配存储空间
正确答案:
15.  下面关于指针变量和引用变量的说法正确的是()。
A. 指针变量存放的是内存地址,并且可以置为0
B. 定义引用变量时,必须同时指明具体被引用的对象或变量
C. 使用取地址操作符,可以取得指针变量自身的地址,但取不到引用变量自身的地址
D. 类中的数据成员可以是指针变量,但不能是引用变量
正确答案:
华师《面向对象程序设计》在线作业
三、判断题(共 15 道试题,共 30 分。)
1.  C++语言中,用来为对象初始化的特殊成员函数称为构造函数;用于在对象撤销时执行一些清理任务的特殊成员函数称为析构函数。
A. 错误
B. 正确
正确答案:
2.  编译C++源程序时,出现了警告错(Warning)也可以生成可执行文件。
A. 错误
B. 正确
正确答案:
3.  在C++语言中,非保值转换应用强制类型转换。
A. 错误
B. 正确
正确答案:
4.  字符串’hello,world”在内存中存放时,占用11个字节的空间。
A. 错误
B. 正确

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。