点击查看:2017年9月计算机二级C++考试操作题预测卷汇总
基本操作题
1[简答题]
使用VC6打开考生文件夹proj1下的工程proj1,其中有“沙发”类Sofa和主函数main的定义。程序中位于每个//ERROR***************found***************书下的语句行有错误,请加以更正。更正后程序的输出应该是:
座位数:3
颜色:红色
注意:只能修改每+//ERROR***************found***************下的那一行,不要改动程序中的其他内容。
参考解析:
【考点分析】
本题主要考查的知识点为:关系运算符和关系表达式、默认参数和函数返回类型。
【解题思路】
程序定义Sofa类,它包含两个数据成员:字符数组color和整型变量seats;还包含一个构造函数,两个公有成员函数,getSeats()函数返回成员seats的值,getColor()函数返回字符数组color的地址Sofa类的定义体中,有三个错误:
(1)Sofa类的构造函数错误:由main()函数中定义Sofa类对象时可知:构造函数虽然有两个参数,但是可以只传入一个整型变量,所以另一个参数co需要提供一个默认值,由题意可知程序运行结果输出颜色是红色,所以co的默认字符串值为 “红色”;另外程序需要输出座位数:3,所以成员seats需要使用形参s完成初始化,构造函数体中并未对seats进行赋值。
(2)Sofa类的构造函数中,需要根据形参co的值是否为空,完成color的赋值,此处的if判断需要使用相等关系运算符,而不是赋值运算符。
(3)成员函数getSeats()返回的是seats的值,所以返回值应该是int类型,而不是coast char*类型。
微信搜索"考试吧"了解更多考试资讯、下载备考资料
简单应用题
2[简答题]
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2。该工程中包含一个程序文件main.cpp,其中有类Quadritic、类Root及主函数main的定义。一个Quadritic对象表示一个ax2+bx+c的一元二次多项式。一个Root对象用于表示方程ax2+bx+C=0的一组根,它的数据成员num_of_roots有3种可能的值,即0、1和2,分别表示根的3种情况:无实根、有两个相同的实根和有两个不同的实根。请在程序中的横线处填写适当的代码并删除横线,以实现上述类定义。此程序的正确输出结果应为(注:输出中的X^2表示x2):
3X^2+4X+5=0.0 无实根
4.5X^2+6X+2=0.0有两个相同的实根:-0.666667和-0.666667
1.5X^2+2X-3=0.0有两个不同的实根:0.896805和-2.23014
注意:只能在横线处填写适当的代码,不要改动程序中的其他内容,也不要删除或移动“// ****found ****”。
参考解析:【参考答案】 (1)x1(root),x2(root),num_of_roots(1)
(2)cout <<”无实根”;break;
(3)a(a),b(b),c(c)
(4)return Quadratic(a-x.a,b-x.b,c-x.c);
【考点分析】
本题考查Root类和Quadratic类,其中涉及构造函数和const函数。
【解题思路】
(1)主要考查考生对构造函数的掌握,题目要求创建~个 “有两个相同的实根”的Root对象。说明两个根x1和x2相等,根的数量为1,因此可以得出语句:x1(root),x2(root),num_of_roots(1){}。
(2)主要考查考生对switch语句的掌握,在语句switch(num_of_roots){中,num_of_roots代表根的数量,当为0时,表示没有根,因此输出无实根,注意要在句尾加break。
(3)主要考查考生对构造函数的掌握,本题使用成员初始化列表来构造函数。
(4)主要考查考生对成员函数的掌握,题目要求求两个多项式的差。两个多项式的差就是各个次方的系数相减,因此得出语句:return Quadratic(a-x.a,b-x.b,c-x.c);。
微信搜索"考试吧"了解更多考试资讯、下载备考资料
综合应用题
3[简答题]
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程proj3,其中定义的Matrix是一个用于表示矩阵的类。成员函数max_value的功能是求出所有矩阵元素中的最大值。例如,若有3×3矩阵
则调用max_value函数,返回值为3。请编写成员函数max_value。
要求:补充编制的内容写在“// ******** 333 ********”与“// ******** 666 ********”之间,不得修改程序的其他部分。
注意:程序最后将结果输出到文件out.dat中。输出函数writeToFile已经编译为obj文件,并且在本程序中调用。
参考解析:【参考答案】
【考点分析】
本题考查Matrix类,其中涉及构造函数、二维数组、成员函数和const函数。
【解题思路】
主要考查考生对二维数组的掌握,题目要求成员函数max_value的功能是求出所有矩阵元素中的最大值。因此只要逐个元素比较即可,下标i和j作为矩阵行和列的标记,使用双层for循环来遍历数组中的所有元素。
【解题宝典】
主要考查考生对二维数组的掌握,二维数组使得存储的数据大幅增加,只要把二维数组想象成矩阵,利用矩阵相关知识求解即可。
微信搜索"考试吧"了解更多考试资讯、下载备考资料