全国2010年1月自考C++程序设计试题
自考04737C++程序设计201001历年真题及答案

2010年1月高等教育自学考试全国统一命题考试C++程序设计试题课程代码:04737一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.在C++中,头文件扩展名为()A..cppB..hC..1ibD..obj2.下列符号中,不属于分隔符的是()A.,B./C.;D.{}3.可替换#definePI3.1415926的语句是()A.float PI 3.1415926;B.const float PI=3.1415926;C.const PI(3.1415926);D.const 3.1415926;4.布尔类型标识符是()A.voidB.shortC.longD.bool5.下列不是C++语言的基本数据类型的是()A.字符类型B.整数类型C.逻辑类型D.枚举类型6.C++允许在结构中定义函数,这些函数称为()A.静态函数B.构造函数C.析构函数D.成员函数7.设函数void inc(int)将形参加1,如有整型变量int i=10;则执行inc(i);后,i的值为()A.9B.10C.11D.未知8.下列哪种默认参数的声明是不正确的()A. int max(int a,int b,int c,int d=0);B. int max(int a,int b,int c=0,int d=0);C. int max(int a=0,int b,int c=0,int d=0);D. int max(int a,int b=0,int c=0,int d=0);9.设int &max(int &,int &)返回两参数中较大者,如有两整型变量int a=10;int b=15;在执行max(a,b)++后,a,b值分别为()A.10,15B.11,15C.10,16D.1l,1610.包含哪种语句的函数不能声明为内联函数()A.循环B.变量自增自减C.if...else…D.变量声明11.定义函数模板中使用的参数类型标识符需使用下列哪组符号括起来()A.<>B.“”C.()D.{}12.一个类拥有多个构造函数,则这些构造函数间为()A.重载关系B.重复关系C.拷贝关系D.无关系13.对于拷贝构造函数point::point(point& p),下列说明正确的是()A.该函数只能访问P的私有成员B.该函数不能访问P的公有成员C.该函数可以访问P的私有和公有成员D.该函数不能访问P的成员14.使用delete[]删除对象数组时,描述正确的是()A.数组中各元素都调用析构函数B.数组中各元素都调用构造函数C.不调用析构函数D.只有首元素调用析构函数15.下列哪个指令属于条件编译指令()A. #elifB. #errorC. #pragmaD. #include16.设类Test中存在成员static int x,则下列哪种初始化方式是正确的()A.Test::int x=25;B.int x=25;C.int Test::x=25;D.int Test x=25;17.下列关于友元的描述错误的是()A.成员函数不可作友元B.类可以作友元C.普通函数可以作友元D.静态函数可以作友元18.在继承中,派生类拥有的基类个数为()A.0个B.1个C.多个D.至少1个19.基类中的protected成员,通过public派生,其在派生类中的可见性为()A.不可访问B.privateC.protectedD.public20.下列哪个不是面向对象的关键要素()A.抽象性B.结构性C.封装性D.多态性二、填空题(本大题共20小题,每小题1分,共20分)请在每小题的空格中填上正确答案。
全国高等教育自学考试2010年数据库系统原理 C++程序设计全年真题汇总

