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

    計算機二級C++上機考前沖刺試題

    時間:2025-02-01 23:37:53 試題 我要投稿

    2016計算機二級C++上機考前沖刺試題

      基本操作題(18分)

    2016計算機二級C++上機考前沖刺試題

      41、請使用VC6或使用【答題】菜單打開考生文件夾projl下的工程projl,此工程中含有一個源程礙文件 projl.epp。其中位于每個注釋“//ERROR ****found****”之后的一行語句存在錯誤。請改正這些錯誤,使程序的輸出結果為:

      ConstruCtor Called. The value is 10

      Copy ConstruCtor Called. The value is 10

      DestruCtor Called. DestruCtor Called. 注意:只修改注釋“//ERROR ****found****”的下一行語句,不要改動程序中的其他內容。

      //pwjl.Cpp

      #inClude ’using namespaCe std; Class MyClass{

      publiC:

      //ERROR**********found**********

      MyClass(int i)

      {value=i;Cout<<”ConstruCtor Called.” < //ERROR**********found********** MyClass(eonst MyClass P)

      {

      value = P.value;

      eout<<”Copy ConstruCtor Called.”< }

      void Print()

      {Cout<<”The value is” < //ERROR**********found********* void-MyClass()

      {Cout<<”DestruCtor Called.”< private:

      int value;

      }; int main()

      { MyChas objl

      owl.Print();

      MyClmss obj2(owl); obj2.Print();

      retum 0;

      簡單應用題(24分)

      42、請使用VC6或使用【答題】菜單打開考生文件夾pr092下的工程pros2。此工程中包含一個程序文件main.cpp,其中有“部門”類Department和“職工”類Staff的定義,還有主函數main的定義。在主函數中定義了兩個“職工”對象,他們屬于同一部門。程序展示,當該部門改換辦公室后,這兩個人的辦公室也同時得到改變。請在程序中的橫線處填寫適當的代碼并刪除橫線,以實現上述類定義。此程序的正確輸出結果應為:

      改換辦公室前:

      職工號:0789姓名:張三部門:人事處辦公室:521

      職工號:0513姓名:李四部門:人事處辦公室:521

      改換辦公室后:

      職工號:0789姓名:張三部門:人事處辦公室:311

      職工號:0513姓名:李四部門:人事處辦公室:311

      注意:只在橫線處填寫適當的代碼,不要改動程序中的其他內容,也不要刪除或移動“//****found****”。

      #include

      using namespace std;

      class Department{ //“部門”類

      public:

      Department(const char*name,const char*office){

      strcpy(this一>name,nanle);

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

      }

      const char*getName()const{return name;}//返回部門名稱

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

      const char*getOffice()const{________} //返回辦公室房號

      void changeOfficeTo(const char*office){ //改換為指定房號的另一個辦公室

      strcpy(this一>office,office);

      }

      private:

      char name[20];//部門名稱

      char office[20];//部門所在辦公室房號

      };

      class staff{//“職工”類

      public:

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

      Staff(const char*my—id,const char木my_name,Department&my_dept):——{

      strcpy(this一>staff id,my_id);

      strcpy(this一>name,my_name);

      }

      const char*getlD()const{return staff_id;}

      const char*getName()consl{return name;}

      Department getDepartment()const{return dept;} char staff=id[10];//職工號

      char name[20];//姓名

      Department&dept;//所在部門

      }; void showStaff(Staff&staff){

      cout<<”職工號:”< cout<<”姓名:”< cout<<”部門:”< cout<<”辦公室:”< int main(){

      Department dept(”人事處”,”521”);

      Staff Zhang(”0789”,”張三”,dept),Li(”0513”,”李四”,dept);

      cout<<”改換辦公室前:”< showStaff(Zhang); showStaff(Li);

      //人事處辦公室由521搬到311 //**********found********** ———————————————————————一

      cout<<”改換辦公室后:”< showStaff(Zhang); showStaff(Li);

      return 0; }

      綜合應用題(18分)

      43、

      請使用VC6或使用【答題】菜單打開考生文件夾proj3下的工程proj3,其中包含了類IntegerSet和主函數main的定義。一個IntegerSet對象就是一個整數的集合,其中包含0個或多個無重復的整數;為了便于進行集合操作,這些整數按升序存放在成員數組elem的前若干單元中。成員函數add的作用是將一個元素添加到集合中(如果集合中不存在該元素),成員函數remove從集合中刪除指定的元素(如果集合中存在該元素)。請編寫成員函數remove。在main函數中給出了一組測試數據,此時程序的正確輸出結果應為:

      2 3 4 5 27 28 31 66 75

      2 3 4 5 6 27 28 31 56 75

      2 3 4 5 6 19 27 28 31 66 75

      3 4 5 6 19 27 28 31 66 75

      3 4 5 6 19 27 28 31 66 75

      要求:

      補充編制的內容寫在“//***********333***********”與“//***********666***********”之間,不得修改程序的其他部分。

      注意:程序最后將結果輸出到文件out.dat中。輸出函數writeToFile已經編譯為obj文件,并且在本程序中調用。

      //IntegorSet.h

      #ifndef INTEGERSET

      #define INTEGERSET

      #include

      using namespace std;

      const int MAXELEMENTS=100;

      //集合最多可擁有的元素個數

      class IntegerSet{

      int elem[MAXELEMENTS];

      //用于存放集合元素的數組

      int counter; //用于記錄集合中元素個數的計數器

      puhlic:

      IntegerSet():counter(0){}

      //創建一個空集合

      IntegerSet(int data[],int size);

      //利用數組提供的數據創建一個整數集合

      void add(int element);

      //添加一個元素到集合中

      void remeve(int element);

      //刪除集合中指定的元素

      int getCount()const{return counter;}

      //返回集合中元素的個數

      int getElement(int i)const{retum elem[i];}//返回集合中指定的元素

      void show()const;

      };

      void WriteToFile(char*);

      #endif

      //main.cpp

      #include”IntegerSet.h”

      #include

      IntegerSet::IntegerSet(int data[],int size):counter(0){

      for(int i=0;i add(data[i]);

      }

      }

      void IntegerSet::add(int element){

      int j;

      //從后往前尋找第一個小于等于element的元素

      for(j=counter;j>0;j-)

      if(element>=elem[j一1])break;

      //如果找到的是等于element的元素,說明要添加的元素已經存在,直接返回

      if(j>0)

      if(element==elem[j-1])return;

      //如果找到的是小于element的元素,j就是要添加的位置

      //該元素及其后面的元素依次后移,騰出插入位置

      for(int k=counter;k>j;k一)

      elem[k]=elem[k一1];

      elem[j]=element;//將element插入到該位置

      counter++; //計數器加l

      }

      void IntegerSet::remove(int element){

      //***************333***************

      //***************666***************

      void IntegerSet::show()const{

      for(int i=0;i cout< cout< }

      int main(){

      int d[]={5,28,2,4,5,3,2,75,27,66,31};

      IntegerSet S(d,11);S.show();

      S.add(6); s.show();

      S.add(19); S.show();

      S.remove(2); s.show();

      S.add(4); S.show();

      writeToFile(””);

      return 0;

      }

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

    計算機二級《C++》上機考前沖刺試題06-25

    2016計算機二級《C++》上機考前沖刺試題10-22

    計算機二級考試C++考前沖刺試題10-13

    2016年計算機二級《C++》上機考前沖刺題07-08

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

    2016計算機二級《C++》上機沖刺題09-05

    2016計算機二級C++上機試題及答案08-02

    二級C++上機沖刺題及答案解析10-10

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

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