奥鹏易百

 找回密码
 立即注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

帮助中心知识拓展客服QQ 515224986
查看: 406|回复: 0

四川大学《面向对象程序设计2261》17春在线作业2答案资料

[复制链接]

1万

主题

4

回帖

2万

积分

论坛元老

积分
28638
发表于 2017-6-22 17:20:25 | 显示全部楼层 |阅读模式
扫码加微信
《面向对象程序设计2261》17春在线作业2


一、单选题:
1.十进制数127转换成二进制数是(    )          (满分:2)
    A. 11111111
    B. 01111111
    C. 10000000
    D. 11111110
2.在下列关键字中,不能用来表示继承方式的是(    )          (满分:2)
    A. private
    B. static
    C. public
    D. protected
3.private访问属性限制对象的成员可以在(    )中访问          (满分:2)
    A. 本类的成员函数
    B. main函数
    C. 父类的成员函数
    D. 子类的成员函数
4.链表的基本单元是(    )          (满分:2)
    A. 节点
    B. 头指针
    C. 尾指针
    D. 数据域
5.如果myclass类定义了拷贝构造函数和一个整型参数的构造函数,还重载了赋值运算符,那么语句myclassobj=100;会( )          (满分:2)
    A. 调用拷贝构造函数
    B. 调用整型参数的构造函数
    C. 调用赋值运算符
    D. 引起编译错误
6.程序运行中需要从键盘上输入多于一个数据时,各数据之间应该使用(    )符号作为分隔符          (满分:2)
    A. 空格或逗号
    B. 逗号或回车
    C. 逗号或分号
    D. 空格或回车
7.假定a为一个短整型(shortint)数组名,则元素a[8]的地址为(    )          (满分:2)
    A. a+4
    B. a+8
    C. a+16
    D. a+32
8.多态性是通过(    )实现的          (满分:2)
    A. 构造函数
    B. 析构函数
    C. 虚函数
    D. 函数重载
9.下面的选项中正确的赋值语句是(chara[5],*p=a;)(    )          (满分:2)
    A. p=“abcd”;
    B. a=“abcd”;
    C. *p=“abcd”;D*a=“abcd”;
10.以下不能正确进行字符串赋初值的语句是(    )          (满分:2)
    A. charstr[5]="good!";
    B. charstr[]="good!";
    C. char*str="good!";
    D. charstr[5]={‘g',‘o',‘o',‘d'};
11.如果定义了一个类myclass,则为myclass类对象以成员函数形式重载后++运算符的声明应该为(    )          (满分:2)
    A. myclassoperator++(    );
    B. myclass& operator++(    );
    C. myclassoperator++(int);
    D. myclass& operator++(int);
12.C++源文件的缺省扩展名为(    )          (满分:2)
    A. cpp
    B. exe
    C. obj
    D. lik
13.C++语言对C语言做了很多改进,C++语言相对于C语言的最根本的变化是(    )          (满分:2)
    A. 增加了一些新的运算符
    B. 允许函数重载,并允许设置缺省参数
    C. 规定函数说明符必须用原型
    D. 引进了类和对象的概念
14.如果短整型的长度是2字节,有一个短整型指针p的值是0xFFED1200,那么p+1的值为(    )          (满分:2)
    A. 0xFFED1201
    B. 0xFFED1202
    C. 0xFFED1203
    D. 0xFFED1204
15.有如下 4 个语句:① cout<<~A~<<setfill(~*~)<<left<<setw(7)<<~B~<<endl;② cout<<setfill(~*~)<<left<<setw(7)<<~A~<<~B~<<endl;③ cout<<~A~<<serfill(~*~)<<right<<setw(7)<<~B~<<endl;④ cout<<setfill(~*~)<<right<<setw(7)<<~A~<<~B~<<endl;其中能显示 A******B 的是          (满分:2)
    A. ①和③
    B. ①和④
    C. ②和③
    D. ②和④
16.如果有如下定义:constchar*str="OK";那么,sizeof(str)的值应该是(    )          (满分:2)
    A. 1
    B. 2
    C. 3
    D. 4
17.以下对二维数组a的正确说明是:(    )          (满分:2)
    A. inta[3][];
    B. floata(3,4);
    C. doublea[1][4];
    D. floata(3)(4);
