点击查看:2017年9月计算机二级C++考试操作题高频考卷汇总
基本操作题
1 [简答题]
请使用VC6或使用【答题】菜单打开考生文件夹prog1下的工程prog1。此工程中包含程序文件main.cpp,其中有类Score(“成绩”)和主函数main的定义。程序中位于每个“// ERROR **** found ****”之后的一行语句有错误,请加以改正。改正后程序的输出结果应为:
学号:12345678课程:英语总评成绩:85
注意:只修改每个“// ERROR **** found ****”下的一行,不要改动程序中的其他内容。
参考解析:
【参考答案】 (1)strcpy(student_id,the_id);
(2)const char * getID()const{ return student_id;}
(3)int Score::getFinal() const {
【考点分析】
本题考查的是Score类,其中涉及动态数组、构造函数、strcpy函数、const函数和成员函数。strcpy()函数和strlen()函数等经常会考到,要注意它们的参数要求。类的成员函数在类外定义时需要加上类名的作用域符。
【解题思路】
(1)主要考查考生对strcpy()函数的掌握情况,strcpy(参数一,参数二)函数的功能是将参数二的字符串复制给参数一,因此在这里student_id应该位于参数一的位置,即strcpy(student_id,the_id);。
(2)主要考查考生对函数返回值的掌握情况,根据注释:返回学号可知学号应该由一个字符串组成。再看函数要返回的类型:const char *,可知要返回一个char型指针,也就是一个char型数组,而 &student_id是一个char型数组指针,因此直接写student_id即可。
(3)主要考查考生对类的成员函数的掌握情况,因为getFinal函数是Score类的成员函数,所以在定义时要加上类名和作用域符,即Score::。
【解题宝典】
主要考查考生对strcpy函数、函数返回值和成员函数的掌握情况,在含有动态数组或者字符数组的类中,常常会涉及strcpy、strlen等函数的使用,要注意这些函数的参数要求。
微信搜索"考试吧"了解更多考试资讯、下载备考资料
简单应用题
2 [简答题]
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,其中有矩阵基类MatfixBase、矩阵类Matrix和单位阵UnitMatfix的定义,还有main函数的定义。请在横线处填写适当的代码并删除横线,以实
现上述类定义。此程序的正确输出结果应为:
注意:只能在横线处填写适当的代码,不要改动程序中的其他内容,也不要删除或移动“//**** found****”。
参考解析:
【考点分析】
本题考查MatrixBase类及其派生类Matrix和UnitMatrix,其中涉及构造函数、const函数、纯虚函数、动态数组和析构函数。派生类的构造函数要涉及基类的初始化,因此必须使用成员初始化列表。动态数组要先使用new语句分配空间,再赋值。
【解题思路】
(1)主要考查考生对纯虚函数的掌握,函数功能是分行显示矩阵中所有元素。因此在这里要输出行为i、列为j的元素,使用纯虚函数getElement(i,J)实现,输出语句为cout<
(2)主要考查考生对派生类的构造函数的掌握,派生类的构造函数使用成员列表初始化法,先对基类初始化。
(3)主要考查考生对动态数组的掌握,val是double型指针,要给val赋值,就要先给它分配空间,应使用new来完成。
(4)主要考查考生对成员函数的掌握,因为要输出单位矩阵,只有满足条件r=c的元素为1.0,所以填写语句if(r==c)return 1.0;。
微信搜索"考试吧"了解更多考试资讯、下载备考资料
综合应用题
3 [简答题]
请使用VC6或使用【答题】菜单打开考生目录proj3下的工程文件proj3,此工程中包含一个源程序文件proj3.cpp,补充编制C++程序proj3.cpp,其功能是读取文本文件in.dat中的全部内容,将文本存放到doc类的对象myDoc中。然后将myDoc中的字符序列反转,并输出到文件out.dat中。文件in.dat的长度不大于l000字节。
要求:
补充编制的内容写在“//********** 333 **********”与“//********** 66666 **********”两行之间。实现将myDoc中的字符序列反转,并将反转后的序列在屏幕上输出。不得修改程序的其他部分。
注意:程序最后已将结果输出到文件out.dat中,输出函数writeToFile已经给出并且调用。
参考解析:
【参考答案】
【考点分析】
本题主要考查的是doc类、构造函数、成员函数和析构函数。
【解题思路】
题目要求将myDoc中的字符序列反转,在main函数中我们看到myDoe是doc类,根据doc类的定义可以知道它是把读取文件的字符串存到str动态数组中。reverse函数实现将数组str中的length个字符中的第一个字符与最后一个字符交换,第二个字符与倒数第二个字符交换,依次类推。使用变量i和j,分别表示第一个字符和最后一个字符的下标,定义temp作为中间变量进行交换。
微信搜索"考试吧"了解更多考试资讯、下载备考资料