【计算机类职业资格】国家二级C++机试(操作题)-试卷50及答案解析.doc
《【计算机类职业资格】国家二级C++机试(操作题)-试卷50及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】国家二级C++机试(操作题)-试卷50及答案解析.doc(4页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级 C+机试(操作题)-试卷 50 及答案解析(总分:6.00,做题时间:90 分钟)一、基本操作题(总题数:1,分数:2.00)1.请使用 VC6 或使用【答题】菜单打开考生文件夹 projl 下的工程 pmjl,此工程包含有一个源程序文件projlcpp。其中位于每个注释“ERROR * found*”之后的一行语句存在错误。请改正这些错误,使程序的输出结果为:(4,4)注意:只修改注释“ERROR *found*”的下一行语句,不要改动程序中的其他内容。projlcpp#includeiostreamusing namespace std;class Pointpublic:ERR
2、OR*found* Point(double x,double Y)一 X(x),y(Y) double GetX()constreturn x;) double GetY()constreturn_y;)ERROR*found*void Move (double xOff,double yOff)const x+=xOff;_y+=yOff;)protected: doublex;y; ; int main() Point pt(15,25); ptMove(25,15);ERROR*found* 以下语句输出 pt 成员 x 和 y 的值cout(pt_X ,pt_y)endl; retu
3、rn 0; (分数:2.00)_二、简单应用题(总题数:1,分数:2.00)2.请使用 VC6 或使用【答题】菜单打开考生文件夹 proj2 下的工程 proj2,此工程包含有一个源程序文件pmj2cpp。其中定义了 Base1 类、Base2 类和 Derived 类。Base1 是一个抽象类,其类体中声明了纯虚函数 Show。Base2 类的构造函数负责动态分配一个字符数组,并将形参指向的字符串复制到该数组中,复制功能要求通过调用 strcpy 函数来实现。Derived 类以公有继承方式继承 Basel 类,以私有继承方式继承Base2 类。在 Derived 类的构造函数的成员初始化列
4、表中调用 Base 类的构造函数。请在程序中的横线处填写适当的代码,然后删除横线,以完成 Base1、Base和 Derived 类的功能。此程序的正确输出结果应为: Im a derived class 注意:只在指定位置编写适当代码,不要改动程序中的其他内容,也不要删除或移动“*found*”。proj2cpp#includeiostream#includecstringusing namespace std;class Baselpublic:*found*下列语句需要声明纯虚函数Show; ; class Base2 protected: char*;; Base2(const cha
5、r*s)_P=new charstrlen(s)+1;*found*下列语句将形参指向的字符串常量复制到该类的字符数组中;?Base2()delete-j);),*found*Derived 类公有继承 Basel,私有继承 Base2 类 class Derived:public:*found*以下构造函数调用 Base2 类构造函数 Derived(const char*s): void Show()cout_pendl;);int main()Basel*pb=new Derived(“Im a derived class”); pb 一Show(); delete pb; return
6、 0;(分数:2.00)_三、综合应用题(总题数:1,分数:2.00)3.请使用 VC6 或使用【答题】菜单打开考生目录 proj3 下的工程文件 proj3,此工程包含一个源程序文件proj3epp,其功能是从文本文件 indat 中读取全部整数,将整数序列存放到 intArray 类的对象myAay 中,然后对整数序列按非递减排序,最后由函数 writeToFile 选择序列中的部分数据输出到文件outdat 中。文件 indat 中的整数个数不大于 300 个。要求:补充编制的内容写在“*333*”与“*666*”两行之间。实现对整数序列按非递减排序,并将排序结果在屏幕上输出。不得修改程
7、序的其他部分。注意:程序最后已将结果输出到文件outdat 中。输出函数 writeToFile 已经给出并且调用。proj 3cpp#includeiostream#includefstream#includecstringusing namespace std;class intArrayprivate: int*array;整数序列首地址 int length;序列中的整数个数 public: 构造函数,从文件中读取数据用于初始化新对象。参数是文件名 intArray(char*filename); void sort();对整数序列按非递减排序 一 intArray(); void w
8、riteToFi le(char*fi lename); ); intArray:intArray(char*filename) ifstream myFile(filename); int len=300; array=new int1en; length=0; while(myFilearray1ength+); length 一一; myFileclose(); void intArray:sort() *333* *666* intArray:intArray() deletearray; void intArray:writeToFile(char。 filename) int st
9、ep=0; ofstream outFile(filename); for(int i=0;ilength;i=i+step)outFilearrayiendl;step+;outFileclose();void main() intArray myArray(”indat”); myArraysort(); myArraywriteToFile(”outdat”);(分数:2.00)_国家二级 C+机试(操作题)-试卷 50 答案解析(总分:6.00,做题时间:90 分钟)一、基本操作题(总题数:1,分数:2.00)1.请使用 VC6 或使用【答题】菜单打开考生文件夹 projl 下的工程
10、pmjl,此工程包含有一个源程序文件projlcpp。其中位于每个注释“ERROR * found*”之后的一行语句存在错误。请改正这些错误,使程序的输出结果为:(4,4)注意:只修改注释“ERROR *found*”的下一行语句,不要改动程序中的其他内容。projlcpp#includeiostreamusing namespace std;class Pointpublic:ERROR*found* Point(double x,double Y)一 X(x),y(Y) double GetX()constreturn x;) double GetY()constreturn_y;)ERR
11、OR*found*void Move (double xOff,double yOff)const x+=xOff;_y+=yOff;)protected: doublex;y; ; int main() Point pt(15,25); ptMove(25,15);ERROR*found* 以下语句输出 pt 成员 x 和 y 的值cout(pt_X ,pt_y)endl; return 0; (分数:2.00)_正确答案:(正确答案:(1)Point(double x,double y):一 x(x),一 y(y)或 Point(double x,double y)x:x;y=y; (2)
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 国家 二级 机试 操作 试卷 50 答案 解析 DOC
