1、计算机二级(C+)16 及答案解析(总分:1765.00,做题时间:90 分钟)一、选择题(每小题 2 分,共 70 分) 下列各(总题数:25,分数:1750.00)1.下列程序的输出结果是( )。 #includeiostreamh class Myclass public:Myclass(int i=0,intj=0) x=i; y=j; void show( ) cout “x=“ x “ “ “y=“ y end1; void show( )const cout “x=“ “ “ “y= y end1; privated: int x; int y; ; void main( ) M
2、yclass my1(3,4); const my2(7,8); my1show( );my2show( ); (分数:70.00)A.line 4B.line 6C.line 7D.line 82.下列语句中不是死循环的是( )。(分数:70.00)A.报表页眉B.页面页眉C.组页眉D.以上说法都不对3.以下程序的输出结果是( )。 #includeiostreamh longfun(intn) longs; if(n=1|n=2)s=2; elses:n-fun(n-1); returns; voidmain( ) coutfun(3); (分数:70.00)A.1B.2C.3D.44.函
3、数模板:template T add(T x,T y) return x+y; 下列对 add 函数的调用不正确的是( )。 (分数:70.00)A.add(1,2)B.add(1,2)C.add(10,2)D.add(10,20)5.如果友元函数重载一个运算符时,其参数表中没有任何参数则说明该运算符是( )。(分数:70.00)A.a(3)=3B.a(3)=inputbox(“input data“)C.a(3)=ListlListlndexD.a=Array(1,2,3,4,5,6)6.下面程序错误的语句是( )。 # include iostreamh void main( ) int
4、* p=new int1; p=9; cout * p endl; delete p; (分数:70.00)A.ValueB.VisibleC.DefaultD.Enabled7.有以下程序 #include“iostream.h“ void main( ) int i=1,j=1,k=2; if( (j+|k+)&i+) cout i “,“ j “,“ k; cout end1; 执行后输出结果是( )。 (分数:70.00)A.1,1,2B.2,2,1C.2,2,2D.2,2,38.下面对静态数据成员的描述中,正确的是( )。(分数:70.00)A.各个记录中的数据彼此间有一定的关联关系
5、B.数据模型符合满足一定条件的二维表格式C.某两个数据库文件之间有一定的关系D.表中的两个字段有一定的关系9.当使用 fstream 流类定义一个流对象并打开一个磁盘文件时,文件的隐含打开方式为( )。(分数:70.00)A.类B.预处理命令C.主函数D.语句10.下列程序段的输出结果是( )。 #includeiostreamh void fun(int * X,int * y) cout * X * y; * X=3; * y=4; void main( ) int x=1,y=2; fun(&y,&x); cout X y end1; (分数:70.00)A.publicB.public
6、 和 protectedC.priviteD.任意修饰符都可以,由系统随机选取11.下面程序的输出结果是( )。 #includeiostream.h #includestring.h voidmain( ) charp110,p210; strcpy(p1,“abc“); strcpy(p2,“ABC“); charstr50=“xyz“; strcpy(str+2,strcat(p1,p2); coutstr; (分数:70.00)A.xyzabcABCB.zabcABCC.xyabcABCD.yzabcABC12.下面的语句中错误的是( )。(分数:70.00)A.ItemListene
7、rB.ActionListenerC.ContainerListenerD.WindowsListener13.类 A 是类 B 的友元,类 B 是类 C 的友元,则下列说法正确的是( )。(分数:70.00)A.构造函数可以重载,析构函数不能重载B.构造函数不能重载,析构函数可以重载C.构造函数可以重载,析构函数也可以重载D.构造函数不能重载,析构函数也不能重载14.下面的哪个选项不能作为函数的返回类型?(分数:70.00)A.NameB.CaptionC.PasswordCharD.Text15.对于重载的运算符 ,它是一个( )。(分数:70.00)A.用于输入的友元函数B.用于输入的成
8、员函数C.用于输出的友元函数D.用于输出的成员函数16.下列程序的运行结果为( )。 #includeiostreamh void main( ) int a=2; int b=a+1; cout a/b endl; (分数:70.00)A.0.66667B.0C.0.7D.0.6666666617.下列关于多态性的描述,错误的是( )。(分数:70.00)A.INDEXON 籍贯,学号 TO JGXHB.INDEXON 籍贯+学号 TO JGXHC.INDEXON 籍贯,STR(学号,4)TO JGXHD.INDEXON 籍贯+STR(学号,4)TO JGXH18.以下能对二维数组 a 进行
9、正确初始化的语句是( )。(分数:70.00)A.int a2 = 1,0,1,5,2,3;B.int a 3= 1,2,3,4,5,6;C.int a24= l,2,3,4,5,6 ;D.int a 3= 1,0,1, ,l,1 ;19.C+语言中标点符号中表示一条预处理命令开始的是( )。(分数:70.00)A.#B.;C.20.对类的构造函数和析构函数描述正确的是( )。(分数:70.00)A.构造函数可以重载,析构函数不能重载B.构造函数不能重载,析构函数可以重载C.构造函数可以重载,析构函数也可以重载D.构造函数不能重载,析构函数也不能重载21.C+语言是以哪种语言为基础逐渐发展演变
10、而成的一种程序设计语言( )。(分数:70.00)A.满足一定规范化要求的二维表B.二维表中的一行C.二维表中的一列D.二维表中的一个数字项22.所有在函数中定义的变量,连同形式参数,都属于( )。(分数:70.00)A.全局变量B.局部变量C.静态变量D.寄存器变量23.对于语句 cout setfill(*) setw(10) 1 setfill(*) setw(2) 2;的输出结果是 ( )。(分数:70.00)A.* * * * * * * * * 1 * 2B.* * * * * * * * 12C.* * * * * * * 1 * 2D.12 * * * * * * * *24.
11、while 和 do-while 循环的主要区别是( )。(分数:70.00)A.do-while 的循环体至少无条件执行一次B.while 的循环控制条件比 do-while 的循环控制条件更严格C.do-while 允许从外部转到循环体内D.do-while 的循环体不能是复合语句25.下面关于 C+语言变量的叙述错误的是( )。(分数:70.00)A.字段变量的值B.内存变量的值C.随机显示D.错误信息26.下列选项中,不属于模块间耦合的是( )。(分数:-1.00)A.数据耦合B.同构耦合C.异构耦合D.公用耦合27.为了避免流程图在描述程序逻辑时的灵活性,提出了用方框图来代替传统的程
12、序流程图,通常也把这种图称为( )。(分数:-1.00)A.PAD 图B.N-S 图C.结构图D.数据流图28.尔排序属于( )。(分数:-1.00)A.交换排序B.归并排序C.选择排序D.插入排序29.数据库管理系统 DBMS 中用来定义模式、内模式和外模式的语言为( )。(分数:-1.00)A.CB.BasicC.DDLD.DML30.数据结构中,与所使用的计算机无关的是数据的( )。(分数:-1.00)A.存储结构B.物理结构C.逻辑结构D.物理和存储结构31.在单链表中,增加头结点的目的是( )。(分数:-1.00)A.方便运算的实现B.使单链表至少有一个结点C.标识表结点中首结点的位
13、置D.说明单链表是线性表的链式存储实现32.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做( )。(分数:-1.00)A.软件投机B.软件危机C.软件工程D.软件产生33.循环链表的主要优点是( )。(分数:-1.00)A.不再需要头指针了B.从表中任一结点出发都能访问到整个链表C.在进行插入、删除运算时,能更好的保证链表不断开D.已知某个结点的位置后,能够容易的找到它的直接前件34.软件工程的理论和技术性研究的内容主要包括软件开发技术和( )。(分数:-1.00)A.消除软件危机B.软件工程管理C.程序设计自动化D.实现软件可重用35.最常用的一种基本数据模型是关系数据模型
14、,它的表示应采用( )。(分数:-1.00)A.树B.网络C.图D.二维表三、填空题(每空 2 分,共 30 分)(总题数:10,分数:30.00)36.以下程序输出的结果是 1。 #includeiostream.h voidmain( ) inta=5,b=4,c=3,d; d=(abc); coutd; (分数:3.00)填空项 1:_37.将 x+y 中的+运算符用友元函数重载应写为 1。(分数:3.00)填空项 1:_38.静态成员函数可以直接访问类的 1 成员,不能直接访问类的 2 成员。(分数:3.00)填空项 1:_39.为解决在多重继承环境中因公共基类带来的 1 问题,C+语
15、言提供了虚基类机制。(分数:3.00)填空项 1:_40.C+语言中的多态性是在编译时通过 1 和模板体现的,在运行时是通过 2 体现的。(分数:3.00)填空项 1:_41.设 i,j,k 均为 int 型变量,则执行完 for(i=0,j=10;i(1,2)B.add(1,2)C.add(10,2) D.add(10,20)解析:对于 template Tadd(T x,T y) return x + y; 调用时町以省略模板实参的声明,但是要求x 和 y 的数据类型必须是一样的。 5.如果友元函数重载一个运算符时,其参数表中没有任何参数则说明该运算符是( )。(分数:70.00)A.a(
16、3)=3B.a(3)=inputbox(“input data“)C.a(3)=ListlListlndexD.a=Array(1,2,3,4,5,6) 解析:在给数组赋值时,可以用一个字符串作为初值,这种方法直观,方便而且符合人们的习惯。数组array 的长度不是 5,而是 6,这点必须要注意。因为字符串常量的最后由系统加上一个/,因此,上面的初始化与下面的等价: chararray;C,h,i,na,/0; 6.下面程序错误的语句是( )。 # include iostreamh void main( ) int * p=new int1; p=9; cout * p endl; dele
17、te p; (分数:70.00)A.ValueB.VisibleC.DefaultD.Enabled 解析:将标题移动到页面页眉中,则标题在每一页上都显示;如果将标题移动到报表页眉中,则打印时只在第一页的开始位置出现。7.有以下程序 #include“iostream.h“ void main( ) int i=1,j=1,k=2; if( (j+|k+)&i+) cout i “,“ j “,“ k; cout end1; 执行后输出结果是( )。 (分数:70.00)A.1,1,2B.2,2,1C.2,2,2 D.2,2,3解析:本题考查 C+语言中“”和“&”运算符。该题目的关键是要搞清
18、楚“”和“&”两个逻辑运算符的运算功能。运算符“”和“&”是双目运算符,要求有两个运算量。且规定逻辑与运算中,只有前面运算量的值为真的,才需要判别后面的值。只要前面运算量为假,就不必判别后的值。而逻辑或则为只要前面的运算量为真,就不必判别后的值;只有前为假,才判别后。本题中 j+值为真,不进行 k+的运算,所以 k 的值保持不变。8.下面对静态数据成员的描述中,正确的是( )。(分数:70.00)A.各个记录中的数据彼此间有一定的关联关系B.数据模型符合满足一定条件的二维表格式 C.某两个数据库文件之间有一定的关系D.表中的两个字段有一定的关系解析:Visual FoxPro 就是一种关系数据
19、库管理系统,一个“表”就是一个关系,一个关系就是一个二维表。关系数据库管理系统可管理若干个二维表。9.当使用 fstream 流类定义一个流对象并打开一个磁盘文件时,文件的隐含打开方式为( )。(分数:70.00)A.类B.预处理命令C.主函数 D.语句解析:结合型控件主要用于显示、输入、更新数据库中的字段;非结合型控件没有数据来源可以显示信息、线条、矩形或图像;计算型控件用于表达式作为数据源,表达式可以利用窗体或报表所引用的表或查询字段中的数据,也可以是窗体或报表上的其他控件中的数据。 10.下列程序段的输出结果是( )。 #includeiostreamh void fun(int * X
20、,int * y) cout * X * y; * X=3; * y=4; void main( ) int x=1,y=2; fun(&y,&x); cout X y end1; (分数:70.00)A.public B.public 和 protectedC.priviteD.任意修饰符都可以,由系统随机选取解析:C+语言中用成员函数重载-x 为:xoperator-( ),用成员函数重载 x+y 为:xoperator+(y)。11.下面程序的输出结果是( )。 #includeiostream.h #includestring.h voidmain( ) charp110,p210;
21、strcpy(p1,“abc“); strcpy(p2,“ABC“); charstr50=“xyz“; strcpy(str+2,strcat(p1,p2); coutstr; (分数:70.00)A.xyzabcABCB.zabcABCC.xyabcABC D.yzabcABC解析:该函数的调用方式是 strcpy(字符数组,字符串)其中“字符串”可以是串常量,也可以是字符数组。函数的功能是将“字符串”完整地复制到“字符数组”中,字符数组中原有内容被覆盖。使用该函数时注意:字符数组必须定义得足够大,以便容纳复制过来的字符串。复制时,连同结束标志/0一起复制。不能用赋值运算符“=”将一个字符
22、串直接赋值给一个字符数组,只能用 strcpy()函数来处理。strcat(字符数组,字符串)功能是把“字符串”连接到“字符数组”中的字符串尾端,并存储于“字符数组”中。“字符数组”中原来的结束标志,被“字符串”的第一个字符覆盖,而“字符串”在操作中未被修改。使用该函数时注意:由于没有边界检查,编程者要注意保证“字符数组”定义得足够大,以便容纳连接后的目标字符串;否则,会因长度不够而产生问题。连接前两个字符串都有结束标志/0,连接后“字符数组”中存储的字符串的结束标志/0被舍弃,只在目标串的最后保留一个/0。12.下面的语句中错误的是( )。(分数:70.00)A.ItemListener B
23、.ActionListenerC.ContainerListenerD.WindowsListener解析:本题考查多态性的基本概念。多态性主要是指借助于指向对象的基类指针或引用调用一个虚函数。13.类 A 是类 B 的友元,类 B 是类 C 的友元,则下列说法正确的是( )。(分数:70.00)A.构造函数可以重载,析构函数不能重载 B.构造函数不能重载,析构函数可以重载C.构造函数可以重载,析构函数也可以重载D.构造函数不能重载,析构函数也不能重载解析:所谓的访问控制只包含公有类型、私有类型和保护类型 3 种,友元可以是一个函数,也可以是一个类。14.下面的哪个选项不能作为函数的返回类型?
24、(分数:70.00)A.NameB.CaptionC.PasswordChar D.Text解析:在 Visual Basic 中,控制控件有效性的属性是 Enabled,设置为 True,则处于有效状态,如果设置成 False,则处于无效状态,所以 D)是正确的;Visible 属性是控制 空间可见性的,有两种值:True和 False,默认情况下是 True;如果将对象的 Visible 值设为 False,窗体和控件在设计阶段仍可见,只有运行时才隐藏,所以 B)不正确;Default 是决定窗体的缺省命令的命令按钮的属性,另外,一个窗体只能有一个缺省命令按钮,所以选 项 C)也不正确;V
25、alue 属性在不同的控件中有不同的作用,也不是本题的答案。 15.对于重载的运算符 ,它是一个( )。(分数:70.00)A.用于输入的友元函数 B.用于输入的成员函数C.用于输出的友元函数D.用于输出的成员函数解析:本题考查 C+语言中 运算符的意义。C+语言中 和 运算符都是友元函数重载,分别用于输出和输入。16.下列程序的运行结果为( )。 #includeiostreamh void main( ) int a=2; int b=a+1; cout a/b endl; (分数:70.00)A.0.66667B.0 C.0.7D.0.66666666解析:表达式值的类型是由操作数的类型
26、决定的,因为本题的两个数都 是 int 型的,所以得出的结果也为 int 型,即去掉小数点后的部分,只取商的整数部分。17.下列关于多态性的描述,错误的是( )。(分数:70.00)A.INDEXON 籍贯,学号 TO JGXHB.INDEXON 籍贯+学号 TO JGXHC.INDEXON 籍贯,STR(学号,4)TO JGXHD.INDEXON 籍贯+STR(学号,4)TO JGXH 解析:PasswordChar 属性指定文本框控件内是显示用户输入的字符还是显示占位符。当为属性指定一个占位符(例如本题中的星号“*”) ,文本框中只显示占位符。由于一个汉字占两个字符位,因此本题在文本框中将
27、显示 8 个星号。18.以下能对二维数组 a 进行正确初始化的语句是( )。(分数:70.00)A.int a2 = 1,0,1,5,2,3;B.int a 3= 1,2,3,4,5,6; C.int a24= l,2,3,4,5,6 ;D.int a 3= 1,0,1, ,l,1 ;解析:本题考查对二维数组初始化知识点的掌握。在初始化语句时,需要注意下面几点:所赋初值个数与数组元素的个数相同;每行所赋初值个数与数组元素的个数不同时,系统将自动给该行其余的元素补初值 0;所赋初值行数少于数组行数时,系统将自动给后面各行的元素补初值 0;赋初值时省略行花括号对。在给二维数组赋初值时可以不用行花括
28、号对。注意:选项 A)中省略了第二维的大小,所以是错误的;选项 C)超出了数组的定义范围,所以是错误的;选项 D)在初始化赋值的时候出现了错误。19.C+语言中标点符号中表示一条预处理命令开始的是( )。(分数:70.00)A.# B.;C.解析:C+语言中预处理语句的开始符号是#。20.对类的构造函数和析构函数描述正确的是( )。(分数:70.00)A.构造函数可以重载,析构函数不能重载 B.构造函数不能重载,析构函数可以重载C.构造函数可以重载,析构函数也可以重载D.构造函数不能重载,析构函数也不能重载解析:一个类中只能定义一个析构函数,否则会造成对同一对象的多次 删除;而构造函数可以根据
29、不同的参数个数和类型进行多次重载。21.C+语言是以哪种语言为基础逐渐发展演变而成的一种程序设计语言( )。(分数:70.00)A.满足一定规范化要求的二维表 B.二维表中的一行C.二维表中的一列D.二维表中的一个数字项解析:Java 中公有变量使用 public 定义,定义常量变量使用 final,另外注 意的是修饰符的顺序,一个最完整的修饰是 public static final int varial_a=100;这个顺序 不能变,而选项 C)错在修饰符的顺序上。22.所有在函数中定义的变量,连同形式参数,都属于( )。(分数:70.00)A.全局变量B.局部变量 C.静态变量D.寄存器
30、变量解析:C+语言函数中定义的变量都是属于这个函数的局部变量。23.对于语句 cout setfill(*) setw(10) 1 setfill(*) setw(2) 2;的输出结果是 ( )。(分数:70.00)A.* * * * * * * * * 1 * 2 B.* * * * * * * * 12C.* * * * * * * 1 * 2D.12 * * * * * * * *解析:C+语言中 setfil1 的意思是在空格的地方填上 setfil1 函数中的参数字符,setw 的意思是没置整个输出字符串的字符个数,本题中用:来代替空格。24.while 和 do-while 循环的
31、主要区别是( )。(分数:70.00)A.do-while 的循环体至少无条件执行一次 B.while 的循环控制条件比 do-while 的循环控制条件更严格C.do-while 允许从外部转到循环体内D.do-while 的循环体不能是复合语句解析:while 是先判断条件再执行语句;do-while 则是先执行一次语句再判断条件,从而决定是否继续再执行循环体中的语句,这正是二者主要区别。25.下面关于 C+语言变量的叙述错误的是( )。(分数:70.00)A.字段变量的值 B.内存变量的值C.随机显示D.错误信息解析:使用 SET PROCEDURETO 命令可以将过程或函数放在单独的程
32、序文件中,选项 B)用于设置键盘功能键,选项 A)和选项 C)语法错误。26.下列选项中,不属于模块间耦合的是( )。(分数:-1.00)A.数据耦合B.同构耦合C.异构耦合 D.公用耦合解析:模块之间的耦合程度反映了模块的独立性,也反映了系统分解后的复杂程度。按照耦合程度从弱到强,可以将其分成 5 级,分别是:数据耦合、同构耦合、控制耦合、公用耦合和内容耦合。选项 C),没有这种耦合方式。27.为了避免流程图在描述程序逻辑时的灵活性,提出了用方框图来代替传统的程序流程图,通常也把这种图称为( )。(分数:-1.00)A.PAD 图B.N-S 图 C.结构图D.数据流图解析:常见的过程设计工具
33、有:程序流程图,N-s 图、PAD 图和 HIPO 图。其中,为了避免流程图在描述程序逻辑时的灵活性,提出了用方框图来代替传统的程序流程图,通常也把这种图称为 N-S 图。28.尔排序属于( )。(分数:-1.00)A.交换排序B.归并排序C.选择排序D.插入排序 解析:希尔排序的基本思想是把记录按下标的一定增量分组,对每组记录使用插入排序,随增量的逐渐减小,所分成的组包含的记录越来越多,到增量的值减小到 1 时,整个数据合成一组,构成一组有序记录,故其属于插入排序方法。29.数据库管理系统 DBMS 中用来定义模式、内模式和外模式的语言为( )。(分数:-1.00)A.CB.BasicC.D
34、DL D.DML解析:选项 A)、选项 B)显然不合题意。数据定义语言(Data Definition Language,简称 DDL)负责数据的模式定义与数据的物理存取构建;数据操纵语言(Data Manipulation language,简称 DML)负责数据的操纵,包括查询及增、删、改等操作。30.数据结构中,与所使用的计算机无关的是数据的( )。(分数:-1.00)A.存储结构B.物理结构C.逻辑结构 D.物理和存储结构解析:数据结构概念一般包括 3 个方面的内容,数据的逻辑结构、存储结构及数据上的运算集合。数据的逻辑结构只抽象的反映数据元素之间的逻辑关系,而不管它在计算机中的存储表
35、示形式。31.在单链表中,增加头结点的目的是( )。(分数:-1.00)A.方便运算的实现 B.使单链表至少有一个结点C.标识表结点中首结点的位置D.说明单链表是线性表的链式存储实现解析:头结点不仅标识了表中首结点的位置,而且根据单链表(包含头结点)的结构,只要掌握了表头,就能够访问整个链表,因此增加头结点的目的是为了便于运算的实现。32.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做( )。(分数:-1.00)A.软件投机B.软件危机 C.软件工程D.软件产生解析:软件工程概念的出现源自软件危机。所谓软件危机是泛指在计算机软件的开发和维护过程中所遇到的 一系列严重问题。总之
36、,可以将软件危机归结为成本、质量、生产率等问题。33.循环链表的主要优点是( )。(分数:-1.00)A.不再需要头指针了B.从表中任一结点出发都能访问到整个链表 C.在进行插入、删除运算时,能更好的保证链表不断开D.已知某个结点的位置后,能够容易的找到它的直接前件解析:循环链表就是将单向链表中最后一个结点的指针指向头结点,使整个链表构成一个环形,这样的结构使得从表中的任一结点出发都能访问到整个链表。34.软件工程的理论和技术性研究的内容主要包括软件开发技术和( )。(分数:-1.00)A.消除软件危机B.软件工程管理 C.程序设计自动化D.实现软件可重用解析:软件工程的目标是,在给定的成本、
37、进度的前提下,开发出具有有效性、可靠性、可理解性、可维护性、可 重用性、可适应性、可移植性、可追踪性和可互操作性且满足用户需求的产品。基于这一目标,软件工程的理论和技术性研究 的内容主要包括:软件开发技术和软件工程管理。35.最常用的一种基本数据模型是关系数据模型,它的表示应采用( )。(分数:-1.00)A.树B.网络C.图D.二维表 解析:关系数据模型用统一的二维表结构表示实体及实体之间的联系(即关系)。三、填空题(每空 2 分,共 30 分)(总题数:10,分数:30.00)36.以下程序输出的结果是 1。 #includeiostream.h voidmain( ) inta=5,b=
38、4,c=3,d; d=(abc); coutd; (分数:3.00)填空项 1:_ (正确答案:0)解析:本题的关键在于对变量 c 的赋值运算: d=(abc) d=(543) 先算 54,为真,得 1,即:d=(13),此时 13,为假,得 0。 37.将 x+y 中的+运算符用友元函数重载应写为 1。(分数:3.00)填空项 1:_ (正确答案:operator+(x,y))解析:C+中用成员函数重载 x+y 为 xoperator+(y);,用友元函数重载 x+y 为 operator+(x,y)。 38.静态成员函数可以直接访问类的 1 成员,不能直接访问类的 2 成员。(分数:3.0
39、0)填空项 1:_ (正确答案:静态)解析:静态成员函数可以直接访问该类中的静态数据成员,而不能访问该类中的非静态数据成员。39.为解决在多重继承环境中因公共基类带来的 1 问题,C+语言提供了虚基类机制。(分数:3.00)填空项 1:_ (正确答案:二义性)解析:本题考查关于 C+中虚基类的作用。C+中产生虚基类的作用就是为了解决继承中的二义性问题,通过虚基类继承可以把父基类中相同的函数只编译一次。 40.C+语言中的多态性是在编译时通过 1 和模板体现的,在运行时是通过 2 体现的。(分数:3.00)填空项 1:_ (正确答案:函数重载)解析:C+中的多态性是在编译时通过函数重载和模板体现
40、的,在运行时是通过虚函数体现的。 41.设 i,j,k 均为 int 型变量,则执行完 for(i=0,j=10;ibc) d=(543) 先算 54,为真,得 1,即:d=(13),此时 13,为假,得 0。 46.用树型结构表示实体类型及实体间联系的数据模型称为 1(分数:-1.00)填空项 1:_ (正确答案:层次模型)解析:用树型结构表示实体类型及实体间联系的数据模型称为层次模型,用有向图结构表示实体类型及实体间联系的数据模型称为网状 模型,用二维表格结构表示实体及其联系的数据模型称为关系模型。47.当循环队列非空且队尾指针等于队头指针时,说明循环队列已满,不能进行入队运算。这种情况称
41、为 1。(分数:-1.00)填空项 1:_ (正确答案:上溢)解析:本题考查了队列的基本性质。入队运算是指在循环队列的队尾加入一个新元素。这个运算有两个基本操作:首先将队尾指针进一(即 rear=rear+1),并当 lear=m+1 时置 rear=1;然后将新元素插入队尾指针指向的位置。当循环队列非空(s=1)时且队尾指针等于队头指针时,说明循环队列已满,不能进行入队运算,这种情况称为“上溢”。 48.面向对象的设计中,用来请求对象执行某一处理或回答某些信息的要求称为 1。(分数:-1.00)填空项 1:_ (正确答案:消息)解析:在面向对象技术中,主要用到对象(object)、类(cla
42、ss)、方法(methoD) 、消息(message)、继承(inheritance)、封装(encapsulation)等基本概念。其中消息是用来请求对象执行某一处理或回答某些信息的要求。 49.用链表表示线性表的突出优点是 1。(分数:-1.00)填空项 1:_ (正确答案:便于插入和删除操作)解析:为了克服顺序表中插入和删除时需要移动大量数据元素的缺点,引入了链式存储结构。链表表示线性表的突出优点是插入和删除操作方便,不必移动数据元素,执行效率高。50.一个项目具有一个项目主管,一个项目主管可管理多个项目,则实体“项目主管”与实体 “项目”的联系属于 1 的联系。 (分数:-1.00)填空项 1:_ (正确答案:一对多(或 1:N))解析:两个实体集间的联系实际上是实体集间的函数关系,这种函数关系可以有 3 种,即一对一(1:1)的联系、一对多(1:N)或多对一(N:1)的联系和多对多(N:N)的联系。
copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1