首頁 - 網(wǎng)校 - 萬題庫 - 直播 - 雄鷹 - 團購 - 書城 - �?� - 學習通 - 導航 - 510 -
首頁考試吧網(wǎng)校萬題庫直播雄鷹510團購書城模考論壇實用文檔作文大全寶寶起名
2015中考
法律碩士
2015高考
MBA考試
2015考研
MPA考試
在職研
中科院
考研培訓
專升本
自學考試 成人高考
四 六 級
GRE考試
攻碩英語
零起點日語
職稱英語
口譯筆譯
申碩英語
零起點韓語
商務英語
日語等級
GMAT考試
公共英語
職稱日語
新概念英語
專四專八
博思考試
零起點英語
托�?荚�
托業(yè)考試
零起點法語
雅思考試
成人英語三級
零起點德語
等級考試
華為認證
水平考試
Java認證
職稱計算機 微軟認證 思科認證 Oracle認證 Linux認證
公 務 員
導游考試
物 流 師
出版資格
單 證 員
報 關 員
外 銷 員
價格鑒證
網(wǎng)絡編輯
駕 駛 員
報檢員
法律顧問
管理咨詢
企業(yè)培訓
社會工作者
銀行從業(yè)
教師資格
營養(yǎng)師
保險從業(yè)
普 通 話
證券從業(yè)
跟 單 員
秘書資格
電子商務
期貨考試
國際商務
心理咨詢
營 銷 師
司法考試
國際貨運代理人
人力資源管理師
廣告師職業(yè)水平
衛(wèi)生資格 執(zhí)業(yè)醫(yī)師 執(zhí)業(yè)藥師 執(zhí)業(yè)護士
會計從業(yè)資格
基金從業(yè)資格
統(tǒng)計從業(yè)資格
經(jīng)濟師
精算師
統(tǒng)計師
會計職稱
法律顧問
ACCA考試
初級會計職稱
資產(chǎn)評估師
高級經(jīng)濟師
注冊會計師
高級會計師
美國注冊會計師
審計師考試
國際內審師
注冊稅務師
理財規(guī)劃師
一級建造師
安全工程師
設備監(jiān)理師
公路監(jiān)理師
公路造價師
二級建造師
招標師考試
物業(yè)管理師
電氣工程師
建筑師考試
造價工程師
注冊測繪師
質量工程師
巖土工程師
注冊給排水
造價員考試
注冊計量師
環(huán)保工程師
化工工程師
暖通工程師
咨詢工程師
結構工程師
城市規(guī)劃師
材料員考試
消防工程師
監(jiān)理工程師
房地產(chǎn)估價
土地估價師
安全評價師
房地產(chǎn)經(jīng)紀人
投資項目管理師
環(huán)境影響評價師
土地登記代理人
寶寶起名
繽紛校園
實用文檔
入黨申請
英語學習
思想?yún)R報
作文大全
工作總結
求職招聘 論文下載 直播課堂
您現(xiàn)在的位置: 考試吧 > 計算機等級考試 > 計算機二級考試 > C加加 > 模擬試題 > 正文

2016年計算機二級《C++》基礎練習題及答案(2)