2010年1月数据库系统原理试题一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.数据库管理系统是()A.采用了数据库技术的计算机系统B.包括DBA、计算机硬件及DB的系统C.位于用户与OS之间的数据管理软件D.包括OS在内的数据管理软件2.外模式DDL用来描述()A.数据库的总体逻辑结构B.数据库的局部逻辑结构C.数据库的物理存储结构D.数据库的概念结构3.下列关于数据冗余的叙述中,不正确...的是()A.冗余的存在容易破坏数据库的完整性B.冗余的存在给数据库的维护增加困难C.不应该在数据库中存储任何冗余数据D.冗余数据是指可由基本数据导出的数据4.适当调整DB的模式和内模式,使DB适应新的应用环境称为DB的()A.重组织B.监控分析C.查询优化D.重构造5.关系模型中将不含有多余属性的超键称为()A.内键B.候选键C.主键D.外键6.如果一个关系属于3NF,则它()A.必然属于2NFB.必然属于4NFC.可能不属于2NFD.必然属于BCNF7.设有关系模式R(A,B,C),F是R上成立的FD集,F={B→C,C→A},那么分解ρ={AB,AC}相对于F()A.是无损分解,也保持函数依赖B.是无损分解,但不保持函数依赖C.不是无损分解,但保持函数依赖D.既不是无损分解,也不保持函数依赖8.已知关系S1和S2如下表所示,则S1与S2进行并运算,其结果的元组数为()A.0B.4C.5D.69.设有关系R和S,与R—S等价的元组表达式是()A.{t|R(t)V┐S(t)}B.{t|R(t)∧┐S(t)}C.{t|∃u(R(t)∨┐S(u))}D.{t|∃u(R(t)∧┐S(u))}10.在SQL语言中,用于测试列值非空的短语是()A.IS NOT EMPTYB.NOT UNIQUEC.IS NOT NULLD.NOT EXISTS11.SQL语言中,条件“年龄BETWEEN 20 AND 30”表示年龄在20至30之间,且()A.包括20岁和30岁B.不包括20岁和30岁C.包括20岁但不包括30岁D.包括30岁但不包括20岁12.要求事务在读取数据前先加共享锁,且直到该事务执行结束时才释放相应的锁,这种封锁协议是()A.一级封锁协议B.二级封锁协议C.三级封锁协议D.两段锁协议13.断言是DBS采用的()A.安全性措施B.完整性措施C.恢复措施D.并发控制措施14.在对象联系图中,如果从A到B有双线箭头,则表示A是B的()A.一个子类B.同类C.一个父类D.一个属性15.一个UML类图,如下图所示。
全国2010年1月高等教育自学考试数据结构试题及答案

全国2010年1月高等教育自学考试数据结构试题(课程代码:02331)一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.若一个算法的时间复杂度用T(n)表示,其中n的含义是()A.问题规模B.语句条数C.循环层数D.函数数量2.具有线性结构的数据结构是()A.树B.图C.栈和队列D.广义表3.将长度为n的单链表连接在长度为m的单链表之后,其算法的时间复杂度为()A.O(1) B.O(m)C.O(n) D.O(m+n)4.在带头结点的双向循环链表中插入一个新结点,需要修改的指针域数量是()A.2个B.3个.C.4个D.6个5.假设以数组A[60]存放循环队列的元素,其头指针是front=47,当前队列有50个元素,则队列的尾指针值为()A.3 B.37C.50 D.976.若栈采用链式存储结构,则下列说法中正确的是()A.需要判断栈满且需要判断栈空B.不需要判断栈满但需要判断栈空C.需要判断栈满但不需要判断栈空D.不需要判断栈满也不需要判断栈空7.若串str=”Software”,其子串的数目是()A.8 B.9C.36 D.378.设有一个10阶的下三角矩阵A,采用行优先压缩存储方式,a ll为第一个元素,其存储地址为1000,每个元素占一个地址单元,则a85的地址为()A.1012 B.1017C.1032 D.10399.允许结点共享的广义表称为()A.纯表B.线性表C.递归表D.再入表10.下列数据结构中,不属于二叉树的是()A.B树B.AVL树C.二叉排序树D.哈夫曼树11.对下面有向图给出了四种可能的拓扑序列,其中错误..的是()A.1,5,2,6,3,4 B.1,5,6,2,3,4C.5,1,6,3,4,2 D.5,1,2,6,4,312.以v1为起始结点对下图进行深度优先遍历,正确的遍历序列是()A.v1,v2,v3,v4,v5,v6,v7 B.v1,v2,v5,v4,v3,v7,v6C.v1,v2,v3,v4,v7,v5,v6 D.v1,v2,v5,v6,v7,v3,v413.下列排序算法中不稳定的是()A.快速排序B.归并排序C.冒泡排序D.直接插入排序14.一个有序表为(1,3,9,12,32,41,45,62,75,77,82,95,100),当采用折半查找方法查找值32时,查找成功需要的比较次数是()A.2 B.3C.4 D.815.采用ISAM组织文件的方式属于()A.链组织B.顺序组织C.散列组织D.索引组织二、填空题(本大题共10小题,每小题2分,共20分)请在每小题的空格中填上正确答案。
高等教育自学考试高级语言程序设计(一)真题2010年1月

