【计算机类职业资格】计算机二级(C++)上机考试25及答案解析.doc

上传人:orderah291 文档编号:1337844 上传时间:2019-10-17 格式:DOC 页数:2 大小:32KB
下载 相关 举报
【计算机类职业资格】计算机二级(C++)上机考试25及答案解析.doc_第1页
第1页 / 共2页
【计算机类职业资格】计算机二级(C++)上机考试25及答案解析.doc_第2页
第2页 / 共2页
亲,该文档总共2页,全部预览完了,如果喜欢就下载吧!
资源描述

1、计算机二级(C+)上机考试 25 及答案解析(总分:-3.00,做题时间:90 分钟)1.改错题 使用 VC6 打开考生文件夹下的工程 test6_1,此工程包含一个源程序文件 test6_1.cpp,但该程序运行有问题,请改正程序中的错误,使程序的输出结果如下: Constructor2 Constructor1 i=0 i=10 Destructor 源程序文件 test6_1.cpp 清单如下: #include class CSample int i; public: CSample()coutdisp(); (分数:-1.00)_2.简单应用题 请编写一个函数 char MaxCha

2、racter(char * str),该函数返回参数 str 所指向的字符串中具有最大 ASCII 码的那个字符(如字符串“world“中字符w具有最大的 ASCII 码)。当 str 所指向的字符串为空时,则返回空字符 0x0 或/0。 输出结果如下: Good Morning! Max char:r 注意:部分源程序已存在文件 test15_2.cpp 中。 请勿修改主函数 main 和其他函数中的任何内容,仅在函数MaxCharacter 的花括号中填写若干语句。 文件 test15_2.cpp 的内容如下: #include #include char MaxCharacter(cha

3、r * str); void main() char str100; strcpy(str,“Good Morning!“); char maxc=MaxCharacter(str); coutdisp(); (分数:-1.00)_正确答案:((1)错误:void disp() 正确:void CSample:disp() (2)错误:a-disp(); 正确:a=new CSample; a-disp(); (3)错误:b-disp(); 正确:b.disp(); )解析:(1)主要考查考生对于类的成员函数定义格式的熟练掌握,对于类体外函数的实现,应该使用作用域符“:“,按照返回值类型 类名

4、函数名(参数列表)的形式进行说明; (2)主要考查考生对于动态存储分配的掌握,根据前面的定义,a 是一个指针类型的变量,指向一个对象,但是并没有被初始化,此时 a 中的数据无任何意义,应该使用动态存储分配 new 生成一个新的对象,并将返回的指针赋值给 a; (3)主要考查对象指针与对象在调用成员函数时格式的不同,b 是一个对象变量,使用 b 调用成员函数应该用“.“运算符。 2.简单应用题 请编写一个函数 char MaxCharacter(char * str),该函数返回参数 str 所指向的字符串中具有最大 ASCII 码的那个字符(如字符串“world“中字符w具有最大的 ASCI

5、I 码)。当 str 所指向的字符串为空时,则返回空字符 0x0 或/0。 输出结果如下: Good Morning! Max char:r 注意:部分源程序已存在文件 test15_2.cpp 中。 请勿修改主函数 main 和其他函数中的任何内容,仅在函数MaxCharacter 的花括号中填写若干语句。 文件 test15_2.cpp 的内容如下: #include #include char MaxCharacter(char * str); void main() char str100; strcpy(str,“Good Morning!“); char maxc=MaxChara

6、cter(str); coutstr“Max char:“maxc_正确答案:(char MaxCharacter (char *str) if(str=NULL) return 0x0; char maxChar=0x0; int len=strlen(str); for(int i=0;imaxChar) maxChar=stri; return maxChar; )解析:本题考查的是考生应用 for 和 if 等基本控制语句解决实际问题的能力。注意字符的大小可以直接比较,实际上比较的就是字符的 ASCII 码的值。 3.综合应用题 使用 VC6 打开考生文件夹下的工程 test1-_3。

7、此工程包含一个 test1_3.cpp,其中定义了类 circle 和 column,其中 column 类由 circle 类 protected 派生,但两个类的定义并不完整。请按要求完成下列操作,将程序补充完整。 (1)定义类 circle 的保护数据成员 r 和 area,它们都是 double 型的数据。请在注释“/ * 1 * “之后添加适当的语句。 (2)添加类 circle 的无参数的构造函数,使circle 对象的 r 默认值为 0,请在注释“/ * 2 * “之后添加适当的语句。 (3)添加派生类 column 构造函数的定义,传入的参数为 double 型的 height

8、 和 radius,并将其分别赋值给数据成员 h 和基类的 r,请在注释“/ * 3 * “之后添加适当的语句。 (4)完成派生类 column 的成员函数 print 的定义,使其以格式“r=_area=_“先输出半径 r 和底面积 area,再以格式“h=_vol=_“输出高 h 和体积 vol 的值,请在注释“/ * 4 * “之后添加适当的语句。 输出结果如下: r=1 area=3.1416 h=2 vol=6.2832 注意:除在指定的位置添加语句外,请不要改动程序中的其他语句。 源程序文件 test1_3.cpp 清单如下: #include const double pi=3.

9、1416; class circle protected: / * 1 * public: / * 2 * circle(double radius) r=radius; void print() area=r*r*pi; cout“r=“r“ “area=“area_正确答案:((1) double r; double area; (2) circle( ) r=0; (3) column(double radius, double height):circle(radius) h=height; (4) circle:print( ); cout“h=“h“ “vol=“area*h解析:主要考查考生对于类的数据成员定义与成员函数构造的掌握,其中(3)使用了参数列表进行变量赋值,(4)使用作用域符:调用基类 print 函数。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试资料 > 职业资格

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1