电子科技大学《程序设计语言与编译》自测题答案
B→.a
B→.b
2. 构造 SLR 分析表;(8 分)
action
goto
a
b
c
d
$
S
A
B
0
S2
1
1
acc
2
S5
S6
3
4
3
S7
R1
4
R3
R3
5
R4
R4
6
R5
R5
7
S5
S6
8
8
R2
R2
3. 该文法是 SLR(1)文法吗?理由是什么?(4 分)
是,不存在多重入口
七、 语义分析题(10 分)
将下面语句翻译成四元式序列:
对使用这个新类型的程序单元来说,新类型的表示是隐蔽的
2. 一个典型的编译程序有哪几部分?
词法分析器、语法分析器、语义分析器、中间代码生成器、优化器、代码生成器
3. 循环优化有哪些措施?
代码外提 强度削弱 删除归纳变量
4. 参数传递有哪几种方式?
5 种:传值 传地址 得结果 传值得结果
四、 推导题(共 10 分)
10.一个对象与其某种属性建立某种联系的过程,称为( D )。
A. 赋值,B.存储,C.定义,D.绑定
二、 多项选择题(每小题 2 分,共 10 分)
1.类型转换的方法( B E )
A. 动态转换,B.拓展,C.静态转换,D.收缩,E.显式转换
2.语句级控制结构有( BCE )
A.递归,B.顺序,C.选择,D.过程调用,E.重复
(109)
(104)(:=,’0’,-,y)
(105)(j,-,-,100)
程序设计语言与编译二
一、选择题(每题 1 分,共 10 分)
1.编译时能进行的检查类型检查为( C )
A. 错误检查,B.动态检查,C.静态检查,D.随机检查
2.一个程序单元可有( D )实例
A. 0 个,B.1 个, C.2 个,D.多个
S5
4
3
S5/r3
6
4
r1
5
r4
r4
6
r2
6. 该文法是 SLR(1)文法吗?理由是什么?(5分)不是,SLR 分析表中存在多重入口
i.
分析题(10 分)
将下面语句翻译成中间代码:
I:=1;
While I<=N do
begin
A[I]:=I+10;
I:=I+1;
end;
(100)(:=,1, ,I)
(104)(j<=,I,N,112)
(108)(j, , ,132)
(112)(+,I,10 ,t1)
(116)([]=,t1, ,a0[I])
(120)(+,I,I,t2)
(124)(:=,t2, ,I)
(128)(j, , ,104)
(132)
程序设计语言与编译三
一、单项选择题(每小题 1 分,共 10 分) 1. 词法分析器的输出是( ② )。
短语:b,(b),(b)da,((b)da),a
直接短语:b ,a
句柄:b
五、 算符优先分析法(共 10 分)
已知文法 G(P):
P→P(F)| F
F→abFda∣a
1. 求每个非终结符的 FIRSTVT 集;(3 分)
FIRSTVT(P)={a,b}
FIRSTVT(F)={a}
2. 求每个非终结符的 LASTVT 集;(3 分)
6.句型是由( D. )推导出的符号串。
A. 非终结符,B.终结符,C.任何符号,D.开始符号
7.一棵语法树中,子树叶结点的自左至右排列称为( A )。
B. 短语,B.句型,C.句柄,D.素短语
8.一个对象与其某种属性建立某种联系的过程,称为( D. )。
B.赋值,B.存储,C.定义,D.绑定
9.( A )是指可访问该变量的程序范围。
WHILE a<b DO
IF a>0 THEN y:=0
ELSE y:=y+1;
(100)(j<,a,b,102)
(106)(+,y,’1’,t1)
(101) (j>,-,-,109)
(107)(:=,t1,-,y)
(102) (j>,a,’0’,104)
(108) (j,-,-,100)
(103)(j>,-,-,106)
4、 什么叫语法制导翻译?
每个产生式配一个子程序,在语法分析的过程中,每当用一个产生式进行匹配或归约时,就调用相应的语义子程序
四、 推导题(共 15 分)
1、已知文法 G(S):
S→a∣b∣(A)
A→SdA∣S
1. 证明(bdS)是 G(S)的句型;(5 分)
S=>(A)=> (SdA)=>(bdA)=>(bdS)
LASTVT(P)={a,) }
LASTVT(F)={a} 3. 构造此文法的优先关系表;(4 分)
a
bd
(
)
a
=>
>
>
b<
=
d=
(<
=
)
>
六、LR 分析法(共 15 分)
已知文法 G(S):
S→AB
A→aB∣a
B→b
4. 构造 G(S)的 LR(0)项目集规范族;(5分)
(0) S'→ S
(1) S→AB
三、 简答题(每小题 5 分,共 20 分)
1、 分程序与复合语句的区别是什么?
分程序中可说明局部于该程序的变量,复合语句是可执行语句的序列,其中没有说明语句
2、 循环优化有哪几种方法?
代码外提,强度削弱,删除归纳变量
3、 怎样判断一个文法具有二义性?
文法 G 如果产生的某个句子对应两棵不同的语法数,则有二义性
3.把一个高级语言程序翻译成机器可执行的目标程序的工作由下列程序之一完成( C )
A. 汇编程序,B.解释程序,C.编译程序,D.预处理程序
4. LR 分析法的核心部分是( B )。
B. 总控程序,B.分析表,C.分析栈,D.可规约串
5.词法分析时,单词的识别依据( C )实现
A. 下推自动机,B.图灵机,C.状态转换图,D.抽象机
① 字符串
② 二元式
③ 三元式
④ 四元式
2. 下述方法中,( ③ )不是自下而上的分析方法。
① 规范归约
② 算符优先分析法
③ 递归下降分析法 ④ LR 分析法
3. Σ={A, B, 0, 1}上的正规式(A | B)(A | B | 0 | 1)*表示( ④ )。
① 字符串
② 整数
③ 数字串
④ 标识符
② 生成四元式
③ 报告错误
④ 符号表的查找
⑤ 符号表的更新
3. 基本块的入口语句可能是( ①②③ )。
① 程序的第一条语句
② 能由转移语句转移到的语句
③ 紧跟在条件转移语句后面的语句 ④ 说明语句 ⑤ 循环语句
4. 词法分析时,通常将单词分成(①②③④⑤
拓广文法:(0) S'→S
(1) S→cA
(2) A→AdB
(3) A→B
(4) B→a
(5)B→b
I0:S'→·S
I3:S→cA· A→A.dB
I7:A→Ab·B
S→·cA
I4:A→B·
B→·a
I1:S'→S·
I5:B→a·
B→·b
I2:S→c·A
I8:A→AdB·
A→·a
I6:B→b·
A→·AdB
中,形参只起_______局部变量_____________作用。
9. 机器语言和汇编语言都是与机器无关的语言,统称__低级语言__,与机器无关的程序设计语言称为__高级语言_。
三、 简答题(每小题 5 分,共 20 分)
1. 用户定义类型满足哪两个特性时,才能称为抽象数据类型?
在允许实现这个新类型的程序单元中,建立与表示有关的具体操作
已知文法 G(S):
S→a∣b∣(A)
A→B
B→SdB∣S
1.
给出((b)da)的最左推导过程及相应的推导树;(5 分)
S=>(A)=>(B)=>(SdB)=>((A)dB)=>((B)dB)=> ((S)dB) => ((b)dB)=> ((b)dS) => ((B)da)
2.
求((b)da)的短语、直接短语和句柄。(5 分)
2.
程序语言的生成机制是____文法_____,它的识别机制是___语法图_______。
3.
类型聚合的方式有____笛卡儿集__、_有限映象__、_序列_、_递归___、_判定或____、__幂集_________。
4.
传统语言三种语句级控制结构是_____顺序________、__选择____________、__重复____________。
① 短语
② 直接短语
③ 句柄
④ 素短语
二、多项选择题(每小题 2 分,共 10 分)
1. 按 Chomsky 的观点,将文法分成( ①③④⑤ )等几类。
① 短语文法 ② 算符优先文法
③ 上下文有关文法 ④ 上下文无关文法
2. 编译的各个阶段都要涉及表格管理,表格管理的工作有( ①④⑤ )。
① 符号表的建立
① 汇编器
② 解释器
③ 编译器
④ 预处理器
8. 编译时能进行的类型检查称为( ③ )。
① 错误检查
② 动态检查
③ 静态检查
④ 随机检查
编译原理自测题附答案有错
第一章一.填空题1.编译程序的工作过程一般可以划分为词法分析、语法分析、语义分析与中间代码产生、优化和生成目标程序等几个基本阶段,同时还伴有符号表管理和出错处理。
2.若源程序是用高级语言编写的,目标程序是汇编或机器语言,则其翻译程序称为编译程序。
3.编译方式与解释方式的根本区别在于运行目标程序时的控制权在解释器而不是目标程序。
4.翻译程序是这样一种程序,它能将用甲种语言书写的程序转换成与其等价的乙种语言书写的程序。
5.对编译程序而言,输入数据是高级语言(源)程序,输出结果是低级语言(目标)程序。
6.运行编译程序的计算机称宿主机,运行编译程序所产生目标代码的计算机称目标机。
7.当把编译程序划分成编译前端和编译后端时,前端主要由与源语言有关但与目标机无关的部分组成,编译后端包括编译程序中与目标机有关的部分,编译后端不依赖于源语言而仅仅依赖于中间语言。
8.描述词法规则的有效工具是词法分析器,通常使用语法分析器来描述语法规则,使用语义分析(与中间代码产生)器描述语义规则。
二.综合题(该答案仅供参考)1、给出C语言编译程序对下面语句进行编译时从词法分析到目标代码生成5个分析阶段的分析过程。
c=a+b*30;(1)给出每个阶段的输入和输出代码或其它数据形式。
(2)给出符号表,说明在哪些阶段会对符号表进行填写或查找。
(3)编译过程是否进行了代码优化?若有,请指出优化之处,并给出属于哪种优化?答:词法分析:出入源程序;输出识别出的记号流。
c=a+b*30 id1=id2+id3*30语法分析器:输入记号流,构造句子结构;输出语法树。
=id1 +id2 *id3 30语义分析与中间代码生成:出入语法树,输出中间代码变量地址数值注:赋值阶段会对符号表进行填写或查找1. id1 0 c (itr,30,,t1)2. id2 4 x (*,id3,t1,t2)3. id3 8 y (+,id2,t2,t3)4. t1 12 30 (=,t3,,id1)优化:1.(*,id3,30.0,t1)2.(+,id2,t1,id1)精简掉多余的复写传播mulf #30.0,r2 mov id2,r1 sub r1,r2mov r2,id1第二章一.填空题1.上下文无关文法包括以下四个组成部分:一组终结符号,一组非终结符号,一个开始符号,以及一组产生式。
程序设计语言 习题与答案
第六章习题 P159-161一、复习题1、简述自然语言与形式语言的概念以及区别、汇编语言与机器语言的概念及区别。
自然语言是某一社会发展中形成的一种民族语言,而形式语言是进行形式化工作的元语言,它是以数学和数理逻辑为基础的科学语言。
用机器指令形式编写的程序称为机器语言,用带符号或助记符的指令和地址代替二进制代码成为语言进化的目标。
这些使用助记符语言的语言后来就被称之为汇编语言。
(P144- P146)2、试述计算机语言的类型,它们各有什么特点?1.机器语言,是最低级的语言,由二进制码组成,最早期的程序员通过在纸带上打点来写程序2.汇编语言,用助记符和地址符代替了二进制码,更易于编写。
3.高级语言,相对于汇编语言又上升了一步,更接近于自然语言,如C语言、Pascal、Java、C#等都是高级语言。
(P145-147)3、列举程序设计语言的几种范型。
程序语言大致分为命令式程序设计语言、面向对象的程序设计语言、函数式程序设计语言和逻辑型程序设计语言等范型。
(P147-149)4、简述语言虚拟机。
提示:语言虚拟机是某种语言的解释器。
语言虚拟机是建立在硬件和操作系统之上,针对不同的硬件和操作系统有不同的虚拟机,通过语言虚拟机屏蔽掉硬件的差异。
这样使得硬件系统能够支持这种语言编写的程序的有效执行。
目前最流行的语言虚拟机是Java虚拟机。
(P156)5、计算机执行用高级语言编写的程序有哪些途径?它们之间的主要区别是什么?提示:主要有编译、解释等方式,也有两种方式的混合使用的形式。
编译是使用编译器将高级语言编写的源程序转换成计算机可以执行的机器语言可执行程序,也可以理解为用编译器产生可执行程序的动作。
编译方式是一次编译,然后执行程序可以反复多次执行。
解释是另一种将高级语言转换为可执行程序的方式。
与编译不同,解释性语言的程序不需要编译,省了道工序,解释性语言在运行程序的时候才翻译,每个语句都是执行的时候才翻译。
这样解释性语言每执行一次就要翻译一次,效率比较低。
电子科技大学大二期末计算机管理与应用专业《java》(计算机编程语言)考试及答案-(A3版)2
电子科技大学大二第2学期java(计算机编程语言)(考试时间90分钟,满分100分)第一题:单项选择题(20×2分)1.Java application中的主类需包含main方法,以下哪项是main方法的正确形参?()A、 String argsB、String args[]C、Char argD、StringBuffer args[]2.下列的哪个选项可以正确用以表示八进制值8?()A)0x8B)0x10C)08D)0103.设int x=1,float y=2,则表达式x / y的值是:()A.0 B.1 C.2 D.以上都不是4. 若有定义:byte[] x={11,22,33,-66};其中0≤k≤3,则对x数组元素错误的引用是()A)x[5-3]B)x[k]C)x[k+5]D)x[0]5.Java Applet在被浏览器加载的时候首先被执行且在applet整个生命周期中只被运行一次的方法是()?A、init()B、start()C、opreationcrawl()D、reader()6.在浏览器中执行applet 程序,以下选项中的哪个方法将被最先执行()。
A、init()B、start()C、destroy()D、stop()7.在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数的个数、类型或顺序各不相同,传回的值也可以不相同。
这种面向对象程序特性称为()A)隐藏B)重写C)重载D)Java不支持此特性8.以下有关构造方法的说法,正确的是:()A.一个类的构造方法可以有多个B.构造方法在类定义时被调用C.构造方法只能由对象中的其它方法调用。
D.构造方法可以和类同名,也可以和类名不同9.类Parent、Child定义如下:1.public class Parent2.{ public float aFun(float a, float b) throws3.IOException { }4.} 5.public class Child extends Parent{6.7.}将以下哪种方法插入行6是不合法的。
电子科技大学c语言考试题及答案
电子科技大学c语言考试题及答案一、单项选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于声明一个函数?A. intB. returnC. voidD. function答案:A2. 在C语言中,以下哪个是正确的字符串声明?A. char str = "Hello";B. string str = "Hello";C. str char = "Hello";D. char str[] = "Hello";答案:D3. 下列哪个运算符用于比较两个值是否不相等?A. ==B. !=C. =D. <=答案:B4. C语言中,哪个函数用于计算数组中元素的个数?A. count()B. length()C. size()D. sizeof()答案:D5. 在C语言中,以下哪个是正确的二维数组声明?A. int array[3, 4];B. int array[3][4];C. int array[3][];D. int array[][];答案:B6. 下列哪个关键字用于循环结构?A. ifB. whileC. switchD. for答案:D7. C语言中,以下哪个函数用于将字符串复制到另一个字符串?A. strcpy()B. strcat()C. strncpy()D. strncat()答案:A8. 在C语言中,以下哪个是正确的函数声明?A. int add(int a, int b);B. int add(a, b);C. int add(int, int);D. int add();答案:A9. 下列哪个运算符用于计算两个整数的乘积?A. +B. -C. *D. /答案:C10. 在C语言中,以下哪个是正确的结构体声明?A. struct Student {int id;char name[50];};B. struct {int id;char name[50];} Student;C. struct Student {int id;string name;};D. struct Student {int id;char name;};答案:A二、填空题(每题2分,共20分)1. 在C语言中,使用________运算符可以对变量进行自增操作。
编译原理-复习(3套,含答案)
1电子科技大学网络教育考卷(复习卷)(20 年至20 学年度第 学期)考试时间 年 月 日(120分钟) 课程 编译原理 教师签名__ ___一、选择题(每题2分,共30分)1.语言学家Chomsky 将文法和语言分为四大类,其中3型文法又称为( D )。
A .无限制文法B .上下文有关文法C .上下文无关文法D .正规文法2. 对程序中的表达式的识别工作,编译程序通常都在( A )阶段完成。
A .语法分析 B .语义分析 C .词法分析D .目标代码的生成3. 在通常的语法分析方法中,( A )特别适用于表达式的分析。
A .算符优先分析法 B .LR 分析法 C .递归下降分析法 D .LL (1)分析法4. 在语法分析方法中,算符优先分析法采用( A )文法。
A .OPG B .LL(1) C .LR(0)D .LR(1)5. 设有文法G[T]: T →T*F|F F →F ↑P|P P →(T )|a ,句型T*P ↑(T*F )的句柄是符号串( C ) A .(T*F B .T*F C .P D .P ↑(T*F )6. LR 分析法每次都是对当前句型的( B )进行规约。
A .素短语B .句柄C .短语D .最左素短语7. 表达式(﹁A ∨B )∧(C ∨D )的逆波兰表示为( B ) A .﹁AB ∨∧CD ∨ B .A ﹁B ∨CD ∨∧ C .AB ∨﹁CD ∨∧ D .A ﹁B ∨∧CD ∨ 8. 下推自动机识别的语言是( C )A .0型语言B .1型语言C .2型语言D .3型语言9. 对应Chomsky 四种文法的四种语言之间的关系是( B )。
A .L 0⊂L 1⊂L 2⊂L 3 B .L 3⊂L 2⊂L 1⊂L 0 C .L 3=L 2⊂L 1⊂L 0 D .L 0⊂L 1⊂L 2=L 3 10. 词法分析的任务是( A )。
A .识别单词B .分析句子的含义C .识别句子D .生成目标代码11. 已知∑={a,b},与文法G[S]:S →Sa| Sb| a 等价的正规式是( C )。
电子科技大学15春《计算机编译原理》在线作业2答案
电子科技大学15春《计算机编译原理》在线作业2答案15春《计算机编译原理》在线作业21. 在规范归约中,用()来刻画可归约串。
A. 直接短语B. 句柄C. 最左素短语D. 素短语正确答案:B 满分:5 分得分:52. 符号表是否合理则影响()的效率。
A. 编译程序B. 目标程序C. 源程序D. 编译程序和目标程序E. 解释程序正确答案:A 满分:5 分得分:53. 词法分析器的输出结果是()。
A. 单词的种别编码B. 单词在符号表中的位置C. 单词的种别编码和自身值D. 单词自身值正确答案:C 满分:5 分得分:54. 正规式M1和M2等价是指()。
A. M1和M2的状态数相等B. M1和M2的有向边条数相等C. M1和M2所识别的语言集相等D. M1和M2状态数和有向边条数相等正确答案:C 满分:5 分得分:55. 在编译程序中,语法分析分为自顶向下分析和自底向上分析两类:自顶向下分析试图为输入符号串构造一个()。
A. 语法树B. 有向无环图C. 最左推导D. 最右推导正确答案:C 满分:5 分得分:56. 在编译程序中,语法分析分为自顶向下分析和自底向上分析两类:()和LR分析法属于自底向上分析。
A. 深度分析法B. 宽度优先分析法C. 算符优先分析法D. 递归子程序分析法正确答案:C 满分:5 分得分:57. 编译程序中的语法分析器接受以()为单位的输入,并产生有关信息供以后各阶段使用。
A. 表达式B. 产生式。
电子科技大学智慧树知到“计算机科学与技术”《面向对象程序设计》网课测试题答案4
电子科技大学智慧树知到“计算机科学与技术”《面向对象程序设计》网课测试题答案(图片大小可自由调整)第1卷一.综合考核(共15题)1.在Java中,用()关键字定义常量。
A.fixedB.finalC.#defineD.const2.import java.awt.*;public class X extends Frame{public static void main(String[] args){X x=new X();x.pack();x.setVisible(true);}public X(){setLayout(new GridLayout(2,2));Panel p1=new Panel(); add(p1);Button b1=new Button("One"); p1.add(b1);Panel p2=new Panel(); add(p2);Button b2=new Button("Two"); p2.add(b2);Button b3=new Button("Three"); p2.add(b3);Button b4=new Button("Four"); add(b4);}}when the frame. is resized, ()A.all change height and widthB.Button Two change height and Button Three change widthC.Button One change heightD.Button Four change height and width3.在线程中,普通优先级的线程其优先级默认值为()。
A.5B.2C.10D.14.在Java语言中,系统常量null,false,true既可以大写,也可以小写。
()A.正确B.错误5.A class can implement as many interfaces as needed.()A.正确B.错误6.下列各输出语句中,显示结果为“123”的是()。
第6章-程序设计语言-习题与答案
第六章习题(1)复习题1、简述自然语言错误!未定义书签。
与形式语言错误!未定义书签。
得概念以及区别、汇编语言与机器语言得概念及区别。
自然语言就是某一社会发展中形成得一种民族语言,而形式语言就是进行形式化工作得元语言,它就是以数学与数理逻辑为基础得科学语言。
用机器指令形式编写得程序称为机器语言,用带符号或助记符得指令错误!未定义书签。
与地址代替二进制代码成为语言进化得目标。
这些使用助记符语言得语言后来就被称之为汇编语言.(P135 P136)2、什么就是高级程序设计语言错误!未定义书签。
?它有什么特点?高级语言就是汇编语言得一种抽象。
高级语言得设计目标就就是使程序员摆脱汇编语言错误!未定义书签。
细节得繁琐。
高级语言同汇编语言都有一个共性,那就就是:它们必须被转化为机器语言错误!未定义书签。
,这个转化得过程称为解释或编译。
(1)高级语言接近算法语言,易学、易掌握;(2)高级语言设计出来得程序可读性好,可维护性强,可靠性高;(3)高级语言与具体得计算机硬件关系不大,其程序可移植性好,重用率高;(4)高级语言自动化程度高,开发周期短,利于提高程序得质量。
(P138)3、列举程序设计语言得几种范型.程序语言大致分为命令式程序设计语言、面向对象得程序设计语言、函数式程序设计语言与逻辑型程序设计语言等范型。
(P138—140)4、简述语言虚拟机。
提示:语言虚拟机就是某种语言得解释器.语言虚拟机就是建立在硬件与操作系统之上,针对不同得硬件与操作系统有不同得虚拟机,通过语言虚拟机屏蔽掉硬件得差异。
这样使得硬件系统能够支持这种语言编写得程序得有效执行。
目前最流行得语言虚拟机就是Java虚拟机。
(P147)5、计算机执行用高级语言错误!未定义书签。
编写得程序有哪些途径?它们之间得主要区别就是什么?提示:主要有编译、解释等方式,也有两种方式得混合使用得形式。
编译就是使用编译器将高级语言编写得源程序转换成计算机可以执行得机器语言可执行程序,也可以理解为用编译器产生可执行程序得动作。
电子科技大学智慧树知到“计算机科学与技术”《计算机编译原理》网课测试题答案卷1
电子科技大学智慧树知到“计算机科学与技术”《计算机编译原理》网课测试题答案(图片大小可自由调整)第1卷一.综合考核(共10题)1.文法G[S]:S→S+U|U,U→U*V|V,V→(S)a,则句型P+T+i的句柄和最左素短语为()。
A.V+U和aB.V和V+UC.a和V+U+aD.V和U2.描述文法符号语义的属性有()。
A.综合属性B.继承属性C.L-属性D.R-属性3.对应于产生式A->XY继承属性Y.y,可能正确的语义规则是()。
A.a:=f(X.x,Y.y)B.Y.y:=f(A.a,Y.y)C.Y.y:=f(X.x)D.a:=f(Y.y)4.扫描器识别出的具有独立含义的最小语法单位是()。
A.算符B.单词C.字符D.表达式5.一个上下文无关文法的组成部分是()。
A.一组终结符号B.一组非终结符号C.一个开始符号D.一组产生式6.LL(1)分析法中,第二个L的含义是从左到右进行分析。
()A.正确B.错误7.若项目集Ik含有A→α?,则在状态k时,仅当面临的输入符号a∈FOLLOW(A)时,才采取“A→α?”动作的一定是()LR文法B.LR(0)文法C.LR(1)文法D.SLR(1)文法8.同心集合并有可能产生新的()冲突A.归约B.“移进”/“移进”C.“移进”/“归约”D.“归约”/“归约”9.如果一个文法存在某个句子对应两颗不同的语法树,则该文法是二义的。
()A.正确B.错误10.文法G:S→xSx|y所识别的语言是()。
A.xyxB.(xyx)*C.xnyxn(n≥0)D.x*yx*第1卷参考答案一.综合考核1.参考答案:B2.参考答案:AB3.参考答案:C4.参考答案:B5.参考答案:ABCD6.参考答案:B7.参考答案:D8.参考答案:D9.参考答案:A10.参考答案:C。
电子科技大学15秋《C++语言程序设计》在线作业1满分答案
15秋《C++语言程序设计》在线作业1
一,单选题
1. 若一个类中含有纯虚函数,则该类称为()
A. 基类
B. 纯基类
C. 派生类
D. 抽象类
正确答案:D
2. new必须与()配对使用。
A. close
B. delete
C. return
D. exit
正确答案:B
3. 下列情况中,不会调用拷贝构造函数的是()
A. 用一个对象去初始化同一类的另一个新对象时
B. 函数的形参是类的对象,调用函数进行形参和实参结合时
C. 函数的返回值是类的对象,函数执行返回调用时
D. 将类的一个对象赋值给该类的另一个已经存在的对象时
正确答案:D
4. C++源程序文件的扩展名为()
A. .cpp
B. .c
C. .c++
D. .dll
正确答案:A
5. 下面有关类说法不正确的是()
A. 在一个类中不能说明具有类类型的数据成员
B. 一个类可以有多个构造函数
C. 一个类只有一个析构函数,且析构函数不能被指定参数
D. 一个类中public、protected和private三者说明的顺序可以任意,且可以被使用多次,也可以不使用正确答案:A
6. 空类就是没有()的类。
A. 类名
B. 任何成员
C. 数据成员
D. 成员函数。
