2009年10月自学考试C++程序设计试题及答案
- 格式:doc
- 大小:102.00 KB
- 文档页数:12
2009年10月全国自考Java语言程序设计(一)真题及答案一、单项选择题(本大题共10小题,每小题1分,共10分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.下面供选字符序列中,不属于Java语言关键字的是() (1分)A:gotoB:nullC:falseD:native2.以下程序代码的输出结果是()int x=73;System.out.println(x>>1);(1分)A:36B:36.5C:37D:true3.Java语言中,在类定义时用final关键字修饰,是指这个类() (1分)A:不能被继承B:在子类的方法中不能被调用C:能被别的程序自由调用D:不能被子类的方法覆盖4.以下是关于字符串运算的代码,执行该代码段的输出结果是()String s=″0123456789″,s1,s2;s1=s.substring(2);s2=s.substring(2,5);System.out.println(s1+s2);(1分)A:0122345B:234567892345C:012234D:234567892345.以下是关于FlowLayout布局组件排列顺序的叙述,正确的是() (1分)A:从上到下排列B:从左到右排列C:从下到上排列D:从右到左排列6.程序执行方法showOpenDialog(),能打开“打开文件对话框”,如果该方法的返回值是JFileChooser.APPROVE_OPTION,则用户执行的动作是() (1分)A:对话框非正常关闭B:按下“打开/保存”按钮C:按下“撤销”按钮D:重新输入了一个文件名7.设已经有Graphics2D对象g2d,Rectangle2D对象r,绘制对象r的代码是() (1分)A:g2d.draw(r)B:g2d.drawRect(r)C:r.draw()D:r.drawRect()8.在以下供选择的方法中,能让线程从阻塞状态恢复到就绪状态的方法是() (1分)A:start()B:init()C:resume()D:run()9.在以下供选择的方法中,不能用于文件随机访问的方法是() (1分)A:readChar()B:readLong()C:readInteger()D:writeChars()10.某程序利用网址参数创建URL对象url,接着希望利用对象url获得URLConnection对象,则这个url对象要调用的方法是() (1分)A:connection()B:URLConnection()C:getConnection()D:openConnection()二、填空题(本大题共10小题,每小题2分,共20分)请在每小题的空格中填上正确答案。
2009年10月全国自考Java语言程序设计(一)参考答案一、单项选择题 (本大题共10小题,每小题1分,共10分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1:参考答案:C2:参考答案:A3:参考答案:A4:参考答案:D5:参考答案:B6:参考答案:B7:参考答案:A8:参考答案:C9:参考答案:C10:参考答案:D二、填空题 (本大题共10小题,每小题2分,共20分)请在每小题的空格中填上正确答案。
错填、不填均无分。
1:参考答案:main()2:参考答案:import包名.类名;3:参考答案:相互发送消息4:参考答案:是否引用同一个对象5:参考答案:外观与风格6:参考答案:KeyListener7:参考答案:左上角8:参考答案:wait()9:参考答案:readLine()10:参考答案:IP地址和域名三、简答题 (本大题共6小题,每小题3分,共18分)1:参考答案:if(x>=0)y=x;elsey=-x;2:参考答案:4,5,6行错误3:参考答案:源对象、监视器对象、事件对象4:参考答案:Font fn=new Font("Courier",Font.BOLD,18);g.setFont(fn);5:参考答案:FileInputStream(String name)FileInputStream(File filename)FileOutputStream(String name)FileOutputStream(File filename)6:参考答案:流式socket和数据报式socket四、程序填空题 (本大题共5小题,每空2分,共20分)1:参考答案:i<a.lengtha[i]%2==02:参考答案:getActionCommand()append3:参考答案:radioNameList[i]isSelected()4:参考答案:getDocumentBase()this5:参考答案:getData()+deltanotify()五、程序分析题 (本大题共5小题,每小题4分,共20分)1:参考答案:fOb:Name:May FlowerBirth Year:1980Flower:true(2分)sOb:Name:PineBirth Year:2000Flower:falseConiferous:true(2分)2:参考答案:5671112(4分)3:参考答案:以文本框输入的数字为半径,(1分)以(10,10)为左上角,(1分)填充一个红色(1分)的圆。
全国2009年10月高等教育自学考试C++程序设计试题课程代码:04737一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.对C++中主函数描述正确的是( )A.名称为main,可为多个B.名称不限,可为多个C.名称为main,必须有且只能有一个D.名称不限,必须有且只能有一个2.调用声明为int result(int a,int b)的函数时,正确的方法是( )A.result(1,2)B.result(1)C.result(0.1,0.3)D.result(1,2,3)3.用于包含C++标准库iostream的预处理指令是( )A.#define<iostream>B.#include<iostream>C.#define ‘iostream’D.#include‘iostream’4.无类型标识符是指( )A.voidB.boolC.shortD.long5.从本质上看,引用是被引用变量的( )A.拷贝B.别名C.复制D.克隆6.下面关于数组的初始化正确的是( )A.char str[ ]={'a','b','c'};B.char str[2]={'a','b','c'};C.char str[1][2]={{'a','b'},{'e','d'}};D.char str[ ][ ]={'a','b','c'};7.C++类中定义的成员默认访问属性为( )A.publicB.privateC.protectedD.friend1文档来源为:从网络收集整理.word版本可编辑.8.决定C++语言中函数的返回值类型的是( )A.return语句中的表达式类型B.调用该函数时系统随机产生的类型C.调用该函数时的主调用函数类型D.在定义该函数时所指定的数据类型9.函数int & min(int &,int &)返回参数中较小者,设有两整型变量int a=10;int b=15;在执行语句min(a,b)--;之后,a,b值分别为( )A.9,14B.9,15C.10,14D.10,1510.声明函数为内联函数时所使用的关键字为( )A.constB.inlineC.shortD.signed11.函数int sum(int a=l,int b=1,int c=3)可与下列哪个函数同时声明( )A.double sum(int);B.char sum(int,int);C.int sum(double);D.int sum(int,int,int);12.函数模板template<typename T> void Func(T,T)可具有下列哪种实例化形式( )A.void Func(float,int)B.void Func(char,char)C.void Func(int,double)D.void Func(bool,float)13.下列访问成员的方式哪个是正确的( )A.对象名.对象成员名B.对象指针名.对象成员名C.对象名→对象成员名D.类名→对象成员名14.对类A,复制构造函数的原型是( )A.A::A(const A&);B.A::A(const A *);C.A::A(const A);D.A::A( );15.对class point,如使用point * ptr=new point[2];创建对象数组,则删除此数组使用的语句是( )A.delete ptr[2];B.delete[ ] ptr;C.delete ptr[ ];D.delete[2] ptr;16.下列哪个编译指令不属于条件编译指令( )A.#ifB.#else1文档来源为:从网络收集整理.word版本可编辑.C.#endifD.#error17.类A中存在静态数据成员x,设a和b是类A的两个对象,在执行a.x=10之后,b.x的值为( )A.未初始化B.等于a.xC.等于0D.随机18.使用string.h库操纵字符串时,将两个字符串连接成一个字符串的函数是( )A.strlen()B.strcap()C.strcat()D.strcmp()19.基类中的public成员,通过public派生,其在派生类中的访问权限为( )A.不可访问B.privateC.protectedD.public20.不同对象调用同名函数,但导致完全不同行为的现象称为( )A.抽象B.封装C.继承D.多态性二、填空题(本大题共20小题,每小题1分,共20分)请在每小题的空格中填上正确答案。
全国C程序设计2009年10月高等教育自学考试试题与答案全国2009年10月高等教育自学考试C++程序设计试题课程代码:04737一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.对C++中主函数描述正确的是( )A.名称为main,可为多个B.名称不限,可为多个C.名称为main,必须有且只能有一个D.名称不限,必须有且只能有一个2.调用声明为int result(int a,int b)的函数时,正确的方法是( )A.result(1,2)B.result(1)C.result(0.1,0.3)D.result(1,2,3)3.用于包含C++标准库iostream的预处理指令是( )A.#defineB.#includeC.#define ‘iostream’D.#include‘iostream’4.无类型标识符是指( )A.voidB.boolC.shortD.long5.从本质上看,引用是被引用变量的( )A.拷贝B.别名C.复制D.克隆6.下面关于数组的初始化正确的是( )A.char str[ ]={'a','b','c'};B.char str[2]={'a','b','c'};C.char str[1][2]={{'a','b'},{'e','d'}};D.char str[ ][ ]={'a','b','c'};7.C++类中定义的成员默认访问属性为( )A.publicB.privateC.protectedD.friend8.决定C++语言中函数的返回值类型的是( )A.return语句中的表达式类型B.调用该函数时系统随机产生的类型C.调用该函数时的主调用函数类型D.在定义该函数时所指定的数据类型9.函数int & min(int &,int &)返回参数中较小者,设有两整型变量int a=10;int b=15;在执行语句min(a,b)--;之后,a,b值分别为( )A.9,14B.9,15C.10,14D.10,15浙04737# C++ 程序设计试卷第 1 页(共12 页)10.声明函数为内联函数时所使用的关键字为( )A.constB.inlineC.shortD.signed11.函数int sum(int a=l,int b=1,int c=3)可与下列哪个函数同时声明( )A.double sum(int);B.char sum(int,int);C.int sum(double);D.int sum(int,int,int);12.函数模板template void Func(T,T)可具有下列哪种实例化形式( )A.void Func(float,int)B.void Func(char,char)C.void Func(int,double)D.void Func(bool,float)13.下列访问成员的方式哪个是正确的( )A.对象名.对象成员名B.对象指针名.对象成员名C.对象名→对象成员名D.类名→对象成员名14.对类A,复制构造函数的原型是( )A.A::A(const A&);B.A::A(const A *);C.A::A(const A);D.A::A( );15.对class point,如使用point * ptr=new point[2];创建对象数组,则删除此数组使用的语句是( )A.delete ptr[2];B.delete[ ] ptr;C.delete ptr[ ];D.delete[2] ptr;16.下列哪个编译指令不属于条件编译指令( )A.#ifB.#elseC.#endifD.#error17.类A中存在静态数据成员x,设a和b是类A的两个对象,在执行a.x=10之后,b.x的值为( )A.未初始化B.等于a.xC.等于0D.随机18.使用string.h库操纵字符串时,将两个字符串连接成一个字符串的函数是( )A.strlen()B.strcap()C.strcat()D.strcmp()19.基类中的public成员,通过public派生,其在派生类中的访问权限为( )A.不可访问B.privateC.protectedD.public20.不同对象调用同名函数,但导致完全不同行为的现象称为( )A.抽象B.封装C.继承D.多态性二、填空题(本大题共20小题,每小题1分,共20分)请在每小题的空格中填上正确答案。
自考 c 程序试题及答案一、选择题(每题4分,共20分)1. 下列哪个选项是 C 语言关键字?A. intB. printfC. mainD. include2. 在 C 语言中,以下哪个选项可以用于读取用户输入?A. printB. inputC. scanD. scanf3. 下列哪个选项是用来声明一个整型变量?A. charB. floatC. intD. double4. 如果要判断两个变量是否相等,应使用哪个运算符?A. =B. ==C. >D. <5. 下列哪个选项用于将一个整型值转换为字符型?A. atoi()B. itoa()C. sprintf()D. cast()二、填空题(每题4分,共20分)1. 在 C 语言中,用于循环执行代码块的关键字是____。
2. 当变量的值大于或等于某个特定值时,才会继续执行循环,这个循环结构是____。
3. 在 C 语言中,用于分支选择的关键字是____。
4. 在 C 语言中,用于定义常量的关键字是____。
5. C 语言中表示逻辑非的运算符是____。
三、编程题(共60分)请编写一个 C 语言程序,要求能够根据用户输入的学生成绩输出相应的等级。
规定如下:90 分及以上为优秀,80 分及以上为良好,70 分及以上为中等,60 分及以上为及格,60 分以下为不及格。
程序运行示例1:输入成绩:85输出等级:良好程序运行示例2:输入成绩:72输出等级:中等程序运行示例3:输入成绩:58输出等级:不及格(提示:可以使用 if-else if-else 结构来实现条件判断,根据不同的成绩范围输出不同的等级。
)四、答案解析一、选择题答案:1. A 2. D 3. C 4. B 5. A二、填空题答案:1. for 2. do-while 3. if 4. const 5. !三、编程题答案:```c#include <stdio.h>int main() {int score;printf("请输入成绩:"); scanf("%d", &score);if (score >= 90) {printf("等级:优秀"); } else if (score >= 80) {printf("等级:良好"); } else if (score >= 70) {printf("等级:中等"); } else if (score >= 60) {printf("等级:及格"); } else {printf("等级:不及格"); }return 0;}```注意:以上程序仅为参考答案,实际编程过程中可以有多种实现方式。
中国自考人()--700门自考课程永久免费、完整在线学习快快加入我们吧!全国2013年1月自学考试C加加程序设计试题课程代码:04737请考生按规定用笔将所有试题的答案涂、写在答题纸上。
选择题部分注意事项:1. 答题前,考生务必将自己的考试课程名称、姓名、准考证号用黑色字迹的签字笔或钢笔填写在答题纸规定的位置上。
2. 每小题选出答案后,用2B铅笔把答题纸上对应题目的答案标号涂黑。
如需改动,用橡皮擦干净后,再选涂其他答案标号。
不能答在试题卷上。
一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其选出并将“答题纸”的相应代码涂黑。
错涂、多涂或未涂均无分。
1.下列不属于C++关键字的是A. externB.gotoC.freeD.default2.C++中定义标准输入输出的库为A.stdioB.mathC.iostreamD.stdlib3.My是一个类,则执行语句My a[3],*p[2]之后,自动调用构造函数次数为A.2B.3C.4D.54.下列语句错误的是A. int val( 20);B.extern int val( 20);C. const int val;D.extern const int val;5.下列说法中,有关构造函数是正确的是1 / 13A.任何一类必定有构造函数B.可定义没有构造函数的类C.构造函数不能重载D.任何一类必定有缺省的构造函数6.下面关于类和对象说法不正确是A.类由数据与函数组成B.一个对象必属于某个类C.对象是类的实例D.一个类的对象只有一个7.下面选项中不是类成员函数的是A.构造函数B.析构函数C.友元函数D.静态函数8.在C++中类之间的继承关系具有A.自反性B.对称性C.传递性D.反对称性9.C++中类的成员默认为A. publicB.privateC.protectedD.static10.C++中要实现动态联编,调用虚函数时必须使用A.基类指针B.类名C.派生类指针D.对象名11.下面对析构函数的正确描述是A.系统不能提供默认的析构函数B.析构函数必须由用户定义C.析构函数没有参数D.析构函数可以设置默认参数12.在下面的二维数定义正确的是A.int ary[5][];B.int ary[][5]={{0,1,2}};C.int ary[][5];D.int ary[5,5];13.以下说法中正确的是A.C++程序总是从第一个定义的函数开始执行B.C++程序总是从main函数开始执行C.C++中函数必须有返回值D.C++中函数名必须唯一14.对C++中主函数描述正确的是A.名称为main,可为多个B.名称不限,可为多个2 / 13C.名称为main,必须有且只能有—个D.名称不限,必须有且只能有—个15.下面声明纯虚函数语句正确的是A. void fun( ) =0;B.virtual void fun( )=0;C. virtual void fun( );D.virtual void fun( ){ };16.对于拷贝初始化构造函数和赋值操作的关系,正确的描述是A.拷贝初始化构造函数和赋值操作是完全一样的操作B.进行赋值操作时,会调用类的构造函数C.当调用拷贝初始化构造函数时,类的对象正在被建立并被初始化D.拷贝初始化构造函数和赋值操作不能在同一个类中被同时定义17.使用重载函数的目的是A.共享函数数据B.减少代码量C.优化运行效率D.提高可读性18.C++语言对C语言做了很多改进,C++语言相对于C语言的最根本的变化是A.增加了一些新的运算符B.允许函数重载,并允许设置缺省参数C.规定函数说明符必须用原型D.引进了类和对象的概念19.假定有“char*p=“Hello”;”,若要输出这个字符串的地址值正确的写法为A. cout<<*p;B.cout<<p;C. cout<<&p;D.cout<< (void*)p;20.对类成员访问权限的控制,是通过设置成员的访问控制属性实现的,下列不是访问控制属性的是A.公有类型 B.私有类型C.保护类型 D.友元类型3 / 13非选择题部分注意事项:用黑色字迹的签字笔或钢笔将答案写在答题纸上,不能答在试题卷上。
更多优质自考资料尽在百度贴吧自考乐园俱乐部(/club/5346389)欢迎❤加入...欢迎❤交流...止不住的惊喜等着你.........2009年10月全国自考数据结构真题一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.按值可否分解,数据类型通常可分为两类,它们是()A.静态类型和动态类型B.原子类型和表类型C.原子类型和结构类型D.数组类型和指针类型答案:C2.A. AB. BC. CD. D答案:C3.指针p、q和r依次指向某循环链表中三个相邻的结点,交换结点*q和结点*r在表中次序的程序段是()A.p->next=r;q->next=r->next;r->next=q;B.p->next=r;r->next=q;q->next=r->next;C.r->next=q;q->next=r->next;p->next=r;D.r->next=q;p->next=r;q->next=r->next;答案:A4.若进栈次序为a,b,c,且进栈和出栈可以穿插进行,则可能出现的含3个元素的出栈序列个数是()A. 3B. 5C. 6D.7答案:B5.假设以数组A[n]存放循环队列的元素,其头指针front指向队头元素的前一个位置、尾指针rear指向队尾元素所在的存储位置,则在少用一个元素空间的前提下,队列满的判定条件为()A.rear==frontB.(front+1)%n==rearC.rear+1==frontD.(rear+1)%n==front答案:D6.串的操作函数str定义为:A. 3B. 4C. 5D. 6答案:C7.二维数组A[10][6]采用行优先的存储方法,若每个元素占4个存储单元,已知元素A[3][4]的存储地址为1000,则元素A[4][3]的存储地址为()A.1020B.1024C.1036D.1240答案:A8.对广义表L= (a,())执行操作tail(L)的结果是()A.()B.(())C. aD.(a)答案:B9.已知二叉树的中序序列和后序序列均为ABCDEF,则该二叉树的先序序列为()A.FEDCBAB.ABCDEFC.FDECBAD.FBDCEA答案:A10.已知森林F={T1,T2,T3,T4,T5},各棵树Ti(i=1,2,3,4,5)中所含结点的个数分别为7,3,5,1,2,则与F对应的二叉树的右子树中的结点个数为()A. 2B. 3C.8D.11答案:D11.若非连通无向图G含有21条边,则G的顶点个数至少为()A.7B.8C.21D.22答案:B12.如图所示的有向图的拓扑序列是()A.c,d,b,a,eB.c,a,d,b,eC.c,d,e,a,bD.c,a,b,d,e答案:B13.对关键字序列(6,1,4,3,7,2,8,5)进行快速排序时,以第1个元素为基准的一次划分的结果为()A.(5,1,4,3,6,2,8,7)B.(5,1,4,3,2,6,7,8)C.(5,1,4,3,2,6,8,7)D.(8,7,6,5,4,3,2,1)答案:C14.分块查找方法将表分为多块,并要求()A.块内有序B.块间有序C.各块等长D.链式存储答案:B15.便于进行布尔查询的文件组织方式是()A.顺序文件B.索引文件C.散列文件D.多关键字文件答案:二、填空题(本大题共10小题,每小题2分,若有两个空格,每个空格1分,共20分)请在每个空格中填上正确答案。
2009年10月自学考试C++程序设计试题全国2009年10月自学考试C++程序设计试题课程代码:04737一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.对C++中主函数描述正确的是( )A.名称为main,可为多个B.名称不限,可为多个C.名称为main,必须有且只能有一个D.名称不限,必须有且只能有一个2.调用声明为int result(int a,int b)的函数时,正确的方法是( )A.result(1,2)B.result(1)C.result(0.1,0.3)D.result(1,2,3)3.用于包含C++标准库iostream的预处理指令是( )A.#define<iostream>B.#include<iostream>C.#define ‘iostream’D.#include‘iostream’4.无类型标识符是指( )A.voidB.boolD.long5.从本质上看,引用是被引用变量的( )A.拷贝B.别名C.复制D.克隆6.下面关于数组的初始化正确的是( )A.char str[ ]={'a','b','c'};B.char str[2]={'a','b','c'};C.char str[1][2]={{'a','b'},{'e','d'}};D.char str[ ][ ]={'a','b','c'};7.C++类中定义的成员默认访问属性为( )A.publicB.privateC.protectedD.friend8.决定C++语言中函数的返回值类型的是( )A.return语句中的表达式类型B.调用该函数时系统随机产生的类型C.调用该函数时的主调用函数类型D.在定义该函数时所指定的数据类型9.函数int & min(int &,int &)返回参数中较小者,设有两整型变量int a=10;int b=15;在执行语句min(a,b)--;之后,a,b值分别为( )B.9,15C.10,14D.10,1510.声明函数为内联函数时所使用的关键字为( )A.constB.inlineC.shortD.signed11.函数int sum(int a=l,int b=1,int c=3)可与下列哪个函数同时声明( )A.double sum(int);B.char sum(int,int);C.int sum(double);D.int sum(int,int,int);12.函数模板template<typename T> void Func(T,T)可具有下列哪种实例化形式( )A.void Func(float,int)B.void Func(char,char)C.void Func(int,double)D.void Func(bool,float)13.下列访问成员的方式哪个是正确的( )A.对象名.对象成员名B.对象指针名.对象成员名C.对象名→对象成员名D.类名→对象成员名14.对类A,复制构造函数的原型是( )A.A::A(const A&);B.A::A(const A *);C.A::A(const A);D.A::A( );15.对class point,如使用point * ptr=new point[2];创建对象数组,则删除此数组使用的语句是( )A.delete ptr[2];B.delete[ ] ptr;C.delete ptr[ ];D.delete[2] ptr;16.下列哪个编译指令不属于条件编译指令( )A.#ifB.#elseC.#endifD.#error17.类A中存在静态数据成员x,设a和b是类A的两个对象,在执行a.x=10之后,b.x的值为( )A.未初始化B.等于a.xC.等于0D.随机18.使用string.h库操纵字符串时,将两个字符串连接成一个字符串的函数是( )A.strlen()B.strcap()C.strcat()D.strcmp()19.基类中的public成员,通过public派生,其在派生类中的访问权限为( )A.不可访问B.privateC.protectedD.public20.不同对象调用同名函数,但导致完全不同行为的现象称为( )A.抽象B.封装C.继承D.多态性二、填空题(本大题共20小题,每小题1分,共20分)请在每小题的空格中填上正确答案。
全国2009年10月自学考试C++程序设计试题课程代码:04737一、单项选择题(本大题共20小题,每小题1分,共20分)1.对C++中主函数描述正确的是( )A.名称为main,可为多个B.名称不限,可为多个C.名称为main,必须有且只能有一个D.名称不限,必须有且只能有一个2.调用声明为int result(int a,int b)的函数时,正确的方法是( )A.result(1,2)B.result(1)C.result(0.1,0.3)D.result(1,2,3)3.用于包含C++标准库iostream的预处理指令是( )A.#define<iostream>B.#include<iostream>C.#define ‘iostream’D.#include‘iostream’4.无类型标识符是指( )A.voidB.boolC.shortD.long5.从本质上看,引用是被引用变量的( )A.拷贝B.别名C.复制D.克隆6.下面关于数组的初始化正确的是( )A.char str[ ]={'a','b','c'};B.char str[2]={'a','b','c'};C.char str[1][2]={{'a','b'},{'e','d'}};D.char str[ ][ ]={'a','b','c'};7.C++类中定义的成员默认访问属性为( )A.publicB.privateC.protectedD.friend8.决定C++语言中函数的返回值类型的是( )A.return语句中的表达式类型B.调用该函数时系统随机产生的类型C.调用该函数时的主调用函数类型D.在定义该函数时所指定的数据类型9.函数int & min(int &,int &)返回参数中较小者,设有两整型变量int a=10;int b=15;在执行语句min(a,b)--;之后,a,b值分别为( )A.9,14B.9,15C.10,14D.10,1510.声明函数为内联函数时所使用的关键字为( )A.constB.inlineC.shortD.signed11.函数int sum(int a=l,int b=1,int c=3)可与下列哪个函数同时声明( )A.double sum(int);B.char sum(int,int);C.int sum(double);D.int sum(int,int,int);12.函数模板template<typename T> void Func(T,T)可具有下列哪种实例化形式( )A.void Func(float,int)B.void Func(char,char)C.void Func(int,double)D.void Func(bool,float)13.下列访问成员的方式哪个是正确的( )A.对象名.对象成员名B.对象指针名.对象成员名C.对象名→对象成员名D.类名→对象成员名14.对类A,复制构造函数的原型是( )A.A::A(const A&);B.A::A(const A *);C.A::A(const A);D.A::A( );15.对class point,如使用point * ptr=new point[2];创建对象数组,则删除此数组使用的语句是( )A.delete ptr[2];B.delete[ ] ptr;C.delete ptr[ ];D.delete[2] ptr;16.下列哪个编译指令不属于条件编译指令( )A.#ifB.#elseC.#endifD.#error17.类A中存在静态数据成员x,设a和b是类A的两个对象,在执行a.x=10之后,b.x的值为( )A.未初始化B.等于a.xC.等于0D.随机18.使用string.h库操纵字符串时,将两个字符串连接成一个字符串的函数是( )A.strlen()B.strcap()C.strcat()D.strcmp()19.基类中的public成员,通过public派生,其在派生类中的访问权限为( )A.不可访问B.privateC.protectedD.public20.不同对象调用同名函数,但导致完全不同行为的现象称为( )A.抽象B.封装C.继承D.多态性二、填空题(本大题共20小题,每小题1分,共20分)请在每小题的空格中填上正确答案。
错填、不填均无分。
21.在C++语言的面向对象设计框架中,_______是程序的基本组成单元。
22.执行代码double pi=3.1415192; cout < < setprecision (3) < < pi;程序的输出结果是_______。
23.C++语言提供的的基本控制结构可以分为3种类型:顺序结构、_______和循环结构。
24.要使用STL库提供的对数组进行降幂排序算法,在源程序中需要包含的头文件是______。
25.在C++标准库中,用_______类来表示复数。
26.将对象作为函数参数,是将实参对象的_______传递给形参对象,这种传递是单向的。
27.C++函数的返回类型可以是除数组与_______以外的任何类型。
28.能提供封装的C++关键字是_______。
29.在C++的类声明中,用public关键字声明的类成员的访问权限是_______。
30.开发一个C++语言程序的步骤通常包括编辑、_______、连接、运行和调试。
31.C++类中的_______函数在对象的生存期结束时被自动调用。
32.友元函数可以存取类的_______、公有成员和保护成员。
33.若类的成员函数用关键字static进行修饰,这样的成员函数称为_______。
34.在C++中,创建派生类对象时,总是先从_______的初始化开始的。
35.类的继承是指派生类继承基类的数据成员和_______。
36.在C++中,利用向量类模板定义一个具有20个double的向量,其元素均被置为0.5,实现此操作的语句是_______。
37.vector类中用于返回向量中的最后一个对象的方法是_________。
38.虚函数类似于重载函数,但与重载函数的实现策略不同,对虚函数声明时应使用_______关键字。
39.在C++中,虽然友元提供了类之间数据进行访问的一种方式,但它破坏了面向对象程序设计的_______特性。
40.执行下列代码cout < < showpoint < < 123.0;程序的输出结果是_______。
三、改错题(本大题共5小题,每小题4分,共20分)下面的每个程序都有一处错误,请用下横线标出错误所在行并给出修改意见。
41.#include <iostream>using namespace std;int main ( ){int num; max=10; num =1while (num < max) num + + ;cout <<″Num = ″<< num;return 0;}42.#include <iostream>using namespace std;class A {void show ( ) {cout<<″Hello!″;}};int main ( ) {A a;a. show ( );return 0;}43.#include <iostream>using namespace std;int main ( ) {const int num = 20;int scores[num];for (int i=1;i<=num;i + +){scores[i]=i;}return 0;}44.#include <iostream>using namespace std;class CMax {private:int xx;int yy;public:CMax(int x,int y){ xx = x;yy = y ;}void setValue(int x,int y){ xx = x;yy = y;}int max( ){return xx > yy? xx:yy;}};void main( ){CMax m( );m.setValue(20,30);cout <<″Max=″<<m.max( )<<endl;}45.#include <iosiream>using namespace std;class A{public:char name[255];private:char * getName( ){ return name;}};class B:public A{public:B(char * n){strcpy ( name,n);}};void main( ){B b(″Hello!″);cout <<″Name:″<<b.getName( );}四、完成程序题(本大题共5小题,每小题4分,共20分)46.将下面程序补充完整,使程序输出结果为:BeginWelcomeShowEnd程序如下:#include <iostream>using namespace std;class A{public:__________{cout <<″Begin″<<endl;}void show( ){cout<<″Show″<<endl;}___________{cout<<″End″<<endl;}};A object;int main( ){cout <<″Welcome″<<endl;object.show( );return 0;}47.请将下面程序补充完整,使程序可以正常打印9×9乘法口诀。
#include <iostream>using namespace std;class A {private:int a;int b;public:__________{ a = x;b = y;}void set(int x,int y){ a = x;b = y;}void display( ){cout<<a<<*′<<b<<′=′<<a * b;}};int main( ){A a(1,1);for(int i=1;i<=9;i++){for(int j=1;____;j++){a.set(j,i);a.display( );cout<<″″;}cout<<endl;}return 0;}48.将下面程序补充完整,使程序可以输入学生信息并计算平均成绩。