首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹proj1下的工程proj1,此工程中包含一个源程序文件main.epp,其中有类Book(“书”)和主函数main的定义。程序中位于每个“//ERROR****found****”下的语句行有错误,请加以改正。
请使用VC6或使用【答题】菜单打开考生文件夹proj1下的工程proj1,此工程中包含一个源程序文件main.epp,其中有类Book(“书”)和主函数main的定义。程序中位于每个“//ERROR****found****”下的语句行有错误,请加以改正。
admin
2016-08-19
24
问题
请使用VC6或使用【答题】菜单打开考生文件夹proj1下的工程proj1,此工程中包含一个源程序文件main.epp,其中有类Book(“书”)和主函数main的定义。程序中位于每个“//ERROR****found****”下的语句行有错误,请加以改正。改正后程序的输出结果应该是:
书名:C++语句程序设计总页数:299
已把“C++语言程序设计”翻到第50页
已把“c H语言程序设计”翻到第51页
已把“C++语言程序设计”翻到第52页
已把“C++语言程序设计”翻到第51页
已把书合上。
当前页:0
注意:只修改每个“//ERROR*****found****”下的那一行,不要改动程序中的其他内容。
1 #include
2 us ing namespace std;
3 clasS Book{
4 char*title;
5 int num pages;//页数
6 int cur page ;//当前打开页面的页码,0表示书未打开
7 public:
8 //ERROR**********found**********
9 Book(const char*theTitle,int pa-ges)num_pages(pageS)
10 {
11 title=new char[strlen(theTi-tle)+1];
12 strcpy(title,theTitle);
13 cout<
14 <<"总页数:"<
15 }
16 ~Book(){delete[]title;)
17 bool isClosed()const{return cur page==1;} //书合上时返回true,否则返回false
18 bool isOpen()const{return!isClosed();}//书打开时返回true,否则返回false
19 int numOfPages()const{return num_pages;} //返回书的页数
20 int currentPage()const{return curpage;} //返回打开页面的页码
21 //ERROR **********found**********
22 void openAtPage(int page_no)cons t{ //把书翻到指定页
23 cout<
24 if(page_no<1 || page_no>num_pa-ges){
25 cout<<"无法翻到第"<
26 close();
27 }
28 else,{
29 cur_page=page_no;
30 cout<<"已把“"<
3l }
32 }
33 void openAtPrevPage(){openAtPage(cur_page-1);)//把书翻到上一页
34 void openAtNextPage(){openAtPage(cur_page+1);)//把书翻到下一页
35 void close(){//把书合上
36 cout<
37 if(isClosed())
38 cout<<"书是合上的。";
39 else{
40 //ERROR **********found**********
41 num pages=0;
42 cout<<"已把书合上。";
43 }
44 cout<
45 }
46 };
47 int main(){
48 Book book("C++语言程序设计",299);
49 book.openAtPage(50);
50 book.openAtNextPage();
51 book.openAtNextPage();
52 book.openAtPrevPage();
53 book.close();
54 cout<<"当前页:"<
55 return 0;
56 }
选项
答案
(1)Book(const char*theTitle,int pages):Hum_pages(pages) (2)void openAtPage(int page_no){//把书翻到指定页 (3)cur_page=0;
解析
(1)主要考查考生对构造函数的掌握,构造函数的成员列表初始化法要注意它的格式,即成员列表前要有标识符“:”,因此语句改为:Book(eonst char*theTitle,int pages):nun_pages(pages)。
(2)主要考查考生对const函数的掌握,在函数体中可以看到有语句cur_page=page_no,即cur_page的值发生改变,因此该函数不是const函数。
(3)主要考查考生对成员函数的掌握,题目要求输出的最后一条是“当前页:0”,可知主函数中调用close函数后当前页为0,因此应该是cur_page=0;。
转载请注明原文地址:https://kaotiyun.com/show/zZNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
栈是限定在一端进行插入与删除的线性表,那么其组织数据的原则是()。
有以下程序:#include<iostream>usingnamespacestd;classsample{private:intn;public:sample(){}
定义如下枚举类型:enum{Monday,Tuesday,Wednesday,Thursday,Friday=2};则下列语句正确的是()。
下面关于对象的描述中正确的是()。
以随机访问方式读取文件中的数据通常使用istream的成员函数______。
设有定义语句:inta=12;,则表达式a*=2+3的运算结果是【】。
函数sstrcmp()的功能是对两个字符串进行比较。当s所指字符串和t所指字符串相等时,返回值为0:当s所指字符串大于t所指字符串时,返回值大于0;当s所指字符串大于t所指字符串时,返回值大于0(功能等同于strcmp())。请填空。intSs
“or(intx=0,y=0;!x&&y<=5;y++)”语句执行循环的次数是()。
面向对象程序设计思想的主要特征中不包括
已知数据表A中每个元素距其最终位置不远,为节省时间,应采用的算法是
随机试题
某校电子院与计算机院学生总数可组成一个实心方阵,电子院与电信院学生总数也可组成一个实心方阵。已知计算机院有100人,电信院有168人,那么大方阵比小方阵每边人数多几人?
土地使用权出让合同约定的使用年限届满,土地他用者未申请续期或者虽申请续期但未获政府批准的,土地使用权由国家________收回()
根据《水利水电建设工程验收规程》SL223—2008的有关规定,阶段验收南()或其委托单位主持。阶段验收委员会应由验收主持单位、质量和安全监督机构、运行管理单位的代表以及有关专家组成。必要时,可邀请地方政府及有关部门参加。
某公路工程项目,经过招标投标确定了一家施工单位承担该公路工程项目的总承包任务,双方签订了承包合同。施工中该施工单位由于某些原因,需将该工程的某一部分非主体专项工程进行分包,所以向业主提出申请,并与一家有相应专业资质的分包人草拟了分包合同。同时业主为了照顾当
阅读文本材料和具体要求,回答问题。苏洵《六国论》原文六国破灭,非兵不利,战不善,弊在赂秦。赂秦而力亏,破灭之道也。或曰:六国互丧,率赂秦耶?曰:不赂者以赂者丧。盖失强援,不能独完。故曰:弊在赂秦也。秦以攻取之外,小则获邑,大则
苏格拉底声称,一册好书,能够______他走遍全世界。他是为求知而读书的,读一本书就了解了世界的一个方面。可以想象出他的挑剔,他的______,他的求知的贪婪,还有他的目光的______。依次填入画横线部分最恰当的一项是()。
现有一项关于学生的学习动机水平与学习成绩关系的研究,在分析两者关系时,有人建议用相关分析,有人建议用回归分析。根据条件回答下列问题:(2014.83)已知动机水平的平均数为38.6,标准差为21.65,学习成绩的平均数是33.8,标准差为18.76,求
以下关于作用范围的描述正确的是()
窗体上有一个名称为Timer1的计时器控件,一个名称为Shape1的形状控件,其Shape属性值为3(Circle)。编写程序如下:PrivateSubForm_Load() Shape1.Top=0 Timer1.Interval=100
下列度量单位中,用来度量CPU时钟主频的是()。
最新回复
(
0
)