頻道欄目
首頁 > 資訊 > C++ > 正文

2014年3月計算機二級C++真題及答案(網友版)

14-04-24        來源:[db:作者]  
收藏   我要投稿
  1.軟件生命周期中的活動不包括( )。 
  A.市場調研 
  B.需求分析 
  C.軟件測試 
  D.軟件維護 
  2.下列敘述中正確的是( )。 
  A.一個邏輯數據結構只能有一種存儲結構 
  B.邏輯結構屬于線性結構,存儲結構屬于非線性結構 
  C.一個邏輯數據結構可以有多種存儲結構,且各種存儲結構不影響數據處理的效率 
  D.一個邏輯數據結構可以有多種存儲結構,且各種存儲結構影響數據處理的效率 
  3.下列敘述中正確的是( )。 
  A.一個算法的空間復雜度大,則其時間復雜度必定大 
  B.一個算法的空間復雜度大,則其時間復雜度必定小 
  C.一個算法的時間復雜度大,則其空間復雜度必定小 
  3、下列關于線性鏈表的敘述中,正確的是( )。 
  A.各數據結點的存儲空間可以不連續,但它們的存儲順序與邏輯順序必須一致 
  B.各數據結點的存儲順序與邏輯順序可以不一致,但它們的存儲空間必須連續 
  C.進行插入與刪除時,不需要移動表中的元素 
  D.以上說法均不正確 
  4、對于一個類定義,下列敘述中錯誤的是( )。 
  A.如果沒有定義拷貝構造函數,編譯器將生成一個拷貝構造函數 
  B.如果沒有定義缺省的構造函數,編譯器一定將生成一個缺省的構造函數 
  C.如果沒有定義構造函數,編譯器將生成一個缺省的構造函數和一個拷貝構造函數 
  D.如果已經定義了構造函數和拷貝構造函數,編譯器不會生成任何構造函數 
  9,在對象方法中,一個對象請求另一個對象為其服務的方式是通過發送( )來實現。 A.調用語句 B.命令 C.中令 D.消息 
  4.下列敘述中錯誤的是( )。 
  A.一種數據的邏輯結構可以有多種存儲結構 
  B.數據的存儲結構與數據的處理效率無關 
  C.數據的存儲結構與數據的處理效率密切相關 
  D.數據的存儲結構在計算機中所占的空間不一定是連續的 
  5.下列敘述中正確的是( )。 
  A.在模塊化程序設計中,一個模塊應該盡量多地包括與其他模塊聯系的信息 
  B.在自頂向下、逐步細化的設計過程中,首先應設計解決問題的第一個細節 
  C.在模塊化程序設計中,一個模塊內部的控制結構也要符合結構化原則 
  D.在程序設計過程中,不能同時采用結構化程序設計方法與模塊化程序設計方法 
  二、基本操作題(18分) 
  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; } 
  34、 有如下程序: 
  #inClude using namespaCe std; Class Sample{ 
  friend long fun(Sample S); publiC: 
  Sample(10ng A.{x=a;} private: 
  long X; 
  }; long fun(Sample S){ 
  if(S.x<2)return l; 
  return S.X*fun(Sample(s.x-1)); } 
  int main(  ) { 
  int sum=0; 
  for(int i=0;i<6;i++) {sum+=fun(Sample(i));} 
  Cout< } 
  執行這個程序的輸出結果是(  )。 
  A.120 
  B.16 
  C.154 
  D.34 
  三、簡單應用題(24分)  
  請使用VC6或使用【答題】菜單打開考生文件夾proj2下的工程proj2,該工程中包含一個程序文件 main.cpp,其中有類 CPolygon(“多邊形”)、CRectangle(“矩形”)、CTriangle(“三角形”)的定義。請在橫線處填寫適當的代碼并刪除橫線,以實現上述類定義。該程序的正確輸出結果應為: 注意:只能在橫線處填寫適當的代碼,不要改動程序中的其他內容,也不要刪除或移動 “//****found****”。 #include 
  {tout<<——< int area(void){return(width *height);} 
  class CTriangle:public CPolygon{ 
  int length;//三角形一邊長 int height;//該邊上的高 
  public: 
  CTriangle(int l,int h):length(1),height(h){} 
  //*********found********* 
  int area(void){return(——)/2;} 
  }; 
  int main(){ 
  CRectangle rect(4,5); CTriangle trgl(4,5); 
  //*********found********* ______ *ppolyl,* ppoly2; ppolyl=&rect; 
  ppoly2=&trgl; 
  ppolyl->printarea(); ppoly2->printarea(); retun 0; 
  四、綜合應用題(18分) 
  43、請使用VC6或使用【答題】菜單打開考生文件夾proj3下的工程proj3,其中聲明的DataList類,是一個用于表示數據表的類。s0rt成員函數的功能是將當前數據表中的元素升序排列。請編寫這個sort函數。程序的正確輸出應為: . 
  排序前:7,1,3,11,6,9,12,10,8,4,5,2 排序后:l,2,3,4,5,6,7,8,9,10,11,12 
  要求: 
  補充編制的內容寫在“//********33********”與“//********666********”兩行之問。不得修 
  改程序的其他部分。 
  注意:程序最后將結果輸出到文件。ut.dat中。輸出函數writeToFile已經編譯為。obj文件,并且在本程序 
  調用。 
  //DataList.h 
  #inClude using namespaCe std; Class DataList{//數據表類 
  int len; 
  double*d: publiC: 
  DataList(int len,double data[]=NULL);。DataList(){delete[]d;} 
  int length(Constt retum len;}//數據表長度(即數據元素的個數) double getElement(int i)Const{return d[i];} 
  void sort();//數據表排序 
  void show()Const;//顯示數據表}. 
  void writeToFile(Char*,Const DataList&).//main.Cpp 
  #inClude”DataList.h” 
  DataList::DataList(int len,double data[]):len(1en){ d=new double[1en]; 
  for(int i_0;i d[i]=(data==NULL?0.0:data[i]); 
  } 
  void DataList::sort(){//數據表排序//********333******** 
  //********666********} 
  void DataList::show()Const{//顯示數據表 
  for(int i=0;i } 
  int main(){ 
  double S[]={7,1,3,11,6,9,12,10,8,4,5,2}; DataList list(12,S); 
  Cout<<”排序前:”; list.show(); 
  list.sort(); 
  Cout< writeToFile(””,list); return 0;
相關TAG標簽
上一篇:臺積電:絕大多數7nm客戶都會轉向6nm_IT新聞_博客園
下一篇:最后一頁
相關文章
圖文推薦

關于我們 | 聯系我們 | 廣告服務 | 投資合作 | 版權申明 | 在線幫助 | 網站地圖 | 作品發布 | Vip技術培訓 | 舉報中心

版權所有: 紅黑聯盟--致力于做實用的IT技術學習網站

美女MM131爽爽爽毛片