【计算机类职业资格】计算机二级(C++)59及答案解析.doc
《【计算机类职业资格】计算机二级(C++)59及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】计算机二级(C++)59及答案解析.doc(22页珍藏版)》请在麦多课文档分享上搜索。
1、计算机二级(C+)59 及答案解析(总分:4230.00,做题时间:90 分钟)一、选择题(每小题 2 分,共 70 分) 下列各(总题数:60,分数:4200.00)1.以下叙述中正确的是_。 (分数:70.00)A.用 C 程序实现的算法必须要有输入和输出操作B.用 C 程序实现的算法可以没有输出但必须要输入C.用 C 程序实现的算法可以没有输入但必须要有输出D.用 C 程序实现的算法可以既没有输入也没有输出2.以下数据结构中不属于线性数据结构的是【 】(分数:70.00)A.队列B.线性表C.二叉树D.栈3.函数 int test(int a,int b=1,int c:0),下列调用不
2、合法的个数是( )。 test(0); test(0,0); test( ); test(0,0,0); (分数:70.00)A.0B.D.94.下列有关继承和派生的叙述中,正确的是_。(分数:70.00)A.如果一个派生类私有继承其基类,则该派生类对象不能访问基类的保护成员B.派生类的成员函数可以访问基类的所有成员C.基类对象可以赋值给派生类对象D.如果派生类没有实现基类的一个纯虚函数,则该派生类是一个抽象类5.下列语句的输出结果( )。 cout strlen(“/t/“/065/xff/n“); (分数:70.00)A.父类在前,子类在后B.父类在后,子类在前C.有继承关系的异常不能在同
3、一个 try 程序段内D.先有子类,其他如何安排都无关6.有以下程序 int fun1(double a) return a*=a; int fun2(double x,double y) double a=0,b=0; a=fun1(x);b=fun1(y); return(int)(a+b); main() double w;w=fun2(1.1,2.0); 程序执行后变量 w 中的值是_。 (分数:70.00)A.5.21B.5C.5D.07.有以下程序: #include main() char c1=1,c2=2; c1=getchar(); c2=getchar(); putcha
4、r(c1); putchar(c2); 当运行时输入 a 后,以下叙述正确的是_。(分数:70.00)A.变量 c1 被赋予字符 a,c2 被赋予回车符B.程序将等待用户输入第 2 个字符C.变量 c1 被赋予字符 a,c2 中仍是原有字符 2D.变量 c1 被赋予字符 a,c2 中将无确定值8.在类的定义中,用于为对象分配内存空间,对类的数据成员进行初始化并执行其他内部管理操作的函数是( )。(分数:70.00)A.Text1 对象的左边界距窗体的左边界是 800twip,上边界距窗体的上边界为 2000twipB.Text1 对象的左边界距屏幕的左边界为 800twip,上边界距屏幕的上边
5、界为 2000twipC.Text1 对象的宽度为 2000twip,高度为 800twipD.Text1 对象的高度为 800 点,宽度为 2000 点9.下列程序的输出结果是( )。 # include iostreamh int min( int a,int b) if(a b)return a; else return b; return 0 void main ( ) cout min(1,min(2,3) endl; (分数:70.00)A.15B.25C.35D.4510.下列语句不能够用于打开 C 根目录下文件 testtxt 的语句是( )。(分数:70.00)A.3B.6C
6、.10D.2011.设变量 a 是 int 型,f 是 double 型,i 是 float 型,则表达式 10 + a + i * f 值的数据类型是( )。(分数:70.00)A.具有相关性,但非从属性的平行的B.具有相关性,并且具有从属性的C.不具有相关性,但具有从属性的D.不具有相关性,也不具有从属性的12.对以下说明语句的正确理解是( )。 inta10=6,7,8,9,10; (分数:70.00)A.公有类型B.私有类型C.保护类型D.友元类型13.若变量已正确定义并赋值,以下符合 C+语言语法的表达式是( )。(分数:70.00)A.OLE 对象数据类型B.超级连接数据类型C.查
7、阅向导数据类型D.自动编号数据类型14.对于语句 cout setfill(*) setw(10) 1 setfill(*) setw(2) 2;的输出结果是 ( )。(分数:70.00)A.编译时将发生错误B.编译时正确但是运行时出错C.输出为 0D.输出为 null15.已知有定义 constintD=5; inti=1; doublef=0.32; charc=15; 则下列选项错误的是( )。 (分数:70.00)A.Private Sub Form_MouseDown(Button As Integer, Shift As Integer,_ X As Single, Y As Si
8、ngle) If Button=2 Then PopupMenu Bt, 2 End SubB.Private Sub Form_MouseDown(Button As Integer, Shift As Integer, _ X As Single, Y As Single) PopupMenu Bt End SuhC.Private Sub Form MouseDown(Button As Integer, Shift As Integer, _ X As Single, Y As Single) PopupMenu Bt,0 End SubD.Private Sub Form_Mouse
9、Down(Button As Integer, Shift As Integer, _ X As Single, Y As Single) If (Button=vbLeftButton) Or ( Button=vbRightButton) Then PopupMenu Bt End Sub16.若有如下语句 #includeiostreamh void main( ) int x=3; do x=x-2; cout x; while(!(-X); 则上面程序段( )。 (分数:70.00)A.输出的是 1B.输出的是 1 和-2C.输出的是 3 和 0D.是死循环17.若整型变量 a、b、
10、c、d 中的值依次为 1、4、3、2。则条件表达式 ac,a+cb,b+ca。请填空。 main1 float a,b,c; scanf(“%f%f%f“, if(= 2)printf(“YES/n“); /*a、b、c 能构成三角形*/ else printf(“NO/n“); /*a、b、c 不能构成三角形*/ (分数:1.50)填空项 1:_68.下面程序的功能是将字符数组 a 中下标值为偶数的元素从小到大排列,其他元素不变,请填空。 #includeiostreamh #includestringh void main1 char a =“clanguage“,t; int i,j,k
11、; k=strlen(A) ; for(i=;0 i =k-2;i+=2= for(j=i+2;j =k; 2= if ( 3) t=ai;ai=aj;aj=t; cout a; cout end1;= (分数:1.50)填空项 1:_69.以下程序中,fun 函数的功能是求 3 行 4 列二维数组每行元素中的最大值。请填空。 void fun(int,int,int(*)4,int *); main1 int a34=12,41,36,28,19,33,15,27,3,27,19,1,b3,i; fun(3,4,a,b); for(i=0;i2=x; (分数:1.50)填空项 1:_70.与
12、成员访问表达式 pname 等价的表达式是 1。(分数:1.50)填空项 1:_71. 1 是实现 C+语言编译时多态性的机制, 2 是实现 C+语言运行时多态性的机制。 (分数:1.50)填空项 1:_72.若有定义语句:int*a,b;,则变量 b 的数据类型是 1 。(分数:1.50)73. 以下程序的输出结果是 1。 #includeiostreamh class object private: int va1; public: object2; object(int i) object3; ; object:Object4 va1=0; cout “Default construct
13、or for object“ end1; object:object(int i) va1=i cout “Constructor for object“ va1 end1; object:object5 cout “Destructor for object“ va1 end1; class container private: object one; object two; int data; public: container6; container(int i,int j,int k); container7; ; container:container8 data=0; cout “
14、Default constructor for container“ end1; container:container(int i,int j,int k):two(i),one(j) data=k; cout “Constructor for container“ end1; container:container9 cout “Destructor for container“ end1; void main10 container anObj(5,6,10); (分数:1.50)填空项 1:_74.创建对象数组时,对数组的每一个元素都将调用一次构造函数,如果没有显式给出数组元素的初值,
15、则调用缺省构造函数,下列程序涉及到对象数组的创建和单个对象的创建,其输出结果是 1。 #include using namespace std; class Foo public: Foo(int X)cout D.9 解析:结构复合索引文件是 Visual FoxPro 数据库中最普通的,也是最重要的一种索引文件,它会随着表的打开而自动打开。4.下列有关继承和派生的叙述中,正确的是_。(分数:70.00)A.如果一个派生类私有继承其基类,则该派生类对象不能访问基类的保护成员B.派生类的成员函数可以访问基类的所有成员C.基类对象可以赋值给派生类对象D.如果派生类没有实现基类的一个纯虚函数,则该
16、派生类是一个抽象类解析:5.下列语句的输出结果( )。 cout strlen(“/t/“/065/xff/n“); (分数:70.00)A.父类在前,子类在后 B.父类在后,子类在前C.有继承关系的异常不能在同一个 try 程序段内D.先有子类,其他如何安排都无关解析:本题中,表达式将 5 个初值赋给 a0至 a4,后面的部分,将自动会被依次补零处理。6.有以下程序 int fun1(double a) return a*=a; int fun2(double x,double y) double a=0,b=0; a=fun1(x);b=fun1(y); return(int)(a+b);
17、 main() double w;w=fun2(1.1,2.0); 程序执行后变量 w 中的值是_。 (分数:70.00)A.5.21B.5C.5 D.0解析:此题考核的是数值类型的定义与强制转换。本题在进行调用函数 fun2()时,又对函数 fun1()进行了调 用,由于函数 fun1()定义为整型,所以第一次调用 fun1()时返回的值为 1,然后再将 1 赋值给 a,此时由于 a 为 double 型,则系统自动类型转换,将 1 转换成了 1.000000 赋值给了变量 a,以此类推,得 b 的值为 4.000000, 然后通过“return(int)(a+b);”将 a+b 的值强制转
18、换为 int 型 5 返回给主函数,此时又由 w 的类型为 double, 所以返回的整型值 5 又被转换为 double 型。故输出结果为 5.0。7.有以下程序: #include main() char c1=1,c2=2; c1=getchar(); c2=getchar(); putchar(c1); putchar(c2); 当运行时输入 a 后,以下叙述正确的是_。(分数:70.00)A.变量 c1 被赋予字符 a,c2 被赋予回车符 B.程序将等待用户输入第 2 个字符C.变量 c1 被赋予字符 a,c2 中仍是原有字符 2D.变量 c1 被赋予字符 a,c2 中将无确定值解析
19、:函数 getchar( )的作用是从终端(或系统隐含指定的输入设备)输入一个字符,且只能接受一个字符(回车符也算是一个字符)。故本题中变量 c1 被赋予字符 a,c2 被赋予回车符。8.在类的定义中,用于为对象分配内存空间,对类的数据成员进行初始化并执行其他内部管理操作的函数是( )。(分数:70.00)A.Text1 对象的左边界距窗体的左边界是 800twip,上边界距窗体的上边界为 2000twip B.Text1 对象的左边界距屏幕的左边界为 800twip,上边界距屏幕的上边界为 2000twipC.Text1 对象的宽度为 2000twip,高度为 800twipD.Text1
20、对象的高度为 800 点,宽度为 2000 点解析:EDIT、BROWSE 和 CHANGE 命令都可对记录进行修改编辑,但只能在交互式环境或浏览窗口进行逐条修改,对数据表中记录做相同规律的修改时,可使用 REPLACE 命令直接修改。9.下列程序的输出结果是( )。 # include iostreamh int min( int a,int b) if(a b)return a; else return b; return 0 void main ( ) cout min(1,min(2,3) endl; (分数:70.00)A.15B.25C.35 D.45解析: 在调用过程时,一般主调
21、与被调过程之间有数据传递,即将主调过程的 实参传递给被调用的过程,完成实参与形参的结合,然后执行被调过程,在 Visual Basic 中,实参与形参的结合有两种方式:即传址与传值。这两种方法的特点如下: 传址的结合过程是,当调用一个过程是,它将实参的地址传给形参,在被调用的过程 中,对形参的任何操作都变成了对相应实参的操作,因此实参的值会随形参的改变而改变。 传值的结合过程是,当调用一个过程时,系统将实参的值赋值给形参并断开了联系, 被调用过程中的操作时在形参自己的存储单元中进行的,当过程调用结束时,这些形参 所占用的存储单元也同时被释放,因此在过程中对形参的任何操作不会影响实参。而题 中被
22、调过程 Proc 中有两个形参,其中第一个形参 n 为传址方式,第二个形参 m 为传值方 式。主调过程分别把实参 x、y 传递给 Proc,所以当过程调用结束后,实参 x 的值应随着被 调过程变化而变化,而实参 y 值在主调函数中始终不变,所以输出 y 的值仍为 29;在被调 过程中 “n = n Mod l0 “被调用时,相当于“x=x Mod l0”,所以 x 的值最终为 6。 10.下列语句不能够用于打开 C 根目录下文件 testtxt 的语句是( )。(分数:70.00)A.3B.6C.10D.20 解析:由于大多数监听器接口都包含了我们可能不需要的方法。使用适配器类作为父类,可避免
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 C59 答案 解析 DOC