18.执行下列语句段后,输出字符“*”的个数是(    )for(inti=50;i>1;I-=2)cout<<~*~;          (满分:2)
    A. 24
    B. 25
    C. 26
    D. 50
19.如果在try块中用throw"error";语句抛出一个异常,则参数类型是(    )的catch块能够捕获这个异常。          (满分:2)
    A. char*
    B. constchar*
    C. Char
    D. constchar
20.数组名表示的是数组的(    )          (满分:2)
    A. 类型
    B. 用途
    C. 地址
    D. 长度
21.假定AB为一个类,则执行“ABa(4),b[4],*p[5]”语句时,自动调用该类构造函数的次数为(    )          (满分:2)
    A. 4
    B. 5
    C. 8
    D. 13
22.下面是一个模板声明的开始部分:templute double 由此可知                                 (    )          (满分:2)
    A. 这可能是一个函数模板的声明
    B. 这可能是一个类模板的声明
    C. 这既可能是一个函数模板的声明,也可能是一个类模板的声明
    D. 这肯定是一个错误的模板声明
23.C++函数的声明和定义可以分开,函数声明不需要(    )          (满分:2)
    A. 返回类型
    B. 函数名
    C. 参数表
    D. 函数体
24.下列语句分别是不同程序中的第一个输入输出语句,若去掉其中的“<<left”,输出效果将发生变化的是(    )          (满分:2)
    A. cout<<left<<setfill(~*~)<<357;
    B. cout<<left<<setw(5)<<357;
    C. cout<<left<<setw(5)<<"ABCDE";
    D. cout<<left<<"ABCDE";
25.二进制数00001001跟01000011异或的结果为(    )          (满分:2)
    A. 01001011
    B. 00000001
    C. 01001010
    D. 01001100
26.若已定义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
27.下面函数调用语句含有实参的个数为: (    )func((exp1,exp2),(exp3,exp4,exp5))          (满分:2)
    A. 1
    B. 2
    C. 4
    D. 5
28.执行语句char ch[] = "Hello";char * p = &ch[0];cout<<*p 结果是输出 (    )。          (满分:2)
    A. 一个地址
    B. H
    C. Hello
    D. 乱码
29.C++泛型编程通过(    )实现          (满分:2)
    A. void
    B. template
    C. NULL
    D. typedef
30.若有说明: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
二、多选题:
1.for语句的格式为for(表达式1;表达式2;表达式3),其中可以省略的是(    )          (满分:4)
    A. 两个分号
    B. 表达式1
    C. 表达式2
    D. 表达式3
2.C++中变量要求(    )          (满分:4)
    A. 有明确的类型
    B. 先声明后使用
    C. 名字中不能使用下划线
    D. 严格区分大小写
3.流程控制语句有(    )几种          (满分:4)
    A. 条件语句
    B. 循环语句
    C. 分支语句
    D. 表达式语句
4.关于公共静态数据成员,下面说法正确的是(    )          (满分:4)
    A. 在main函数之前创建
    B. 跟某个具体对象无关
    C. 可以用类名和成员名直接访问
    D. 需要在类体外初始化
5.面向对象的编程方法的主要特征包括(    )          (满分:4)
    A. 封装
    B. 继承
    C. 多态
    D. 消息
三、判断题:
1.宏名必须用大写字母表示。(    )          (满分:4)
    A. 错误
    B. 正确
2.结构化程序设计的基本方法是递归法。(    )          (满分:4)
    A. 错误
    B. 正确
3.重载函数形参个数可以不同。(    )          (满分:4)
    A. 错误
    B. 正确
4.C++程序从上机到得到结果的几个操作步骤依次是:编辑、编译、连接、运行。(    )          (满分:4)
    A. 错误
    B. 正确
5.C++语言的跳转语句中,break语句只应用于循环体中。(    )          (满分:4)
    A. 错误
    B. 正确
更多免费学习资料请登录www.openhelp100.com

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|www.openhelp100.com ( 冀ICP备19026749号-1 )

GMT+8, 2024-11-25 19:50

Powered by openhelp100 X3.5

Copyright © 2001-2024 5u.studio.

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