高等教育自学考试高级语言程序设计(一)真题2010年1月(总分:100.00,做题时间:150分钟)一、课程代码:00342(总题数:1,分数:0.00)二、单项选择题(本大题共15小题,每小题2分,共30分) (总题数:15,分数:30.00)1.下列不属于保留字的是()。
(分数:2.00)A.defaultB.registerC.sructD.unsign √解析:2.下列不能作为常量的是()。
(分数:2.00)A.0582 √B.0xa5C.’/n’D.2.5e-2解析:3.设typedeflong class;,则class是()。
(分数:2.00)A.整型变量B.长整型变量C.长整型数据类型的新标识符√D.新的而非长整型数据类型的标识符解析:4.设char c=’A’;int i=l, j;,执行j=!c&&i++;后,i和j的值分别是()。
(分数:2.00)A.1和0 √B.1和1C.2和0D.2和l解析:5.设int a;,执行表达式(a=1,2,3),a+1后,a和表达式的值分别是()。
(分数:2.00)A.1和2 √B.2和3C.3和4D.4和5解析:6.下列关于函数定义正确的是()。
(分数:2.00)A.fun(int x,y){int z;return z;}B.void fun(int x,int y){return x+y;}C.fun(x,y){int x,y;double z;z=x+y;return z;}D.double fun(int x,int y) {double z;z=x+y;return z;) √解析:7.下列用户自定义标识符正确的是()。
(分数:2.00)A.4aB.b_1 √C.-&D.*p解析:8.下列程序段中循环体执行的次数是()。
int x=-1; do { x=x*x; }while(! x);(分数:2.00)A.0B.1 √C.2D.无限解析:9.实现字符串连接的系统函数名是()。
全国2010年1月高等教育自学考试 C++程序设计试题及答案

