找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1175|回复: 0

[在线作业] 川大《面向对象程序设计2261》17秋在线作业12资料

[复制链接]
发表于 2017-11-6 16:08:15 | 显示全部楼层 |阅读模式
《面向对象程序设计2261》17秋在线作业1
一、单选题:
1.如果定义了一个类myclass,则为myclass类对象以成员函数形式重载后++运算符的声明应该为()          (满分:2)
    A.myclassoperator++();    B.myclass& operator++();
    C.myclassoperator++(int);    D.myclass& operator++(int);
2.链表的基本单元是()          (满分:2)
    A.节点
    B.头指针
    C.尾指针
    D.数据域
3.下面函数调用语句含有实参的个数为: (   )\\nfunc((exp1,exp2),(exp3,exp4,exp5))          (满分:2)
    A.1
    B.2
    C.4
    D.5
4.已知函数 f 的原型是 void f(int *a, long & b);,变量 v1、v2 的定义是:\\nint v1; loong v2;\\n下列调用语句中正确的是 (   )          (满分:2)
    A.f(v1,&v2)
    B.f(v1,v2)
    C.f(&v1,&v2)
    D.f(&v1,v2)
5.如果myclass类定义了拷贝构造函数和一个整型参数的构造函数,还重载了赋值运算符,那么语句myclassobj=100;会( )          (满分:2)
    A.调用拷贝构造函数
    B.调用整型参数的构造函数
    C.调用赋值运算符
    D.引起编译错误
6.十进制数127转换成二进制数是()          (满分:2)
    A.11111111
    B.01111111
    C.10000000
    D.11111110
7.两个指针变量不可以()          (满分:2)
    A.相加
    B.比较
    C.相减
    D.指向同一地址
8.private访问属性限制对象的成员可以在()中访问          (满分:2)
    A.本类的成员函数
    B.main函数
    C.父类的成员函数
    D.子类的成员函数
9.如果短整型的长度是2字节,有一个短整型指针p的值是0xFFED1200,那么p+1的值为()          (满分:2)
    A.0xFFED1201
    B.0xFFED1202
    C.0xFFED1203
    D.0xFFED1204
10.在下列关键字中,不能用来表示继承方式的是()          (满分:2)
    A.private
    B.static
    C.public
    D.protected
11.数组名表示的是数组的()          (满分:2)
    A.类型
    B.用途
    C.地址
    D.长度
12.有如下类和对象的定义:\\nclass Constants{\\npublic: \\nstatic double getPI(){return 3.1416;}\\n};\\nConstants constants;\\n下列各组语句中,能输出 3.1416 的是     (   )          (满分:2)
    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();
13.二叉查找树按()遍历时访问到节点的数据是排好序的          (满分:2)
    A.前序
    B.中序
    C.后序
    D.层次
14.以下对二维数组a的正确说明是:()          (满分:2)
    A.inta[3][];
    B.floata(3,4);
    C.doublea[1][4];
    D.floata(3)(4);
15.下面的选项中正确的赋值语句是(chara[5],*p=a;)()          (满分:2)
    A.p=“abcd”;
    B.a=“abcd”;
    C.*p=“abcd”;D*a=“abcd”;
16.有如下类定义:\\nclass Point{\\nprivate;\\nstatic int how_many;\\n};\\n___________ how_many=0; \\n要初始化 Point 类的静态成员 how_many,下划线处应填入的内容是          (满分:2)
    A.ing
    B.staticint
    C.intPoint::
    D.staticintPoint::
17.若已定义inta=5;下面对(1),(2)两个语句正确理解的是()(1)int*p=&a;(2)*p=a;          (满分:2)
    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
18.要打开一个文件并从中读取数据,应该使用()类的对象          (满分:2)
    A.istream
    B.ostream
    C.ifstream
    D.ofstream
19.判断一个ofstream类对象file打开文件是否失败,应该判断()          (满分:2)
    A.创建文件流对象时是否抛出异常
    B.open成员函数的返回值
    C.feof成员函数的返回值
    D.!file是否为真
20.C++异常处理机制中没有()          (满分:2)
    A.try
    B.throw
    C.catch
    D.finally
