下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、二级C+分类模拟106(总分:100.00 ,做题时间:90分钟)一、程序改错题(总题数:1,分数:30.00)1 .使用VC6打开下的源程序文件modil.cpp ,该程序运行时有错,请改正其中的错误,使 得程序正常运行,并使程序输出的结果为:23注意:不要改动main函数,不能增行或删行,也不能更改程序的结构,错误的语句在 /* *error的下面。#include class TestClass /* *error/* *errorconst int j; public: TestClass() /* *error static int i=0;coutcout);void main()
2、TestClass obj1; TestClass obj2; obj2.j += objl.j; return;分数:30.00)正确答案:()解析:添加语句:public: intj;添加语句:j=1;答案考生文件夹解析本题程序的功能是输出1121o解题思路从已定源程序的main主函 数开始入手,程序通过类TestClass中成员函数实现题目中要求的输出。 打开 modil.cpp ,调试程序,显示错误提示为modi1.cpp(22):error C2248:j,:cannot accessprivatemember declared in class TestClass ,第1个标识下的
3、i变量由于被定义为私有的,其他 函数不可获得,这里应该是public型,所以在第1个标识下添加“ public: 。 程序中对于j的调用,说明j并不是常量,所以修改j的定义,将其定义为变量,而不是常 变量,即修改第2个标识下语句为“ intjj。 题目中要求调用对象,输出j的值为1o原程序中j变量的使用并没有赋初始化值,输出值为乱码,所以第三个标识下添加“ j=1;”。二、程序填空题(总题数:1,分数:30.00)2.使用VC6打开 下的源程序文件modi2.cpp o阅读下列函数说明和代码,完成空出部分程序。 函数fun(int*arr, int n)的功能是将指定的有序数组压缩成各元素互不
4、相同的有序数组,即相同 数只保留一个,多余的被删除。并返回互不相同的元素的个数。注意:不能修改程序的其他部分,只能修改fun()函数。include int fun( int *a, int n ) void main()(int A= 6, 6, 5, 4, 4, 3, 3, 2, 1);int j =fun (A, sizeof (A) /sizeof(int); for(int i=0; i j ; i+)std:coutstd:cout return;分数:30.00)正确答案:()解析:int j;int k=0; / 指向数组第一个元素j=1;指向数组第二个元素while(j n)
5、 将本次循环k指向的元素依次与其他元素比较,如果不同,则存入数组(if(aU!=ak)(a+k=aj;/k指向下一个元素1+;return k+1; /为新数组大小答案考生文件夹解析该程序功能是将指定的有序数组压缩成各元素互不相同的有序数组,即相同数只保留一个,多余的被删除。它的解题思路,由第一个元素开始,利用循环将所 有元素,依次与它后面的元素比较,如果不同存入数组。从已给部分源程序的main主函数开始入手,核心函数intfun(int*a , int n)中的参数a为输入 的数组,n为数组大小。首先指向数组第一个元素ak,然后将第二元素aj与它比较,不同存入数组第二个元素 (a+k) 同时
6、,将被比较的位置向后移动一位(j+)。循环直到数组的最后一个元素比较完毕。三、程序设计题(总题数:1,分数:40.00)3.使用VC6打开下的源程序文件modi3.cpp o其中定义的类并不完整,按要求完成下列操作, 将类的定义补充完整。 重载运算符int ,请在注释*1 *后添加适当的语句。重载运算符I, ,请在注释*2*后添加适当的语句。在主函数main()中定义变量i,并调用对象obj的int运算符,给变量赋初值为10,请在注释*3*后添加适当的语句。调用obj的f 运算符输HelloTest注意:增加代码,或者修改代码的位置已经用符号表示出来。请不要修改其他的程序代码。#include
7、 using namespace std; class TestClasspublic:/*coutreturn 10;)endl ;);int main()(TestClass obj;3m /*4* return 0;分数:40.00)正确答案:()解析:添加语句:operat(xint() (2)添力口语句:添加语句:operator |int i=int(obj);(4)添加语产H句:obj |HellO Test答案考生文VC环境下打开程序,根据题干件夹解析本题的功能是通过重载运算符实现字符串输出。在给出的几条功能要求,对程序中给出注释下的内容逐个补全或修改。从已定源程序的main主
8、函 数开始入手,可以看出程序通过调用类TestClass的运算符重载函数实现各种输出操作。题目1要求“重载运算符int的定义。运算符重载的方法是定义一个重载运算符的函数, 其一般格式为:函数类型operator运算符名称(形参列表)对运算符的重载处理。所以第1 个标识下,重载运算符int的语句为“ operatorint() o。同,第2个标识下的重载函数定义为“ operator(char* str) n。题目3要求“在主函数main。中定义变量i ,并调用对象obj的int运算符,给变量10。赋初值为 定义变量i ,即inti o “operatorint() ”中的返回值为10,所以调用对象obj的int运算符,给变量赋初值为10,就是i
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 钢结构建筑施工安全管理规程
- 汽车零部件物流包装规范详解
- 卫生等级考试题库及答案
- 2025-2030中国环保材料生产技术革新市场分析投资风险评估产品设计规划
- 教师职业素养提升路径探析
- 2024年全国职称考试模拟试卷
- 2025-2030中国海洋能开发利用行业供需现状与投资评估规划
- 2025-2030中国海洋工程装备制造技术革新市场发展研究报告
- 2025年信息技术考试试题题库(附答案)
- 2025年静脉输液试题题库(附答案)
- 智研咨询发布:中国整装卫浴行业市场全景调查及投资前景预测报告
- 铜精矿外贸采购合同范本
- 中原银行笔试题及答案
- 兽医心脏超声培训课件
- 学堂在线 雨课堂 学堂云 中国传统艺术-篆刻、书法、水墨画体验与欣赏 章节测试答案
- 输液导管相关静脉血栓形成防治中国专家共识解读
- 医院新员工培训课件
- 城镇作战基础知识培训课件
- 医院优先使用集采药品培训
- 高考数学一轮复习椭圆省公开课金奖全国赛课一等奖微课获奖课件
- 企业年度经营计划书
评论
0/150
提交评论