[计算机类试卷]国家二级C++机试(操作题)模拟试卷32及答案与解析.doc

上传人:hopesteam270 文档编号:497410 上传时间:2018-11-28 格式:DOC 页数:7 大小:35KB
下载 相关 举报
[计算机类试卷]国家二级C++机试(操作题)模拟试卷32及答案与解析.doc_第1页
第1页 / 共7页
[计算机类试卷]国家二级C++机试(操作题)模拟试卷32及答案与解析.doc_第2页
第2页 / 共7页
[计算机类试卷]国家二级C++机试(操作题)模拟试卷32及答案与解析.doc_第3页
第3页 / 共7页
[计算机类试卷]国家二级C++机试(操作题)模拟试卷32及答案与解析.doc_第4页
第4页 / 共7页
[计算机类试卷]国家二级C++机试(操作题)模拟试卷32及答案与解析.doc_第5页
第5页 / 共7页
点击查看更多>>
资源描述

1、国家二级 C+机试(操作题)模拟试卷 32及答案与解析 一、基本操作题 1 使用 VC6打开考生文件夹下的源程序文件 modil cpp,该程序运行时有错误,请改正程序中的错误,使得程序输出: numberl=4 8 number2=93 6 number3=0 9 PRODUCT=404 352 注意:错误的语句在 *error*的下面。修改该语句即可。其他的语句不能修改。 1 #include 2 using namespace std; 3 int main() 4 5 double numberl=4 8, number2: 93 6, number3=0 9 ; 6 *error*

2、7 product=numberl*number2*number3 ; 8 *error* 9 cout 2 C1aSs NODE 3 4 public: 5 int data ; 6 NODE*next; 7 ; 8 void fun(NODE*liSt, int X) 9 10 11 12 void main() 13 14 int X; 15 NODE*head, *p; 16 *首先建立只有辅助表元的空链表 * 17 head=new NODE ; 18 head-next=NULL; 19 std: coutx; 23 if(x=0) 24 break; 25 fun(head, X

3、); 26 27 for(p=head一 next ; p!=NULL; p=p-next) 28 std: coutdatanext; 32 delete head; 33 head=p ; 34 )while(p); 35 三、综合应用题 3 使用 VC6打开考生文件夹下的源程序文件 modi3 cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: 每卖出一个瓜,则计算瓜的重量,还要计算所有卖出瓜的总重量以及总个数,同时允许退货,请按照以下的操作,把类补充完整 (1)定义类 Cmelon的私有静态数据成员 float型变量 totalweight和 int型

4、变量totalNo,请在注释 *1*后添加适当的语句。 (2)完成类 Cmelon的带一个 float型变量 w的构造函数,并把这个 w加到totalweight中,并且 totalNo自加。请在注释 *2*后添加适当的语句。 (3)在析构函数中,在 totalweight中减去 weight,然后 totalNo自减,请在注释 *3*后添加适当的语句。 (4)完成静态成员变量的初始化为 0,请在注释料料料料 4料料料料后添加适当的语句。 注意:增加代码,或者修改代码的位置已经用符号表示出来。请不要修改其他的程序代码。 1 #include 2 class Cmelon 3 4 private

5、: 5 float weight; 6 *1* 7 8 static int totalNo; 9 public: 10 cmeion(float w) 11 12 *2* 13 14 totalweight +=w; 15 totalNo+; 16 17 Cmelon() 18 19 *3* 20 21 totalweight -=weight; 22 23 void di splay() 24 25 coutnext ; 4 while(v!=NULL&xdata) 寻找插入的位置 5 6 u=v; v=v-next ; 7 8 if(v=NULI xv一 data) 判断是否为新的元素

6、9 10 p=new NODE; 11 p-da七 a=x; 生成新的元素 12 p-next=V; 13 u-next=p; 插入新的元素 14 【试题解析】 (1)该程序功能是构造一个以大到小顺序链接的链表。它的解题思路,首先寻找插入的位置,然后判断是否为新元素,最 后插入。 (2)从已给部分源程序的 main主函数开始入手,核心函数 void fun(ODE*list,int x)中的: list参数为单链表, x为要插入的数据。 解题思路 (1)首先利用 while循环寻找插入元素的位置。 (2)然后判断要插入的元素是否为新元素。 (3)如果为新元素,那么执行单链表的操作,插入元素。

7、三、综合应用题 3 【正确答案】 (1)添加语句: static float totalweight ; (2)添加语句: weicjh_t=w; (3)添加语句: totalNo-; (4)添加语句: int Cmelon: totalNo=0; 【试题解析】 程序中定义了 Cmelon类,包含 totalweight和 totalNo两个静态变量和 float型变量 weight,分别表示卖出瓜的总重量、总个数和该瓜的重量,每定义一个 Cmelon对象表示卖出去了一个瓜,在构造函数中计算瓜的总重量和总个数, display函数打印基本信息,包括瓜的重量、总重量和总个数。 解题思路 (1)静

8、态数据成员声明时需使用 关键字 static,因此第 1个标识下应添加 “static float totalweight; ”。 (2)构造函数用来对类成员进行初始化,在 Cmelon类的构造函数 Cmelon(float w)中,完成 weight的初始化,并把这个 w加到 totalweight中,并且 totalNo自加,因此第 2个标识下应添加 “weight=w; ”。 (3)调用析构函数相当于退瓜,这时 totalweight中减去 weight,然后 totalNo自减,因此第 3个标识下应添加 “totalNo-; ”。 (4)静态数据成员的初始化格式为: : : ,因此第 4个标识下应添加 “int Cmelon: tomINo=0: ”。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试资料 > 职业资格

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1