首頁 - 網(wǎng)校 - 萬題庫 - 美好明天 - 直播 - 導(dǎo)航
您現(xiàn)在的位置: 考試吧 > 計(jì)算機(jī)等級考試 > 計(jì)算機(jī)二級考試 > C語言 > 模擬試題 > 正文

2018年12月計(jì)算機(jī)二級C語言沖刺試題及答案(1)

來源:考試吧 2018-11-26 17:32:04 要考試,上考試吧! 萬題庫
“2018年12月計(jì)算機(jī)二級C語言沖刺試題及答案(1)”供考生參考。更多計(jì)算機(jī)等級考試模擬試題等信息請?jiān)L問考試吧計(jì)算機(jī)等級考試網(wǎng)。

  點(diǎn)擊查看:2018年12月計(jì)算機(jī)二級C語言沖刺試題及答案匯總

  程序改錯題

  使用VC++6.0打開考生文件夾下的源程序文件1.cpp,該程序運(yùn)行時有錯,請改正其中的錯誤,使程序正常運(yùn)行,并使程序輸出的結(jié)果為

  TC1

  TC2

  注意:不要改動main函數(shù),不能增加或刪除行,也不能更改程序的結(jié)構(gòu),錯誤的語句在//******error******的下面。

  試題程序:

  #include

  #include  structTCO

  {

  //********error********

  virtualvoidfun();

  };

  classTCl:publicTCO

  {

  voidfun()

  {

  cout<<"TCl"<  }

  };

  classTC2:publicTCO

  {

  voidfun()

  {

  cout<<"TC2"<  }

  };

  voidmain()

  {

  TCO"P;

  TClobj1;

  TC2obj2;

  //********error********

  p=*obj1;

  p->fun();

  //********error********

  p=*obj2;

  p->fun();

  return;

  }

  參考答案:

  (1)應(yīng)改為“virtualvoidfun()=0;”。

  (2)應(yīng)改為“p=&obj1;”。

  (3)應(yīng)改為“p=&obj2;”。

  【解析】如果在基類中不使用這個虛函數(shù),其返回值也是沒有意義的,它應(yīng)該被定義為純虛函數(shù)。所以虛函數(shù)fun應(yīng)該是純虛函數(shù),也就是聲明虛函數(shù)時初始化為0的函數(shù)。即第2處的“virtualvoidfun()=0;”。第2處的P為指針變量,將對象obj1賦值給P,實(shí)際上蹙P指向?qū)ο髈bj1的地址,所以將“p=*obj1;”修改為“P=&obj1;”。第3處的“P=*obj2;”修改為“p=&obj2;”。

  簡單應(yīng)用題

  使用VC++6.0打開考生交件夾下的源程序文件2.cpp。閱讀下列函數(shù)說明和代碼,完成空出部分程序。函數(shù)fun(intN[4])的功能是用4個數(shù)字,組成互不相同且無重復(fù)數(shù)字的3位數(shù),并將滿足所有條件的數(shù)字輸出到屏幕,

  并且每輸出一個3位數(shù)就換一行。

  程序分析:可填在百位、十位、個位的數(shù)字都是1、2、3、0。組成所有的排列后再去掉不滿足條件的排列。如果判定第一個數(shù)字是0,則也去掉。

  試題程序:

  #include

  voidfun(intN[4])

  {

  }

  intmain()

  intN[4]={1,2,3,0};

  fun(N):

  return0;

  }

  參考答案:

  inti,j,k;

  for(i=0;i<4;i++)//百位循環(huán)

  {

  for(j=0;j<4;j++)//十位循環(huán)

  for(k=0;k<4;k++)//個位循環(huán)

  {

  if(i!=j&&j!=k&&k!=i&&N[i]!=0)//

  當(dāng)三位數(shù)不同,并且百位不為0

  {

  cout<  }

  }

  }

  【解析】本題利用3層循環(huán),對3位數(shù)字是否相同進(jìn)行判斷。如果3位數(shù)不同,并且百位不為0,那么依次輸出這3 位數(shù),即由3位數(shù)組成的數(shù)字。

  綜合應(yīng)用題

  使用VC++6.0打開考生文件夾下的源程序文件3.cpp。其中定義的類不完整,按要求完成下列操作,將類的定義補(bǔ)充完整。

  (1)基類People完成打印功能,定義其中的打印函數(shù)為

  虛函數(shù),請?jiān)谧⑨?后添加適當(dāng)?shù)恼Z句。

  (2)類Boy繼承于People,在構(gòu)造函數(shù)中設(shè)置性別為1,

  請?jiān)谧⑨?后添加適當(dāng)?shù)恼Z句。

  (3)類Girl繼承于People,在構(gòu)造函數(shù)中設(shè)置性別為0,請?jiān)谧⑨?后添加適當(dāng)?shù)恼Z句。

  (4)實(shí)現(xiàn)函數(shù)fun,用于傳遞不同的類型,打印出性別,請?jiān)谧⑨?后添加適當(dāng)?shù)恼Z句。

  輸出的內(nèi)容如下:

  Sex=Boy

  Sex=Girl

  注意:除在指定位暨添加語句之外,請不要改動程序中的其他內(nèi)容。

  試題程序:

  #include

  classPeople

  {

  public:

  //********1********

  voidprint(){}

  intsex;

  };

  classBoy:publicPeople

  {

  publiC:

  Boy()

  {

  //********2********}

  voidprint()

  {

  cout<<"Boy"<  }

  };

  classGirl:publicPeople

  {

  public:

  Girl()

  {

  //********3********}

  voidprint()

  {

  cout<<"Girl"<  }

  };

  //********4********{

  cout<<"Sex=";

  p.print();

  }

  intmain()

  {

  Boym:

  fun(m);

  Girln:

  fun(n);

  return0;

  }

  參考答案:

  (1)將“voidprint(){};”補(bǔ)充完整為“virtualvoidprint(){};”。

  (2)應(yīng)添加“sex=1;”。

  (3)應(yīng)添加“sex=0;”。

  (4)應(yīng)添加“voidfun(People&p)”。

  【解析】第1處要求“基類People完成打印功能,定義其中的打印函數(shù)為虛函數(shù)”。虛函數(shù)是函數(shù)的一種,定義虛函數(shù),在函數(shù)名前聲明virtual就可以了,所以將第1處的“voidprint(){}”語句修改為“virtualvoidprint(){}”。第2處要求“類Boy繼承于People,在構(gòu)造函數(shù)中設(shè)置性別為l”;怭eople中變量sex用來存放性別,Boy繼承People,所以Boy中性別的變量可以使用基類中的sex變量,設(shè)置性別為1,即“sex=1;”。第3處要求“類Girl繼承于People,在構(gòu)造函數(shù)中設(shè)置性別為0”。在第3處添加語句“sex=0;”。第4處要求“實(shí)現(xiàn)函數(shù)fun,用于傳遞不同的類型,打印出性別”。根據(jù)“P.print();”語句知道,fun函數(shù)的形參為指針P,由于它調(diào)用了基類People中的成員函數(shù)print,所以P的基類為People,即添加函數(shù)fun的定義為“voidfun(People&p)”。

掃描/長按二維碼幫助考試通關(guān)
2018年等考報考資訊
2018等考各科通關(guān)技巧
2018各科最新預(yù)測試卷
2018等考各科備考資料

微信搜索"考試吧"了解更多考試資訊、下載備考資料

  相關(guān)推薦:

  2018年12月全國計(jì)算機(jī)等級考試必做試題匯總

  2018年全國計(jì)算機(jī)等級考試必做試題匯總(各科目)

  各地2018年12月全國計(jì)算機(jī)等考準(zhǔn)考證打印時間匯總

  2018年全國計(jì)算機(jī)等級考試復(fù)習(xí)知識點(diǎn)匯總(各科目)

  2018全國計(jì)算機(jī)等級考試備考經(jīng)驗(yàn)及應(yīng)試技巧匯總

0
收藏該文章
0
收藏該文章
文章搜索
萬題庫小程序
萬題庫小程序
·章節(jié)視頻 ·章節(jié)練習(xí)
·免費(fèi)真題 ·模考試題
微信掃碼,立即獲取!
掃碼免費(fèi)使用
版權(quán)聲明:如果計(jì)算機(jī)等級考試網(wǎng)所轉(zhuǎn)載內(nèi)容不慎侵犯了您的權(quán)益,請與我們聯(lián)系800@exam8.com,我們將會及時處理。如轉(zhuǎn)載本計(jì)算機(jī)等級考試網(wǎng)內(nèi)容,請注明出處。
在線模擬試題
考證通關(guān)殺器
考試最新資訊
學(xué)
一次通關(guān)技巧