21.在每个C++程序中都必须包含有这样一个函数,该函数的名称为()          (满分:2)
    A.main
    B.MAIN
    C.name
    D.function
22.若有说明:int*p1,*p2,m=5,n;以下均是正确赋值语句的是()          (满分:2)
    A.p1=&m,p2=&p1
    B.p1=&m;p2=&n;*p1=*p2
    C.p1=&m;p1=p2
    D.p1=&m;*p2=*p1
23.C++泛型编程通过()实现          (满分:2)
    A.void
    B.template
    C.NULL
    D.typedef
24.在定义inta[3][4][2];后,第10个元素是()          (满分:2)
    A.a[2][1][2]
    B.a[1][0][1]
    C.a[2][0][1]
    D.a[2][2][1]
25.已知Value是一个类,Value是Value的一个对象。下列以非成员函数形式重载的运算符函数原形中,正确的是()          (满分:2)
    A.Valueoperator+(Valuev,inti);
    B.Valueoperator+(Valuev=value,inti);
    C.Valueoperator+(Valuevinti=0);
    D.Valueoperator+(Valuev=value,inti=0);
26.若k为整形,则while循环执行(   )次。 \\nk=2; while(k==0) printf(“%d”,k); k--; printf(“\\\\n”);          (满分:2)
    A.10
    B.9
    C.0
    D.1
27.函数的形参是()          (满分:2)
    A.全局变量
    B.局部变量
    C.静态变量
    D.部变量
28.设有定义intx;floatv;,则10+x+v值的数据类型是()          (满分:2)
    A.int
    B.double
    C.float
    D.不确定
29.抽象类指的是()          (满分:2)
    A.没有任何成员的类
    B.只有成员函数没有数据成员的类
    C.有虚函数的类
    D.有纯虚函数的类
30.执行语句\\nchar ch[] = \\\Hello\\\;\\nchar * p = &ch[0];\\ncout<<*p \\n结果是输出 (   )。          (满分:2)
    A.一个地址
    B.H
    C.Hello
    D.乱码
二、多选题:
31.C++中变量要求()          (满分:4)
    A.有明确的类型
    B.先声明后使用
    C.名字中不能使用下划线
    D.严格区分大小写
32.两个同名函数构成重载关系,只要()不同          (满分:4)
    A.返回类型
    B.参数个数
    C.参数类型
    D.函数头后有无const
33.设有定义语句: int x[6]={2,4,6,8,5,7},*p=x,i; \\n要求依次输出x数组6个元素中的值,下列选项中能完成次操作的语句有_(        )、          (满分:4)
    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)++);
34.面向对象的编程方法的主要特征包括()          (满分:4)
    A.封装
    B.继承
    C.多态
    D.消息
35.模板定义中的类型参数可以用作()          (满分:4)
    A.局部变量类型
    B.函数参数类型
    C.函数返回值类型
    D.数据成员类型
三、判断题:
36.字符串\\\ab\\\\\\\\\\\\n\\\在机器中占6个字节。()          (满分:4)
    A.错误
    B.正确
37.1.234e0为C++语言合法常量。()          (满分:4)
    A.错误
    B.正确
38._int可以定义为用户标识符。()          (满分:4)
    A.错误
    B.正确
39.C++语言的跳转语句中,break语句只应用于循环体中。()          (满分:4)
    A.错误
    B.正确
40.宏名必须用大写字母表示。()          (满分:4)
    A.错误
    B.正确
《面向对象程序设计2261》17秋在线作业2

一、单选题:
1.多态性是通过()实现的          (满分:2)
    A.构造函数
    B.析构函数
    C.虚函数
    D.函数重载
2.执行语句\\nchar ch[] = \\\Hello\\\;\\nchar * p = &ch[0];\\ncout<<*p \\n结果是输出 (   )。          (满分:2)
    A.一个地址
    B.H
    C.Hello
    D.乱码
3.如果在try块中用throw\\\error\\\;语句抛出一个异常,则参数类型是()的catch块能够捕获这个异常。          (满分:2)
    A.char*
    B.constchar*
    C.Char
    D.constchar