全国2010年1月高等教育自学考试C++程序设计试题一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.在C++中,头文件扩展名为()A..cppB..hC..1ibD..obj2.下列符号中,不属于分隔符的是()A.,B./C.;D.{}3.可替换#definePI3.1415926的语句是()A.float PI 3.1415926;B.const float PI=3.1415926;C.const PI(3.1415926);D.const 3.1415926;4.布尔类型标识符是()A.voidB.shortC.longD.bool5.下列不是C++语言的基本数据类型的是()A.字符类型B.整数类型C.逻辑类型D.枚举类型6.C++允许在结构中定义函数,这些函数称为()A.静态函数B.构造函数C.析构函数D.成员函数7.设函数void inc(int)将形参加1,如有整型变量int i=10;则执行inc(i);后,i的值为()A.9B.10C.11D.未知8.下列哪种默认参数的声明是不正确的()A. int max(int a,int b,int c,int d=0);B. int max(int a,int b,int c=0,int d=0);C. int max(int a=0,int b,int c=0,int d=0);D. int max(int a,int b=0,int c=0,int d=0);9.设int &max(int &,int &)返回两参数中较大者,如有两整型变量int a=10;int b=15;在执行max(a,b)++后,a,b值分别为()A.10,15B.11,15C.10,16D.1l,1610.包含哪种语句的函数不能声明为内联函数()A.循环B.变量自增自减C.if...else…D.变量声明11.定义函数模板中使用的参数类型标识符需使用下列哪组符号括起来()A.<>B.“”C.()D.{}12.一个类拥有多个构造函数,则这些构造函数间为()A.重载关系B.重复关系C.拷贝关系D.无关系13.对于拷贝构造函数point::point(point& p),下列说明正确的是()A.该函数只能访问P的私有成员B.该函数不能访问P的公有成员C.该函数可以访问P的私有和公有成员D.该函数不能访问P的成员14.使用delete[]删除对象数组时,描述正确的是()A.数组中各元素都调用析构函数B.数组中各元素都调用构造函数C.不调用析构函数D.只有首元素调用析构函数15.下列哪个指令属于条件编译指令()A. #elifB. #errorC. #pragmaD. #include16.设类Test中存在成员static int x,则下列哪种初始化方式是正确的()A.Test::int x=25;B.int x=25;C.int Test::x=25;D.int Test x=25;17.下列关于友元的描述错误的是()A.成员函数不可作友元B.类可以作友元C.普通函数可以作友元D.静态函数可以作友元18.在继承中,派生类拥有的基类个数为()A.0个B.1个C.多个D.至少1个19.基类中的protected成员,通过public派生,其在派生类中的可见性为()A.不可访问B.privateC.protectedD.public20.下列哪个不是面向对象的关键要素()A.抽象性B.结构性C.封装性D.多态性二、填空题(本大题共20小题,每小题1分,共20分)请在每小题的空格中填上正确答案。
全国2010年1月自考Java语言程序设计(一)试题及参考答案

