<address id="ousso"></address>
<form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
  1. 試題

    12月計算機二級C++上機練習

    時間:2025-04-03 10:16:38 試題 我要投稿
    • 相關推薦

    2016年12月計算機二級C++上機練習

      以下是百分網小編為大家整理的關于2016年12月計算機二級C++上機練習,大家可以來做一做,鞏固一下自己的知識。

      一、綜合應用題

      使用VC6打開考生文件夾下的工程kt9_3,此工程包含一個源程序文件kt9_3.cpp,其中定義了Circle類與Money類,Circle類可對半徑為r的圓進行周長與面積的計算,而Money類用于計算一圓形游泳池的造價。游泳池四周有原形過道,過道外圍上柵欄,過道寬度為3米,根據鍵入的游泳池半徑,每米柵欄價格及每平方米過道價格,即可計算出游泳池的造價。請按要求完成下列操作,將程序補充完整。

      (1)定義符號常量PI(值為3.14159f)與WIDTH(值為3.00f),分別用于表示圓周率與過道的固定寬度。請在注釋“//**1**”之后添加適當的語句。

      (2)定義Circle類默認構造函數,把私有成員radius初始化為參數r的值。請在注釋“//**2**”之后添加適當的語句;

      (3)完成Money類默認構造函數的定義,把私有成員FencePrice(每米柵欄的價格)、ConcretePrice(每平方米過道的價格)初始化為參數f,c的值。請在注釋“//**3**”之后添加適當的語句。

      (4)完成Money類成員函數floatMoney::TotalMoney(floatfencelen,floatconarea)的定義,根據參數fencelen(柵欄的長度)和conarea(過道的面積),返回柵欄與過道的總造價。請在注釋“//**4**”之后添加適當的語句。

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

      源程序文件kt9_3.cpp清單如下:

      #include

      //**1**

      classCircle

      { private:

      floatradius;

      public:

      //**2** floatCircumference(){return2*PI*radius;}

      floatArea(){returnPI*radius*radius;} };

      classMoney

      { private:

      floatFencePrice;

      floatConcretePrice;

      public:

      Money(floatf,floatc);

      floatTotalMoney(floatfencelen,floatconarea); };

      Money::Money(floatf,floatc)

      { //**3** }

      floatMoney::TotalMoney(floatfencelen,floatconarea)

      { //**4** }

      voidmain()

      { floatradius,fence,concrete;

      cout.setf(ios::fixed);

      cout.setf(ios::showpoint);

      cout.precision(2);

      cout<<"Entertheradiusofthepool:";

      cin>>radius;

      cout<<"EntertheFencePrice:";

      cin>>fence;

      cout<<"EntertheConcretePrice:";

      cin>>concrete;

      CirclePool(radius);

      CirclePoolRim(radius+WIDTH);

      Moneymon(fence,concrete);

      floattotalmoney=mon.TotalMoney(PoolRim.Circumference(),(PoolRim.Area()-Pool.Area()));

      cout<<"ThetotalmoneyisRMB"<

      【參考答案】

      (1)const float PI = 3.14159f;

      const float WIDTH =3.00f;

      (2)Circle(float r):radius(r){};

      (3)FencePrice=f;

      ConcretePrice=c;

      (4)return FencePrice*fencelen+ConcretePrice*conarea;

      【試題解析】

      本題考查對符號常量的定義及類的定義與實現等方面的內容,其中常類型的定義應使用const關鍵字。

      二、改錯題

      使用VC6打開考生文件夾下的工程kt9_1,此工程包含一個源程序文件kt9_1.cpp,但該程序運行有問題,請改正程序中的錯誤,使程序的輸出結果如下:

      4,5

      20

      源程序文件清單如下:

      #include

      classA

      { protected:

      intn,m;

      public:

      voidset(inta,intb){m=a;n=b;}

      voidshow(){cout<

      /**********found**********/ }

      classB:publicA

      { ints;

      public:

      voidset(){s=m*n;}

      voidshows(){cout<

      voidmain()

      {

      Bb;

      /**********found**********/

      b.set();

      b.show();

      b.set(); /**********found**********/

      b.show();

      }

      【參考答案】

      (1)在“}”后添加分號

      (2)將b.set();改為:b.A::set(4,5);

      (3)將b.show();改為:b.shows();

      【試題解析】

      (1)主要考查對類定義格式的掌握,類的結尾應該使用";";

      (2)主要考查對基類與派生類函數調用關系的掌握,根據所要求的輸出結果,應該調用的函數為類A的set,而不是類B自身的set函數,應該避免調用的二義性;

      (3)主要考查對繼承與派生的理解,由所要求輸出結果可知正確:b.shows()。

      三、簡單應用題

      請編寫一個函數intCalcDigital(char*str),該函數可返回字符串str中數字字符(即“0”-“9”這10個數字)的個數,如字符串"olympic2008"中數字字符的個數為4。請用if條件判斷語句與for循環語句來實現該函數。

      注意:部分源程序已存在文件中。

      請勿修改主函數main和其他函數中的任何內容,僅在函數find的花括號中填寫若干語句。

      文件kt9_2.cpp的內容如下:

      #include

      #include

      intCalcDigital(char*str);

      voidmain()

      { char*str;

      str=newchar[255];

      cout<<"輸入字符串:";

      cin>>str;

      intnum=CalcDigital(str);

      cout<

      intCalcDigital(char*str)

      {

      }

      【參考答案】

      int CalcDigital(char *str)

      { if(str==NULL) return 0;

      int num_of_digital=0;

      int len=strlen(str); for(int i=0;i

      if(str[i]<='9' && str[i]>='0')

      num_of_digital++;

      return num_of_digital; }

      【試題解析】

      本題考查對于if條件判斷語句與for循環語句的熟練使用程度。注意判斷條件(判斷是否是數字是直接比較ASCII碼)的使用。

    【12月計算機二級C++上機練習】相關文章:

    2016計算機二級《C++》上機練習題06-09

    2016年12月計算機二級C++上機改錯題訓練09-16

    2016年12月計算機二級C++上機選擇題訓練10-03

    2016計算機二級《C++》上機強化練習題10-21

    2016計算機二級《C++》上機練習題及答案10-12

    2016年9月計算機二級《C++》上機題庫及答案09-01

    2016年9月計算機二級《C++》上機試題與解析11-14

    2016年12月計算機二級C++練習題及答案05-30

    計算機二級《C++》上機試題及答案08-12

    <address id="ousso"></address>
    <form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
    1. 日日做夜狠狠爱欧美黑人