4.在下列关键字中,不能用来表示继承方式的是()          (满分:2)
    A.private
    B.static
    C.public
    D.protected
5.有如下 4 个语句:\\n① cout<<~A~<<setfill(~*~)<<left<<setw(7)<<~B~<<endl;\\n② cout<<setfill(~*~)<<left<<setw(7)<<~A~<<~B~<<endl;\\n③ cout<<~A~<<serfill(~*~)<<right<<setw(7)<<~B~<<endl;\\n④ cout<<setfill(~*~)<<right<<setw(7)<<~A~<<~B~<<endl;\\n其中能显示 A******B 的是          (满分:2)
    A.①和③
    B.①和④
    C.②和③
    D.②和④
6.在每个C++程序中都必须包含有这样一个函数,该函数的名称为()          (满分:2)
    A.main
    B.MAIN
    C.name
    D.function
7.C++源文件的缺省扩展名为()          (满分:2)
    A.cpp
    B.exe
    C.obj
    D.lik
8.如果myclass类定义了拷贝构造函数和一个整型参数的构造函数,还重载了赋值运算符,那么语句myclassobj=100;会( )          (满分:2)
    A.调用拷贝构造函数
    B.调用整型参数的构造函数
    C.调用赋值运算符
    D.引起编译错误
9.父类和子类各自定义一个成员函数,函数名相同,参数表不同,那么()          (满分:2)
    A.在子类中这两个函数构成重载关系
    B.子类不会继承父类的这个函数
    C.子类中的函数会覆盖父类中的函数
    D.编译时会发生错误
10.C++语言对C语言做了很多改进,C++语言相对于C语言的最根本的变化是()          (满分:2)
    A.增加了一些新的运算符
    B.允许函数重载,并允许设置缺省参数
    C.规定函数说明符必须用原型
    D.引进了类和对象的概念
11.若有定义:intaa[8];则以下表达式中不能代表数组元aa[1]的地址的是()          (满分:2)
    A.&aa[0]+1
    B.&aa[1]
    C.&aa[0]++
    D.aa+1
12.当需要使用istrstream流类定义一个流类对象并联系一个字符串时,应在文件开始使用#include命令,使之包含()文件          (满分:2)
    A.iostream、h
    B.iomanip、h
    C.fstream、h
    D.ststreh
13.链表的基本单元是()          (满分:2)
    A.节点
    B.头指针
    C.尾指针
    D.数据域
14.要打开一个文件并从中读取数据,应该使用()类的对象          (满分:2)
    A.istream
    B.ostream
    C.ifstream
    D.ofstream
15.假定a为一个短整型(shortint)数组名,则元素a[8]的地址为()          (满分:2)
    A.a+4
    B.a+8
    C.a+16
    D.a+32
16.二进制数00001001跟01000011异或的结果为()          (满分:2)
    A.01001011
    B.00000001
    C.01001010
    D.01001100
17.若k为整形,则while循环执行(   )次。 \\nk=2; while(k==0) printf(“%d”,k); k--; printf(“\\\\n”);          (满分:2)
    A.10
    B.9
    C.0
    D.1
18.若有说明:int*p1,*p2,m=5,n;以下均是正确赋值语句的是()          (满分:2)
    A.p1=&m,p2=&p1
    B.p1=&m;p2=&n;*p1=*p2
    C.p1=&m;p1=p2
    D.p1=&m;*p2=*p1
19.如果有如下定义:constchar*str=\\\OK\\\;那么,sizeof(str)的值应该是()          (满分:2)
    A.1
    B.2
    C.3
    D.4
20.下面是一个模板声明的开始部分:\\ntemplute<typename T> double __\\n由此可知                                 (   )          (满分:2)
    A.这可能是一个函数模板的声明
    B.这可能是一个类模板的声明
    C.这既可能是一个函数模板的声明,也可能是一个类模板的声明
    D.这肯定是一个错误的模板声明
21.有如下类定义:\\nclass MyClass{ \\nint value; \\npublic:\\nMyClass(int n): value (n) {}\\nint gerValue()const{ return value;}\\n};\\n则类 MyClass 的构造函数的个数是              (    )          (满分:2)
    A.1个
    B.2个
    C.3个
    D.4个