全国2010年1月自考Java 语言程序设计(一)试题 1 全国2010年1月自考Java 语言程序设计(一)试题课程代码:04747一、单项选择题(本大题共10小题,每小题1分,共10分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未 选均无分。
1.在下述字符串中,不属于...Java 语言关键字的是 ( )A .floatB .newC .javaD .return2.Java 语言中数值数据的类型能自动转换,按照从左到右的转换次序为 ( )A . byte →int →short →long →float →doubleB . byte →short →int →long →float →doubleC . byte →short →int →float →long →doubleD . short →byte →int →long →float →double3.在以下供选择的概念中,不属于...面向对象语言概念的是 ( ) A .消息B .模块C .继承D .多态性4.在下述Java 语言语句中,错误..的创建数组的方法是 ( ) A .int intArray [ ]; intArray=new int[5];B .int intArray [ ]=new int[5];C .int [ ] intArray ={1,2,3,4,5};D .int intArray [5]={1,2,3,4.5};5.在Swing 中,它的子类能用来创建框架窗口的类是 ( )A .JWindowB .JFrameC .JDialogD .JApplet6.MouseListener 接口不能..处理的鼠标事件是 ( ) A .按下鼠标左键B .点击鼠标右键C .鼠标进入D .鼠标移动7.以下不属于...文字字型要素的是 ( )全国2010年1月自考Java 语言程序设计(一)试题 2A .颜色B .字体C .风格D .字号8.在以下四个供选的整数中,能作为线程最高优先级的整数是 ( )A .0B .1C .10D .119.Java 语言可以用javax.swing 包中的类JFileChooser 来实现打开和保存文件对话框。
全国月自学考试C加加程序设计试题

中国自考人()--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非选择题部分注意事项:用黑色字迹的签字笔或钢笔将答案写在答题纸上,不能答在试题卷上。
2010年全国自考高级语言程序设计模拟试卷(三)及答案

更多优质自考资料,请访问自考乐园俱乐部/club/5346389 2010年全国自考高级语言程序设计模拟试卷(三)一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在题后的括号内。
1.设 char c[5]{′a′,′b′,′c′,′0′}则printf(″%s″,c);的输出是()A.′a′ ′b′B.abC.abcD.″ab\0c″答案:C2.下列程序执行后的输出结果是()# defineMA(x) x*(x-1)main(){ int a=1,b=2;printf(″%d\n″,MA(1+a+b));}A. 6B.8C.10D.12答案:B3.运行下列程序后,输出结果是()int f(int x,int y){ return(x-y); }main(){ int a=40,b=20,c=10;printf(″%d\n″,f(f(a,b),f(b,c)));}A.0B.10C.30D.50答案:B4.若fp指向文件的内部指针指向最后1个数据,则feof(fp)的返回值是 ()A.0B. 1C.EOFD.非零值答案:A5.下列语句中,正确的是()A.typedef v1 int;B.typedef v2=int;C.typedef int v3;D.typedef int=v4;答案:C 更多优质自考资料,请访问自考乐园俱乐部/club/53463896.设有定义语句“int( *ptr)[10];”其中的 ptr 是()A.10个指向整型变量的指针B.指向10个整型变量的函数指针C.一个指向具有10个元素的一维数组指针D.具有10个指针元素的一维数组答案:C7.设有语句“char a[]=″123″,b[]={′1′, ′2′, ′3′};”,正确的说法是()A.a[3]是不可知的任意字符B.数组a、b的长度相等C.b[3]的值为′\0′D.数组a的长度大于数组b的长度答案:D8.能正确定义一个用来向打开文件的文件型指针变量 fp 的语句是()A.file fpB.file *fpC.FILE fpD.FILE *fp答案:D9.设有定义“int a=3,b,*p=&a;”,则下列语句中使 b 不为3的语句是()A.b=*&a;B.b=*p;C.b=a;D.b=*a;答案:D10.假设已定义 char c[6]=″WuHan″,char*s=c 和 int i,则以下输出语句中,错误的是()A.printf(″%s\n″,s);B.printf(″%s\n″,*s);C.for(i=0;i<6;i++) printf(″%c″,c[i]);更多优质自考资料,请访问自考乐园俱乐部/club/5346389D.for(i=0;i<8;i++) printf(″%c″,s[i]);答案:B11.在C语言中,不合法的保留字是 ()A.ifB.CharC.floatD.default答案:B解析:Char12.设有定义“double a=5.0,b=2.5;”,则表达式(int)b+a/b的值是()A. 3B. 4C. 3.0D. 4.0答案:D解析:4.013.语句“printf(″%d\n″,(x=1,x=2));”的输出结果是 ()A. 1B. 2C.0D.语法出错答案:B解析:214.若定义了()struct{ char a[10];short b[4][5];long c[5];}u;则执行printf(″%d\n″,sizeof(u));语句的输出结果是()A.10B.20C.40D.70答案:D解析:7015.语句while(!e);中的条件!e等价于()A.e==0B.e!=1C.e!=0D.~e答案:A解析:e==016.用以表示内存地址的数据类型是()A.整型B.结构型C.指针型D.实型答案:C解析:指针型17.下列表达式中,值为1的表达式是 ()A.3%5B.3/5.0C.3/5D.3<5答案:D解析:3<5 更多优质自考资料,请访问自考乐园俱乐部/club/534638918.设有定义“ int x=8;”,则表达式“x+++1/3”的值是()A.0B. 2C. 3D.8答案:D解析:819.下列程序段的输出结果是 ()char b=′b′,e=′e′;printf(″%d,%c\n″,e-b,e-′a′+′A′);A.2,MB.2,EC.3,MD.3,E答案:解析:ASCⅡ20.关于运行下列程序段的正确说法是 ()int x=3;do { printf(″%d″,x--);}while(!x);A.输出3B.输出32C.输出321D.陷入死循环答案:A解析:输出3二、填空题(本大题共10小题,每小题2分,共20分)请在每小题的空格中填上正确答案。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
全国2010年1月自考C++程序设计试题课程代码:04737一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.在C++中,头文件扩展名为(B)A..cppB..hC..1ibD..obj2.下列符号中,不属于分隔符的是( B )A.,B./C.;D.{}3.可替换#define PI 3.1415926的语句是( B )A.float PI 3.1415926;B.const float PI=3.1415926;C.const PI(3.1415926);D.const 3.1415926;4.布尔类型标识符是( D )A.voidB.shortC.longD.bool5.下列不是C++语言的基本数据类型的是( D )A.字符类型B.整数类型C.逻辑类型D.枚举类型6.C++允许在结构中定义函数,这些函数称为( D )A.静态函数B.构造函数C.析构函数D.成员函数7.设函数void inc(int)将形参加1,如有整型变量int i=10;则执行inc(i);后,i的值为( B )A.9B.10C.11D.未知8.下列哪种默认参数的声明是不正确的( C )A. int max(int a,int b,int c,int d=0);B. int max(int a,int b,int c=0,int d=0);C. int max(int a=0,int b,int c=0,int d=0);D. int max(int a,int b=0,int c=0,int d=0);9.设int &max(int &,int &)返回两参数中较大者,如有两整型变量int a=10;int b=15;在执行max(a,b)++后,a,b值分别为( C )A.10,15B.11,15C.10,16D.1l,16A.循环B.变量自增自减C.if...else…D.变量声明11.定义函数模板中使用的参数类型标识符需使用下列哪组符号括起来(A )A.<>B.“”C.()D.{}12.一个类拥有多个构造函数,则这些构造函数间为( A )A.重载关系B.重复关系C.拷贝关系D.无关系13.对于拷贝构造函数point::point(point& p),下列说明正确的是( C )A.该函数只能访问P的私有成员B.该函数不能访问P的公有成员C.该函数可以访问P的私有和公有成员D.该函数不能访问P的成员14.使用delete[]删除对象数组时,描述正确的是( A )A.数组中各元素都调用析构函数B.数组中各元素都调用构造函数C.不调用析构函数D.只有首元素调用析构函数Point *p=new Point[5];=>B15.下列哪个指令属于条件编译指令( A )A. #elifB. #errorC. #pragmaD. #include16.设类Test中存在成员static int x,则下列哪种初始化方式是正确的(C )A.Test::int x=25;B.int x=25;C.int Test::x=25;D.int Test x=25;17.下列关于友元的描述错误的是( A )A.成员函数不可作友元B.类可以作友元C.普通函数可以作友元D.静态函数可以作友元18.在继承中,派生类拥有的基类个数为( D )A.0个B.1个C.多个D.至少1个19.基类中的protected成员,通过public派生,其在派生类中的可见性为(C )A.不可访问B.privateC.protectedD.public20.下列哪个不是面向对象的关键要素( B )A.抽象性B.结构性C.封装性D.多态性二、填空题(本大题共20小题,每小题1分,共20分)请在每小题的空格中填上正确答案。
错填、不填均无分。
22.若要使用C++标准类库,需要指定相应的命名空间,所用的语句是___using namespace std;___。
23.C++语言中的整数常量有4种描述类型:十进制常量、长整型常量、八进制常量和__十六进制常量____。
24.声明一个名为a的整型引用变量所使用的语句是___int &a;___。
类外?25.重载的运算符仍保留原有的优先级、_结合性_____和语法结构。
26.执行代码int b=100;cout<<hex<<b:程序的输出结果是__64____。
27.带有纯虚函数的类称为抽象类,它只能作为___基类___来使用。
28.使用__对象引用____作为函数参数,实参对象和形参对象代表同一对象,改变形参对象的值就是改变实参对象的值。
29.UML中对象之间的静态关系是通过对象属性之间的连接反映的,称之为__实例连接____。
30.如果一个模板声明列出多个参数,则多个参数之间必须使用逗号隔开,每个参数都必须重复使用关键字__class____。
(或typename)31.C++类的构造函数名与___类___名称一样,且没有返回值。
32.C++规定,当一个成员函数被调用时,系统自动向它传递一个隐含的参数,该参数是一个指向调用该函数的对象的指针,该指针被称为__this____指针。
33.声明一个常成员函数Fun,其返回类型为char,第一个参数类型为int,第二个参数类型为double,函数Fun的声明原型是__char Fun(int,double)const;____。
34.C++语言中的“聚合”隐含了两种实现方式,一种是__独立的定义____,另一种是用一个类的对象作为一种广义的数据类型来定义整体对象的一个属性。
35.简单成员函数是指声明中不含const、_volatile_____和static关键字的函数。
36.在派生类中继承的基类成员的初始化,需要由派生类的构造函数调用基类的__构造函数____来完成。
37.在C++中,利用向量类模板定义一个具有20个int的向量,其所有元素被置为1,实现此操作的语句是__vector <int> v(20,1);____。
38.vector类中用于获取无需再次分配内存就能容纳的对象个数的方法是__capacity()____。
P15639.动态联编是程序运行到需要的语句处才动态确定的,这称为___运行时___多态性。
(注意:动态联编)40.C++重载“=”运算符的函数名是__operator=____。
三、改错题(本大题共5小题,每小题4分,共20分)下面的每题中有一处错误,请用下横线标出错误所在行并给出修改意见41.#include<iostream.h>#define PI 3.14;double i;int r;cout<<″输入圆形半径:″;cin>>r;i=2 * PI * r;cout<<″圆形周长=″<<i<<endl;i=PI * r * r;cout<<″圆形面积=″<<i<<endl;}42.#include <iostream.h>class A{private:int x,y;public:A(int a=0,b=1);void Show();};A::A(int a,int b){x=a;y=b;}void A::Show(){cout<<″x=″<<x<<endl;cout<<″y=″<<y<<endl;}43.#include <iostream.h>class A{unsigned char var;public:A(unsigned char x){void print(){cout<<″var=″<<var;}};void main(){A a(″x″) ;a. print ();}44. #include < iostream. h>class Class{public:void print(int a,int b) {cout< < ″int:″ < < a < < endl;cout < < ″int:″ < < b < < endl;}void print(char * a,char * b) {cout< < ″string:″ < < a < < endl;cout < <″ string:″ < < b < < endl;}void print(char * a,unsigned int b){cout < < ″string:″ < < a < < endl;cout < < ″int:″ < < b < < endl;}};void main(){Class cls;cls. print(10,20);cls. print(′c′,1);cls. print(′x′,′y′);cls. print(″Hello!″,0);}{private:int val;public:void func( int a){val = a;}};void main(){Class * cls ;cls - > func(10) ;}四、完成程序题(本大题共5小题,每题4分,共20分)46.将下面程序补充完整,使程序计算100以内所有可被7整除的自然数之和。
#include <iostream.h>void main(){int x=1;int sum=0;while(true){if(x>100){_____;}if(______){sum=sum+x;}x++;}cout<<sum<<endl;}47.将下面程序补充完整,使程序执行结果为9。
public:______{x=a;}______{return x * x;}private:int x;};void main(){Class a(3);cout<<a.get()<<endl;}48.将下面程序补充完整,使程序正确的初始化私有变量var及释放资源。
class Class{private:int * var;public:Class(int num);~Class();};Class::Class(int num){_______;}Class::~Class(){_______;}49.将下面程序补充完整,使程序的输出结果为:ClassA::Print程序如下:#include<iostream.h>class Base{public:virtual void Print() const {cout<<″Base::Print″<<endl;}};class ClassA:public Base{public:void Print()const{cout<<″ClassA::Print″<<endl;} };class ClassB:public Base{public:void Print()const{cout<<″ClassB::Print″<<endl;} };void Print(______){______;}void main(){ClassA a;ClassB b;Print(a);Print(b);}50.下列程序的运行结果如下:x=22,y=22根据结果将程序补充完整。