1、国家二级 C+机试(操作题)模拟试卷 217及答案与解析 一、基本操作题 1 请使用 VC6或使用【答题】菜单打开考生文件夹 proj1下的工程 proj1,此工程中包含程序文件 main cpp,其中有 ElectricFan(“电风扇 ”)类和主函数 main的定义。程序中位于每个 “ ERROR*found*”之后的一行语句有错误,请加以改正。改正后程序的输出结果应为: 品牌:清风牌,电源:关,风速: 0 品牌:清风牌,电源:开,风速: 3 品牌:清风牌,电源:关,风速: 0 注意:只修改每个 “ ERROR*found*”下的那一行,不要改动程序中的其他内容。 1 #inclUde 2
2、 using namespace std; 3 class ElectricFan “电扇 ”类 4 char: lc brand; 5 int intensity; 风速: 0-关机 1-弱, 2-中, 3-强 6 public: 7 ElectricFan(const char*thebrand): intensity(0) 8 brand=new char strlen(the_brand)+1; 9 strcpy(brand, the_brand); 10 11 ElectricFan()deletebrand; 12 ERROR *found* 13 const char*theBr
3、and()constreturn*brand; 返回电扇品牌 14 int theIntensity()const return intensity; 15 返回风速 16 bool isOn()constreturn intensity0; 17 返回电源开关状态 18 ERROR *found* 19 void turnOff()intensity=1; 关电扇 20 void set工 ntensity(int inten) 21 开电扇并设置风速 22 ERROR *found* 23 if(intensity=1 intensity 2 using namespace std; 3
4、class Base 4 5 public: 6 Base(int m1, int m2) 7 mem1=m1; mem2=m2; 8 9 int sum()return meml+mem2; ) 10 private: 11 int meml, mem2;基类的数据成员 12 ; 13 14 派生类 Derived从基类 Base公有继承 15 *found* 16 class Derived: 17 18 public: 19 构造函数声明 20 Derived(int m1, int m2, int m3); 21 sum函数定义,要求返回 mem1、 mem2和 mem3之和 22 *
5、found* 23 int sum()return_+mem3; private: 24 int mem3;派生类本身的数据成员 25 ; 26 27 构造函数的类外定义,要求由 m1和 m2分别初始化 mem1和 mem2由m3初始化 mem3 28 *found* 29 _Derived(int m1, int m2, intm3): 30 *found* 31 _, mem3(m3) 32 int main() 33 Base a(4, 6); 34 Derived b(10, 15, 20); 35 int sum=a sum()+b sum(); 36 cout 3 using na
6、mespace std; 4 class DataList数据表类 5 int len; 6 double*d; 7 public: 8 DataList(int len, double data= NULL); 9 -DataList( )deleted; 10 int length( )const return len; 数据表长度 (即数据元素的个数 ) 11 double getElement(int i)constre-iturn di; 12 void sort();数据表排序 13 void show()const;显示数据表 14 ; 15 void writeToFile(c
7、har *, const DataList&); 1 main cpp 2 #include“DataList h“ 3 4 DataList: DataList(int fen, double data): len(fen) 5 d=new doublelen; 6 for(int i=0; i=1&intendj) di和 dj比较认,如果大于,就 di和 dj值交换 4 5 int temp=di;把临时整型变量 temp赋值为 di 6 di =dj;把 dj赋值给 di 7 dj=temp;把 temp值赋给 dj 8 【试题解析】 本题使用最简单的冒泡排序算法,首先明确 要排序的动态数组 d,其长度为 len,在此可以使用两个下标 i和 j相比较,当 didj时,数组内的值利用中间变量 temp进行交换。