2012年3月全国计算机二级C++上机题库.doc

2012年3月全国计算机二级C++上机题库.doc

  1. 1、本文档共576页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2012年3月全国计算机二级C++上机题库.doc

全国计算机二级C++上机(内部) 第一套 请使用VC6打开考生文件夹下的工程proj1,该工程含有一个源程序文件proj1.cpp。其中每个注释//ERROR ***********found*************之后的一行有语句存在错误。请修改这些错误,使程序的输出结果为:1 2 3 4 5 6 7 8 9 10 // proj1.cpp #include iostream using namespace std; class MyClass { public: MyClass(int len) { array = new int[len]; arraySize = len; for(int i = 0; i arraySize; i++) array[i] = i+1; } ~MyClass() { // ERROR **********found********** delete array[]; // delete []array; } void Print() const { for(int i = 0; i arraySize; i++) // ERROR **********found********** cin array[i] ; // cout array[i] ; cout endl; } private: int *array; int arraySize; }; int main() { // ERROR **********found********** MyClass obj; //MyClass obj(10); obj.Print(); return 0; } 请使用VC6打开考生文件夹下的工程proj2,该工程含有一个源程序文件proj2.cpp。其中定义了类Bag和用于测试该类的主函数main。类Bag是一个袋子类,用来存放带有数字标号的小球(如台球中的球,在类中用一个整数值表示一个小球),其中运算符成员函数==用来判断两个袋子对象是否相同(即小球的个数相同,每种小球数目也相同,但与它们的存储顺序无关);成员函数int InBag(int ball)用来返回小球ball在当前袋子内出现的次数,返回0表示该小球不存在。为类实现这两个函数,其用法可参见主函数main。 运算符函数operator ==中首先判断两个袋子内的小球个数是否相同,再调用InBag函数来判断每种小球在两个袋子内是否具有相同的出现次数 // proj2.cpp #include iostream using namespace std; const int MAXNUM = 100; class Bag { private: int num; int bag[MAXNUM]; public: Bag(int m[], int n=0); // 构造函数 bool operator == (Bag b); // 重载运算符== int InBag(int ball); // 某一小球在袋子内的出现次数,返回0表示不存在 }; Bag::Bag(int m[], int n) { if(n MAXNUM) { cerr Too many members\n; exit(-1); } for(int i = 0; i n; i++) bag[i] = m[i]; num = n; } bool Bag::operator == (Bag b) // 实现运算符函数== { if (num != b.num) // 元素个数不同 return false; for (int i = 0; i num; i++) //**********found********** if (_______InBag(bag[i])!=b.InBag(bag[i])_______________) // TODO: 加入条件, 判断当前袋子中每个元素在当前袋子和袋子b中是否出现次数不同 //**********found********** _____ return false_________________; // TODO: 加入一条语句 return true; } int Bag::InBag(int ball) { int count = 0; for

文档评论(0)

考试资料文库 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档