考試吧整理“2016年計算機二級《C++》基礎練習題及答案(2)”供考生參考。更多計算機等級考試相關信息請關注考試吧計算機等級考試網(wǎng)。

  點擊查看:2016年計算機二級《C++》基礎練習題及答案匯總

  1[單選題]下列關于面向對象概念的描述中,錯誤的是(  )。

  A.面向對象方法比面向過程方法更加先進

  B.面向對象方法中使用了一些面向過程方法中沒有的概念

  C.面向對象方法替代了結構化程序設計方法

  D.面向對象程序設計方法要使用面向對象的程序設計語言

  參考答案:C

  2[簡答題] 有以下兩個程序,分析它們的執(zhí)行結果有什么不同。

  程序1:

  #include

  class Point

  {

  int x,y;

  public:

  Point(){x=y=0;}

  Point(int i,int j){x=i;y=j;}

  Point operator+(Point);

  void disp() ( cout<<”(”<

  }

  Point Point::operator+(Point P)

  {

  this->x+=P.x; this->y+=p.y;

  return *this;

  }

  void main()

  {

  Point pl(2,3),p2(3,4),p3;

  cout<<”p1:”;p1.disp();

  cout<<”p2:”;p2.disp();

  p3=pl+p2;

  cout<<”執(zhí)行p3=p1+p2后”<

  cout<<”p1:”,p1.disp();

  cout<<”p2:”;p2.disp();

  cout<<”p3:”;p3.disp();

  }

  程序2:

  #include

  class Point{

  int x,Y;

  public:

  Point(){x=y=O;}

  Point(int i,int j){x=i,y=j;}

  Point operator+(Point);

  void disp f){cout<< ”(”<

  }

  Point Point::operator+(Point P)

  {

  Point s;

  s.x=x+p.x; s.y=y+p.y;

  return s;

  }

  void main()

  {

  Point pl(2,3),p2(3,4),p3;

  cout<<”p1:”;p1.disp();

  cout<<”p2:”;p2.disp();

  p3=pl+p2;

  cout<<”執(zhí)行p3=p1+p2后”<

  cout<<”p1:”;p1.disp();

  cout<<”p2:”;p2.disp();

  cout<<”p3:”;p3.disp();

  }

  參考解析:這兩個程序中的main函數(shù)完全相同,類Point中的運算符重載均采用成員函數(shù)方式實現(xiàn),只是程序1的運算符重載函數(shù)使用this指針,而程序2的運算符重載函數(shù)使用局部對象。

  p3=p1+p2 等價于p3=p1.operator+(p2)。對于程序1,this指針指向p1對象,執(zhí)行this->x+=p.x;this->y十一 p.y;語句,修改p l對象的x和y成員值,執(zhí)行return*this;語句,將pl對象賦給p3。所以p1和p3兩個對象的x、Y值相同,即p3=pl+p2等價于 p1=p1+p2,p3:p1,其運行結果如下:

  p1:(2,3)

  p2:(3,4)

  執(zhí)行p3=pl+p2后

  P1:(5,7)

  p2:(3,4)

  P3:(5,7)

  對于程序2,執(zhí)行運算符重載函數(shù),Point s;語句定義一個對象,s.x=x+p.x;s.y=y+p.y;語句用于修改s對象的x、Y值,ret%il~l s;語句返回該對象,賦給p3,而p1和p2對象不改變。其運行結果如下:

  p1:(2,3)

  p2:(3,4)

  執(zhí)行p3=pl+p2后

  p1:(2,3)

  p2:(3,4)

  p3:(5,7)第

  3[單選題]C++語言對C語言做了很多改進,C++語言相對于C語言的最根本的變化是

  A.增加了一些新的運算符

  B.允許函數(shù)重載,并允許設置缺省參數(shù)

  C.規(guī)定函數(shù)說明符必須用原型

  D.引進了類和對象的概念

  參考答案:D

  4[單選題] 若x和y是程序中的兩個整型變量,則下列if語句中正確的是(  )。

  A.if(x==O)y=1;elsey=2;

  B.if(x==0)theny=1elsey=2

  C.if(x==O)y=1elsey=2;

  D.ifx==0y=1elsey=2;

  參考答案:A

  參考解析:if…else語句的格式“if(<條件>)<語句1>else<語句2>”注意語句結束要以分號結尾,對照題中選項可知A正確。

  5[單選題]

  A.3B.4C.5D.6

  參考答案:C

  參考解析:

  

  6[單選題]友元函數(shù)的作用是(  )。

  A.提高程序的效率

  B.加強類的封裝性

  C.實現(xiàn)數(shù)據(jù)的隱蔽性

  D.增加成員函數(shù)的種類

  參考答案:A

  參考解析:友元函數(shù)的引入是為了提高程序的效率,減少通過接口訪問的限制,但卻破壞了類的封裝性。

  7[單選題]下列描述中,錯誤的是(  )。

  A.公有繼承時基類中的公有成員在派生類中仍是公有成員

  B.公有繼承時基類中的保護成員在派生類中仍是保護成員

  C.保護繼承時基類中的公有成員在派生類中仍是公有成員

  D.保護繼承時基類中的保護成員在派生類中仍是保護成員

  參考答案:C

  參考解析:保護繼承時基類中的公有成員在派生類中是保護成員。

  8[單選題] 下列關于C++函數(shù)的說明中,正確的是(  )。

  A.內聯(lián)函數(shù)就是定義在另一個函數(shù)體內部的函數(shù)

  B.函數(shù)體的最后一條語句必須是return語句

  C.標準C++要求在調用一個函數(shù)之前,必須先聲明其原型

  D.編譯器會根據(jù)函數(shù)的返回值數(shù)型和參數(shù)表來區(qū)分函數(shù)的不同重載形式

  參考答案:C

  參考解析:內聯(lián)函數(shù)不是定義在另一個函數(shù)體內部的函數(shù),而是將inline放在函數(shù)定義中函數(shù)類型之前;函數(shù)體的最后一條語句可以是任意的語句;編譯器不會根據(jù)函數(shù)返回值的類型來區(qū)分重載形式,選項D錯誤。標準C++要求在調用一個函數(shù)之前,必須先聲明其原型。

  9[簡答題]使用VC++6.0打開考生文件夾下的源程序文件1.cpp,該程序運行時有錯,請改正其中的錯誤,使程序正常運行,即使程序在屏幕輸出以下類似內容:

  0012FF6810012FF3C5

  0012FF6C20012FF444

  0012FF7030012FF4C3

  0023FF7440012FF542

  0012FF7850012FF5C1

  006AFDCC~006AFDEF數(shù)據(jù)可能因為機器的不同,程序輸出的內容會有差異。只要相差為4的連續(xù)地址即可。

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

  試題程序:

  #include

  usingnamespacestd;

  intmain()

  {

  int*P,a[5]={1,2,3,4,5};

  double*q,b[5]={5.0,4.0,3.0,2.0,1.0);

  intx;

  P=a;

  q=b;

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

  for(x=0;x<=5;X++)

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

  cout<

  (q+x)<

  return0;

  }

  參考解析:

  (1)應改為“for(x=0;x<5;x++)”。

  (2)應改為“cout<

  【解析】本題中根據(jù)數(shù)組a、b的定義。它們都有5個元素,而第1處的“for(x=0;x<=5;x++)”循環(huán)了6次,應該是5次,所以在第1處將其修改為“for(x=0;x<5;x++)”;第2處的P變量為指針型變量,p+x為糯向數(shù)組中第X個元素的地址,這里要輸出的是存儲單元的內容,所以使用“*”指針元素符,即修改為“cout<

  10[填空題]類中包含了一個靜態(tài)成員函數(shù),則main函數(shù)中和P.f1(P);語句具有同樣功能的語句為_______。

  

  參考解析:

  【答案】M::f1(P);

  【解析】由于f1是類M的靜態(tài)成員函數(shù),即說明類M的任何對象都共享一份f1,因此,不僅可以從對象那里訪問f1,還可以用域操作符::通過類名來訪問。

1 2 3 下一頁

  相關推薦:

  各地2016年全國計算機等級考試報名時間匯總

  各地2016年全國計算機等級考試費用匯總

  2016年計算機二級考試《C++》復習資料匯總

  2016年計算機等級考試各級別報考適合專業(yè)類別

文章搜索
版權聲明:如果計算機等級考試網(wǎng)所轉載內容不慎侵犯了您的權益,請與我們聯(lián)系800@exam8.com,我們將會及時處理。如轉載本計算機等級考試網(wǎng)內容,請注明出處。
Copyright © 2004-2025 考試吧計算機等級考試網(wǎng) All Rights Reserved  
中國科學院研究生院權威支持(北京) 電 話:010-62168566 傳 真:010-62192699