上機(jī)考試試題答案與解析
一、程序改錯(cuò)題
(1)應(yīng)添加“public:”。
(2)“inti()”應(yīng)改為“inti(10);”。
(3)“i++;”應(yīng)改為“i--;”。
【解析】本題主要考查的是成員的訪問(wèn)屬性。成員的訪問(wèn)屬性有公有、保護(hù)和私有3種,而默認(rèn)的訪問(wèn)屬性為私有,只有公有成員才能通過(guò)類(lèi)的對(duì)象被訪問(wèn)。故應(yīng)在構(gòu)造函數(shù)前添加“public:”,否則該類(lèi)無(wú)法被實(shí)例化。變量的初始化可以通過(guò)“=”號(hào),也可以和初始化對(duì)象一樣添加構(gòu)造參數(shù),題目已要求使用后者。本題要求輸出5個(gè)數(shù),while的循環(huán)變量i每次減1,在i>5時(shí)循環(huán),故i初始化應(yīng)為10。若循環(huán)中i每次增1,則循環(huán)永遠(yuǎn)不會(huì)退出。
二、簡(jiǎn)單應(yīng)用題
voidfun(doublea[],intlen)
{
if(1en>O)
a[0]=0:
if(1en>1)
a[1]=1;
for(inti=2;i<1en;i++)
a[i]=a[i-1]+a[i-2];
}
【解析】本題考查的是計(jì)算數(shù)列值。首先給a[0]和a[1]賦初值,注意判斷數(shù)組是否越界,然后循環(huán)遍歷a[2]~a[len-1],根據(jù)題目給出關(guān)系計(jì)算每一個(gè)元素的值。
三、綜合應(yīng)用題
(1)應(yīng)添加“virtualvoidprint()=0,”。
(2)“classC1:”應(yīng)改為“classC1:virtualprivateC0”。
(3)“classC2:”應(yīng)改為“classC2:publicC0”。
(4)“classC3:”應(yīng)改為“classC3:publicC2,publicC1”。
【解析】本題考查了類(lèi)的繼承。根據(jù)題意,第1處應(yīng)該添加“virtualvoidprint()=0;”。第2處根據(jù)題意,在冒號(hào)后面應(yīng)添加“virtualprivateCO”。第3處根據(jù)題意,冒號(hào)后應(yīng)添加“publicCO”。第4處根據(jù)題意,冒號(hào)后應(yīng)添加“publicC2,publicC1”。
![]() | ![]() .. 定價(jià):¥133 優(yōu)惠價(jià):¥133.0 更多書(shū)籍 |
![]() | ![]() .. 定價(jià):¥124 優(yōu)惠價(jià):¥124.0 更多書(shū)籍 |