22.下列有关抽象类和纯虚函数的叙述中,错误的是()          (满分:2)
    A.拥有纯虚函数的类是抽象类,不能用来定义对象
    B.抽象类的派生类若不实现纯虚函数,它也是抽象类
    C.纯虚函数的声明以“=0;”结束
    D.纯虚函数都不能有函数体
23.假定AB为一个类,则执行“ABa(4),b[4],*p[5]”语句时,自动调用该类构造函数的次数为()          (满分:2)
    A.4
    B.5
    C.8
    D.13
24.十进制数127转换成二进制数是()          (满分:2)
    A.11111111
    B.01111111
    C.10000000
    D.11111110
25.已知函数 f 的原型是 void f(int *a, long & b);,变量 v1、v2 的定义是:\\nint v1; loong v2;\\n下列调用语句中正确的是 (   )          (满分:2)
    A.f(v1,&v2)
    B.f(v1,v2)
    C.f(&v1,&v2)
    D.f(&v1,v2)
26.private访问属性限制对象的成员可以在()中访问          (满分:2)
    A.本类的成员函数
    B.main函数
    C.父类的成员函数
    D.子类的成员函数
27.程序运行中需要从键盘上输入多于一个数据时,各数据之间应该使用()符号作为分隔符          (满分:2)
    A.空格或逗号
    B.逗号或回车
    C.逗号或分号
    D.空格或回车
28.数组名作为实参传递给形参时,数组名被处理为该数组的()          (满分:2)
    A.长度
    B.元素个数
    C.首地址
    D.各元素的值
29.下列语句分别是不同程序中的第一个输入输出语句,若去掉其中的“<<left”,输出效果将发生变化的是()          (满分:2)
    A.cout<<left<<setfill(~*~)<<357;
    B.cout<<left<<setw(5)<<357;
    C.cout<<left<<setw(5)<<\\\ABCDE\\\;
    D.cout<<left<<\\\ABCDE\\\;
30.设有定义intx;floatv;,则10+x+v值的数据类型是()          (满分:2)
    A.int
    B.double
    C.float
    D.不确定
二、多选题:
31.面向对象的编程方法的主要特征包括()          (满分:4)
    A.封装
    B.继承
    C.多态
    D.消息
32.C++中变量要求()          (满分:4)
    A.有明确的类型
    B.先声明后使用
    C.名字中不能使用下划线
    D.严格区分大小写
33.设有定义语句: int x[6]={2,4,6,8,5,7},*p=x,i; \\n要求依次输出x数组6个元素中的值,下列选项中能完成次操作的语句有_(        )、          (满分:4)
    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)++);
34.模板定义中的类型参数可以用作()          (满分:4)
    A.局部变量类型
    B.函数参数类型
    C.函数返回值类型
    D.数据成员类型
35.for语句的格式为for(表达式1;表达式2;表达式3),其中可以省略的是()          (满分:4)
    A.两个分号
    B.表达式1
    C.表达式2
    D.表达式3
三、判断题:
36.C++语言是从早期的C语言逐渐发展演变而来的,与C语言相比,它在求解问题方法上进行的最大改进是面向过程。()          (满分:4)
    A.错误
    B.正确
37.字符串\\\ab\\\\\\\\\\\\n\\\在机器中占6个字节。()          (满分:4)
    A.错误
    B.正确
38._int可以定义为用户标识符。()          (满分:4)
    A.错误
    B.正确
39.结构化程序设计的基本方法是递归法。()          (满分:4)
    A.错误
    B.正确
40.宏名必须用大写字母表示。()          (满分:4)
    A.错误
    B.正确

《面向对象程序设计2261》17秋在线作业1答案.rar

3.08 KB, 下载次数: 3, 下载积分: 贡献 1

售价: 2 金币  [记录]  [购买]

《面向对象程序设计2261》17秋在线作业2答案.rar

3.34 KB, 下载次数: 3, 下载积分: 贡献 1

售价: 2 金币  [记录]  [购买]

QQ|手机版|小黑屋|网站地图|无忧答案网 ( 冀ICP备18010495号-1 )

GMT+8, 2024-5-5 10:06

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表