久久久久无码精品,四川省少妇一级毛片,老老熟妇xxxxhd,人妻无码少妇一区二区

計算機二級考試C++試題

時間:2023-03-09 02:57:26 計算機等級 我要投稿

計算機二級考試C++試題

  C++擅長面向對象程序設計的同時,還可以進行基于過程的程序設計,因而C++就適應的問題規(guī)模而論,大小由之。以下是小編整理的關于計算機二級考試C++試題,希望大家認真閱讀!

計算機二級考試C++試題

  1[單選題] 已知函數(shù)FA調用函數(shù)FB,若要把這兩個函數(shù)定義在同一個文件中,則( )。

  A.FA必須定義在FB之前

  B.FB必須定義在FA之前

  C.若FA定義在FB之后,則FA的原型必須出現(xiàn)在FB的定義之前

  D.若FB定義在FA之后,則FB的原型必須出現(xiàn)在FA的定義之前

  參考答案:D

  參考解析:如果使用用戶自己定義的函數(shù),而該函數(shù)與調用它的函數(shù)(即主調用函數(shù))在同一程序單元中,且位置在主調用函數(shù)之后,則必須在調用此函數(shù)之前對被凋用的函數(shù)作聲明。

  2[單選題]單個用戶使用的數(shù)據(jù)視圖的描述稱為

  A.外模式 B.概念模式 C.內模式 D.存儲模式

  參考答案:A

  3[單選題] 生成派生類對象時,派生類構造函數(shù)調用基類構造函數(shù)的條件是(  )。

  A.無需任何條件

  B.基類中顯式定義了構造函數(shù)

  C.派生類中顯式定義了構造函數(shù)

  D.派生類構造函數(shù)明確調用了基類構造函數(shù)

  參考答案:D

  參考解析:派生類的構造函數(shù)必須通過調用基類的構造函數(shù)來初始化基類子對象。所以,在定義派生類的構造函數(shù)時除了對自己的數(shù)據(jù)成員進行初始化外,還必須負責調用基類構造函數(shù)使基類的數(shù)據(jù)成員得以初始化。

  4[單選題] 下列敘述中正確的是(  )。

  A.在面向對象的程序設計中,各個對象之間具有密切的關系

  B.在面向對象的程序設計中,各個對象都是公用的

  C.在面向對象的程序設計中,各個對象之間相對獨立,相互依賴性小

  D.上述三種說法都不對

  參考答案:C

  參考解析:面向對象的程序設計是用對象模擬問題領域中的實體,各對象之間相對獨立,相互依賴性小,通過消息來實現(xiàn)對象之間的相互聯(lián)系。

  5[簡答題] 有以下兩個程序,分析它們的執(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)第

【計算機二級考試C++試題】相關文章:

計算機二級考試C++試題及答案03-27

2017最新計算機二級考試C++試題及答案06-16

2016最新計算機二級C++上機試題及答案03-03

2015年計算機二級《C++》考前沖刺試題03-09

計算機二級C++考試測試卷及答案02-27

2017年計算機二級《C++》預測試題03-09

vb計算機二級考試試題05-24

2017計算機二級考試試題03-30

2016年計算機二級C++考試試卷及答案03-05

計算機二級Access考試試題及答案01-20