12秋四川大学《面向对象程序设计2261》第1次作业
《面向对象程序设计》第1次作业
试卷总分:100
单选题
多选题
判断题
一、单选题(共 30 道试题,共 60 分。)
V
1. 判断一个ofstream类对象file打开文件是否失败,应该判断()
A. 创建文件流对象时是否抛出异常
B. open成员函数的返回值
C. feof成员函数的返回值
D. !file是否为真
此题选: D 满分:2 分
2. 二进制数00001001跟01000011异或的结果为()
A. 01001011
B. 00000001
C. 01001010
D. 01001100
满分:2 分
3. C++泛型编程通过()实现
A. void
B. template
C. NULL
D. typedef
满分:2 分
4. 十进制数127转换成二进制数是()
A. 11111111
B. 01111111
C. 10000000
D. 11111110
满分:2 分
5. 下列语句分别是不同程序中的第一个输入输出语句,若去掉其中的“ left”,输出效果将发生变化的是()
A. cout left setfill(~*~) 357;
B. cout left setw(5) 357;
C. cout left setw(5) "ABCDE";
D. cout left "ABCDE";
满分:2 分
6. 有如下类定义: class MyClass{ int value; public: MyClass(int n): value (n) {} int gerValue()const{ return value;} }; 则类 MyClass 的构造函数的个数是 ( )
A. 1个
B. 2个
C. 3个
D. 4个
满分:2 分
7. 链表的基本单元是()
A. 节点
B. 头指针
C. 尾指针
D. 数据域
满分:2 分
8. 函数的形参是()
A. 全局变量
B. 局部变量
C. 静态变量
D. 部变量
满分:2 分
9. 下列有关抽象类和纯虚函数的叙述中,错误的是()
A. 拥有纯虚函数的类是抽象类,不能用来定义对象
B. 抽象类的派生类若不实现纯虚函数,它也是抽象类
C. 纯虚函数的声明以“=0;”结束
D. 纯虚函数都不能有函数体
此题选: D 满分:2 分
10. C++异常处理机制中没有()
A. try
B. throw
C. catch
D. finally
此题选: D 满分:2 分
11. 若有说明:int*p1,*p2,m=5,n;以下均是正确赋值语句的是()
A. p1= m,p2= p1
B. p1= m;p2= n;*p1=*p2
C. p1= m;p1=p2
D. p1= m;*p2=*p1
满分:2 分
12. 两个指针变量不可以()
A. 相加
B. 比较
C. 相减
D. 指向同一地址
满分:2 分
13. 若有定义:intaa[8];则以下表达式中不能代表数组元aa[1]的地址的是()
A. aa[0]+1
B. aa[1]
C. aa[0]++
D. aa+1
满分:2 分
14. 下面是一个模板声明的开始部分: templute typename T double __ 由此可知 ( )
A. 这可能是一个函数模板的声明
B. 这可能是一个类模板的声明
C. 这既可能是一个函数模板的声明,也可能是一个类模板的声明
D. 这肯定是一个错误的模板声明
满分:2 分
15. 数组名作为实参传递给形参时,数组名被处理为该数组的()
A. 长度
B. 元素个数
C. 首地址
D. 各元素的值
满分:2 分
16. 二叉查找树按()遍历时访问到节点的数据是排好序的
A. 前序
B. 中序
C. 后序
D. 层次
满分:2 分
17. 一个类如果没有定义任何函数,编译器不会自动为这个类产生()
A. 拷贝构造函数
B. 无参构造函数
C. 输出流运算符
D. 赋值运算符
满分:2 分
18. 下面函数调用语句含有实参的个数为: ( ) func((exp1,exp2),(exp3,exp4,exp5))
A. 1
B. 2
C. 4
D. 5
满分:2 分
19. private访问属性限制对象的成员可以在()中访问
A. 本类的成员函数
B. main函数
C. 父类的成员函数
D. 子类的成员函数
满分:2 分
20. 若已定义inta=5;下面对(1),(2)两个语句正确理解的是()(1)int*p= a;(2)*p=a;
A. (1)(2)中的*P含义相同,都表示给指针变量P附值
B. (1)(2)的执行结果都是把变量a的地址值赋给指针变量P
C. (1)在对P进行说明的同时进行初始化,使P指向a,(2)将变量a的值赋给指针变量P
D. (1)在对P进行说明的同时进行初始化,使P指向a,(2)将变量a的值赋给*P
此题选: D 满分:2 分
21. 有如下类定义: class Point{ private; static int how_many; }; ___________ how_many=0; 要初始化 Point 类的静态成员 how_many,下划线处应填入的内容是
A. ing
B. staticint
C. intPoint::
D. staticintPoint::
此题选: D 满分:2 分
22. 程序运行中需要从键盘上输入多于一个数据时,各数据之间应该使用()符号作为分隔符
A. 空格或逗号
B. 逗号或回车
C. 逗号或分号
D. 空格或回车
此题选: D 满分:2 分
23. 以下不能正确进行字符串赋初值的语句是()
A. charstr[5]="good!";
B. charstr[]="good!";
C. char*str="good!";
D. charstr[5]={‘g,‘o,‘o,‘d};
满分:2 分
24. 有如下定义: int a[5]={1,3,5,7,9},*p=a; 下列表达式中不能得到数值 5 的是 ( )
A. a[2]
B. a[3]
C. *(p+2)
D. *p+4
满分:2 分
25. 假定a为一个短整型(shortint)数组名,则元素a[8]的地址为()
A. a+4
B. a+8
C. a+16
D. a+32
满分:2 分
26. 用cin为整型变量输入数据时,如果从键盘输入的不是数字,输入后整型变量中的结果会是:()
A. 0
B. 负数
C. 正数
D. 不确定
此题选: D 满分:2 分
27. 有如下类和对象的定义: class Constants{ public: static double getPI(){return 3.1416;} }; Constants constants; 下列各组语句中,能输出 3.1416 的是 ( )
A. cout constants- getPI();和cout Constants::gerPI();
B. cout constants.getPI();和cout Constants.getPI();
C. cout constants- getPI();和cout Constants- getPI();
D. cout constants.getPI();和cout Constants::getPI();
此题选: D 满分:2 分
28. 下列哪个是C++语言的有效标识符?()
A. _No1
B. No、1
C. 12345
D. int
满分:2 分
29. 多重继承时,如果派生类的两个父类有一个共同的虚基类,那么虚基类的初始化参数由()的构造函数来传递
A. 第一个父类
B. 第二个父类
C. 派生类
D. 以上都不是
满分:2 分
30. 当需要使用istrstream流类定义一个流类对象并联系一个字符串时,应在文件开始使用#include命令,使之包含()文件
A. iostream、h
B. iomanip、h
C. fstream、h
D. ststreh
满分:2 分
《面向对象程序设计》第1次作业
试卷总分:100
单选题
多选题
判断题
二、多选题(共 5 道试题,共 20 分。)
V
1. 模板定义中的类型参数可以用作()
A. 局部变量类型
B. 函数参数类型
C. 函数返回值类型
D. 数据成员类型
满分:4 分
2. for语句的格式为for(表达式1;表达式2;表达式3),其中可以省略的是()
A. 两个分号
B. 表达式1
C. 表达式2
D. 表达式3
满分:4 分
3. 设有定义语句: int x[6]={2,4,6,8,5,7},*p=x,i; 要求依次输出x数组6个元素中的值,下列选项中能完成次操作的语句有_( )、
A. for(i=0;i 6;i++)printf(“%2d”,*(p++));
B. for(i=0;i 6;i++)printf(“%2d”,*(p+i));
C. for(i=0;i 6;i++)printf(“%2d”,*p++);
D. for(i=0;i 6;i++)printf(“%2d”,(*p)++);
满分:4 分
4. 类成员的访问属性可以是()
A. public
B. protected
C. private
D. default
满分:4 分
5. C++中变量要求()
A. 有明确的类型
B. 先声明后使用
C. 名字中不能使用下划线
D. 严格区分大小写
满分:4 分
《面向对象程序设计》第1次作业
试卷总分:100
单选题
多选题
判断题
三、判断题(共 5 道试题,共 20 分。)
V
1. 字符串"ab/ "在机器中占6个字节。()
A. 错误
B. 正确
满分:4 分
2. C++语言是从早期的C语言逐渐发展演变而来的,与C语言相比,它在求解问题方法上进行的最大改进是面向过程。()
A. 错误
B. 正确
满分:4 分
3. 结构化程序设计的基本方法是递归法。()
A. 错误
B. 正确
满分:4 分
4. 1.234e0为C++语言合法常量。()
A. 错误
B. 正确
满分:4 分
5. 逻辑运算符两侧运算对象的数据类型只能是0或1。()
A. 错误
B. 正确
满分:4 分
试卷总分:100
单选题
多选题
判断题
一、单选题(共 30 道试题,共 60 分。)
V
1. 判断一个ofstream类对象file打开文件是否失败,应该判断()
A. 创建文件流对象时是否抛出异常
B. open成员函数的返回值
C. feof成员函数的返回值
D. !file是否为真
此题选: D 满分:2 分
2. 二进制数00001001跟01000011异或的结果为()
A. 01001011
B. 00000001
C. 01001010
D. 01001100
满分:2 分
3. C++泛型编程通过()实现
A. void
B. template
C. NULL
D. typedef
满分:2 分
4. 十进制数127转换成二进制数是()
A. 11111111
B. 01111111
C. 10000000
D. 11111110
满分:2 分
5. 下列语句分别是不同程序中的第一个输入输出语句,若去掉其中的“ left”,输出效果将发生变化的是()
A. cout left setfill(~*~) 357;
B. cout left setw(5) 357;
C. cout left setw(5) "ABCDE";
D. cout left "ABCDE";
满分:2 分
6. 有如下类定义: class MyClass{ int value; public: MyClass(int n): value (n) {} int gerValue()const{ return value;} }; 则类 MyClass 的构造函数的个数是 ( )
A. 1个
B. 2个
C. 3个
D. 4个
满分:2 分
7. 链表的基本单元是()
A. 节点
B. 头指针
C. 尾指针
D. 数据域
满分:2 分
8. 函数的形参是()
A. 全局变量
B. 局部变量
C. 静态变量
D. 部变量
满分:2 分
9. 下列有关抽象类和纯虚函数的叙述中,错误的是()
A. 拥有纯虚函数的类是抽象类,不能用来定义对象
B. 抽象类的派生类若不实现纯虚函数,它也是抽象类
C. 纯虚函数的声明以“=0;”结束
D. 纯虚函数都不能有函数体
此题选: D 满分:2 分
10. C++异常处理机制中没有()
A. try
B. throw
C. catch
D. finally
此题选: D 满分:2 分
11. 若有说明:int*p1,*p2,m=5,n;以下均是正确赋值语句的是()
A. p1= m,p2= p1
B. p1= m;p2= n;*p1=*p2
C. p1= m;p1=p2
D. p1= m;*p2=*p1
满分:2 分
12. 两个指针变量不可以()
A. 相加
B. 比较
C. 相减
D. 指向同一地址
满分:2 分
13. 若有定义:intaa[8];则以下表达式中不能代表数组元aa[1]的地址的是()
A. aa[0]+1
B. aa[1]
C. aa[0]++
D. aa+1
满分:2 分
14. 下面是一个模板声明的开始部分: templute typename T double __ 由此可知 ( )
A. 这可能是一个函数模板的声明
B. 这可能是一个类模板的声明
C. 这既可能是一个函数模板的声明,也可能是一个类模板的声明
D. 这肯定是一个错误的模板声明
满分:2 分
15. 数组名作为实参传递给形参时,数组名被处理为该数组的()
A. 长度
B. 元素个数
C. 首地址
D. 各元素的值
满分:2 分
16. 二叉查找树按()遍历时访问到节点的数据是排好序的
A. 前序
B. 中序
C. 后序
D. 层次
满分:2 分
17. 一个类如果没有定义任何函数,编译器不会自动为这个类产生()
A. 拷贝构造函数
B. 无参构造函数
C. 输出流运算符
D. 赋值运算符
满分:2 分
18. 下面函数调用语句含有实参的个数为: ( ) func((exp1,exp2),(exp3,exp4,exp5))
A. 1
B. 2
C. 4
D. 5
满分:2 分
19. private访问属性限制对象的成员可以在()中访问
A. 本类的成员函数
B. main函数
C. 父类的成员函数
D. 子类的成员函数
满分:2 分
20. 若已定义inta=5;下面对(1),(2)两个语句正确理解的是()(1)int*p= a;(2)*p=a;
A. (1)(2)中的*P含义相同,都表示给指针变量P附值
B. (1)(2)的执行结果都是把变量a的地址值赋给指针变量P
C. (1)在对P进行说明的同时进行初始化,使P指向a,(2)将变量a的值赋给指针变量P
D. (1)在对P进行说明的同时进行初始化,使P指向a,(2)将变量a的值赋给*P
此题选: D 满分:2 分
21. 有如下类定义: class Point{ private; static int how_many; }; ___________ how_many=0; 要初始化 Point 类的静态成员 how_many,下划线处应填入的内容是
A. ing
B. staticint
C. intPoint::
D. staticintPoint::
此题选: D 满分:2 分
22. 程序运行中需要从键盘上输入多于一个数据时,各数据之间应该使用()符号作为分隔符
A. 空格或逗号
B. 逗号或回车
C. 逗号或分号
D. 空格或回车
此题选: D 满分:2 分
23. 以下不能正确进行字符串赋初值的语句是()
A. charstr[5]="good!";
B. charstr[]="good!";
C. char*str="good!";
D. charstr[5]={‘g,‘o,‘o,‘d};
满分:2 分
24. 有如下定义: int a[5]={1,3,5,7,9},*p=a; 下列表达式中不能得到数值 5 的是 ( )
A. a[2]
B. a[3]
C. *(p+2)
D. *p+4
满分:2 分
25. 假定a为一个短整型(shortint)数组名,则元素a[8]的地址为()
A. a+4
B. a+8
C. a+16
D. a+32
满分:2 分
26. 用cin为整型变量输入数据时,如果从键盘输入的不是数字,输入后整型变量中的结果会是:()
A. 0
B. 负数
C. 正数
D. 不确定
此题选: D 满分:2 分
27. 有如下类和对象的定义: class Constants{ public: static double getPI(){return 3.1416;} }; Constants constants; 下列各组语句中,能输出 3.1416 的是 ( )
A. cout constants- getPI();和cout Constants::gerPI();
B. cout constants.getPI();和cout Constants.getPI();
C. cout constants- getPI();和cout Constants- getPI();
D. cout constants.getPI();和cout Constants::getPI();
此题选: D 满分:2 分
28. 下列哪个是C++语言的有效标识符?()
A. _No1
B. No、1
C. 12345
D. int
满分:2 分
29. 多重继承时,如果派生类的两个父类有一个共同的虚基类,那么虚基类的初始化参数由()的构造函数来传递
A. 第一个父类
B. 第二个父类
C. 派生类
D. 以上都不是
满分:2 分
30. 当需要使用istrstream流类定义一个流类对象并联系一个字符串时,应在文件开始使用#include命令,使之包含()文件
A. iostream、h
B. iomanip、h
C. fstream、h
D. ststreh
满分:2 分
《面向对象程序设计》第1次作业
试卷总分:100
单选题
多选题
判断题
二、多选题(共 5 道试题,共 20 分。)
V
1. 模板定义中的类型参数可以用作()
A. 局部变量类型
B. 函数参数类型
C. 函数返回值类型
D. 数据成员类型
满分:4 分
2. for语句的格式为for(表达式1;表达式2;表达式3),其中可以省略的是()
A. 两个分号
B. 表达式1
C. 表达式2
D. 表达式3
满分:4 分
3. 设有定义语句: int x[6]={2,4,6,8,5,7},*p=x,i; 要求依次输出x数组6个元素中的值,下列选项中能完成次操作的语句有_( )、
A. for(i=0;i 6;i++)printf(“%2d”,*(p++));
B. for(i=0;i 6;i++)printf(“%2d”,*(p+i));
C. for(i=0;i 6;i++)printf(“%2d”,*p++);
D. for(i=0;i 6;i++)printf(“%2d”,(*p)++);
满分:4 分
4. 类成员的访问属性可以是()
A. public
B. protected
C. private
D. default
满分:4 分
5. C++中变量要求()
A. 有明确的类型
B. 先声明后使用
C. 名字中不能使用下划线
D. 严格区分大小写
满分:4 分
《面向对象程序设计》第1次作业
试卷总分:100
单选题
多选题
判断题
三、判断题(共 5 道试题,共 20 分。)
V
1. 字符串"ab/ "在机器中占6个字节。()
A. 错误
B. 正确
满分:4 分
2. C++语言是从早期的C语言逐渐发展演变而来的,与C语言相比,它在求解问题方法上进行的最大改进是面向过程。()
A. 错误
B. 正确
满分:4 分
3. 结构化程序设计的基本方法是递归法。()
A. 错误
B. 正确
满分:4 分
4. 1.234e0为C++语言合法常量。()
A. 错误
B. 正确
满分:4 分
5. 逻辑运算符两侧运算对象的数据类型只能是0或1。()
A. 错误
B. 正确
满分:4 分
版权声明
声明:有的资源均来自网络转载,版权归原作者所有,如有侵犯到您的权益
请联系本站我们将配合处理!