久久久国产精品秘人口麻豆|永久免费AV无语国产|人成电影免费中文字幕|久久AV嫩草影院2

    1. <dfn id="yitbn"><samp id="yitbn"><progress id="yitbn"></progress></samp></dfn>

          <div id="yitbn"></div>

          1. 首頁 - 網(wǎng)校 - 萬題庫 - 美好明天 - 直播 - 導航
            您現(xiàn)在的位置: 考試吧 > 計算機等級考試 > 計算機二級考試 > C加加 > 模擬試題 > 正文

            2018年3月計算機二級C++過關練習題及答案(3)

            來源:考試吧 2018-02-01 17:26:04 要考試,上考試吧! 萬題庫
            “2018年3月計算機二級C++過關練習題及答案(3)”供考生參考。更多計算機等級考試相關信息請關注考試吧計算機等級考試網(wǎng)。

              點擊查看:2018年3月計算機二級C++過關練習題及答案匯總

              1[判斷題]C++語言比C語言對數(shù)據(jù)類型要求更加嚴格了。

              參考答案:對

              2[簡答題] 為單鏈表類模板增加一個復制構(gòu)造函數(shù)和賦值運算符(=)。在上題基礎上,List類增加一個復制構(gòu)造函數(shù)和賦值運算符(=)。

              參考解析:

              templateList::List(List& l){

              head=new Node(-9999);//現(xiàn)建立頭結(jié)點

              Node* tempP=l.head->link,*tempC;

              while(tempP!=NULL){

              tempC=CreatNode(tempP->info);

              InsertAfter(tempC);

              tempP=tempP->link;

              }

              }

              templateList& List::operator=(List& l){

              MakeEmpty();//先釋放原來鏈表的數(shù)據(jù)結(jié)點

              Node* tempP=l.head->link,*tempC;

              while(tempP!=NULL){

              tempC=CreatNode(tempP->info);

              InsertAfter(tempC);

              tempP=tempP->link;

              }

              return *this;

              }

              int main(){

              Node * P1;

              List list1,list2;

              int a[10]={20,12,0,-5,9,-18,6,11,5,3},i,j;

              for(i=0;i<10;i++){

              P1=list1.CreatNode(a[i]);

              list1.InsertOrder(P1);

              }

              list1.PrintList();

              cout<<"請輸入一個要求刪除的整數(shù)"<

              cin>>j;

              P1=list1.Find(j);

              if(P1!=NULL){

              P1=list1.DeleteNode(P1);

              delete P1;

              list1.PrintList();

              }

              else cout<<"未找到"<

              cout<<"請輸入一個要求插入的整數(shù)"<

              cin>>j;

              P1=list1.CreatNode(j);

              list1.InsertOrder(P1);

              list1.PrintList();

              list2=list1;

              list2.PrintList();

              List list3=list1;

              list3.PrintList();

              cout<<"請輸入一個要求刪除的整數(shù)"<

              cin>>j;

              P1=list1.Find(j);

              if(P1!=NULL){

              P1=list1.DeleteNode(P1);

              delete P1;

              list1.PrintList();

              }

              else cout<<"未找到"<

              list2=list3=list1;

              list2.PrintList();

              list3.PrintList();

              list1.MakeEmpty();//清空list1

              list2.MakeEmpty();//清空list1

              list3.MakeEmpty();//清空list1

              return 0;

              }

              3[單選題]一個工作人員可以使用多臺計算機,而一臺計算機可被多個人使用,則實體工作人員與實體計算機之間的聯(lián)系是:

              A.一對一B.一對多C.多對多D.多對一

              參考答案:C

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

              A.在棧中,棧中元素隨棧底指針與棧頂指針的變化而動態(tài)變化

              B.在棧中,棧頂指針不變,棧中元素隨棧底指針的變化而動態(tài)變化

              C.在棧中,棧底指針不變,棧中元素隨棧頂指針的變化而動態(tài)變化

              D.以上說法都不正確

              參考答案:C

              參考解析:棧是先進后出的數(shù)據(jù)結(jié)構(gòu),在整個過程中,棧底指針不變,入棧與出棧操作均由棧頂指針的變化來操作,所以選擇c。

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

              A.線性表是線性結(jié)構(gòu)

              B.棧與隊列是非線性結(jié)構(gòu)

              C.線性鏈表是非線性結(jié)構(gòu)

              D.二叉樹是線性結(jié)構(gòu)

              參考答案:A

              參考解析:線性表是線性結(jié)構(gòu);線性鏈表是線性表的鏈式存儲結(jié)構(gòu),因此也是線性結(jié)構(gòu);棧與隊列 是特殊的線性表,因此也是線性結(jié)構(gòu);二叉樹是非線性結(jié)構(gòu)。

              6[單選題]

              

              A.0B.1C.2D.3

              參考答案:B

              參考解析:此題實際考查的是變量作用域的屏蔽效應。在C++中,當標識符的作用域發(fā)生重疊時,在一個函數(shù)中聲明的標識符可以屏蔽函數(shù)外聲明的標識符或全局標識符。聲明類A的全局對象時,構(gòu)造函數(shù)首先調(diào)用int函數(shù),但由于靜態(tài)成員變量a被構(gòu)造函數(shù)內(nèi)部的形參a所屏蔽所以a++改變的是形參a的值,對靜態(tài)成員變量a沒有影響。

              7[單選題]在下面的4個關鍵字中用來說明虛函數(shù)的是(  )。

              A.virtualB.publicC.protectedD.private

              參考答案:A

              參考解析:C++中用virtual關鍵字聲明虛函數(shù)。而public、protected、private為成員訪問限定符。

              8[單選題]

              

              參考答案:B

              9[單選題]有如下程序:

              #include

              usingnamespacestd;

              classBase{

              public:

              Base(intx=O){cout<

              };

              classDerived:publicBase{

              public:

              Derived(intx=O){cout<

              private:

              Baseval;

              };

              intmain(){

              Derivedd(1);

              return0;

              }

              程序執(zhí)行后的輸出結(jié)果是(  )。

              A.100B.000C.010D.001

              參考答案:D

              參考解析:本題考查的知識點是豢的構(gòu)造。建立一個類的對象時,構(gòu)造函數(shù)的執(zhí)行順序如下:①執(zhí)行基類的構(gòu)造函數(shù),調(diào)用順序按照各個基類被繼承時聲明的順序(自左向右);②執(zhí)行成員對象的構(gòu)造函數(shù),調(diào)用順序按照各個成員對象在類中聲明的順序(自上而下);③執(zhí)行自身的構(gòu)造函數(shù)。本題Derived類繼承于Base類,所以首先會構(gòu)造基類Base,但Derived類的構(gòu)造函數(shù)沒有初始化列表,所以將調(diào)用Base類的默認構(gòu)造函數(shù),輸出一個0。接下來由于它的成員中還定義了一個Base類的對象,兩構(gòu)造函數(shù)也沒有顯示初始化這個對象,所以再次調(diào)用Base類的默認構(gòu)造函數(shù)輸出一個0。最后構(gòu)造自身,因為主函數(shù)中傳入了構(gòu)造參數(shù)1,所以構(gòu)造自身時輸出了一個1。故最終輸出結(jié)果為001。

              10[單選題] 若已定義:

              inta[]={0,1,2,3,4,5,6,7,8,9},*p=a,i;其中0≤i≤9,則對a數(shù)組元素不正確的引用是(  )。

              A.a[p-a]B.*(&a[i])C.p[i]D.a[10]

              參考答案:D

              參考解析:通常,引用一個數(shù)組元素可以用下標法,如a[p-a]形式,或指針法,如*(&a[i])的形式。本題中a[9]=9,a[10]顯然超出了數(shù)組范圍,數(shù)組的下標是從0開始的。

              11[判斷題]使用class定義的類,其默認的訪問權(quán)限是公有的,使用struct定義的類,其默認的訪問權(quán)限是私有的。

              參考答案:錯

              12[單選題]需求分析階段的任務是(  )。

              A.軟件開發(fā)方法B.軟件開發(fā)工具C.軟件開發(fā)費用D.軟件系統(tǒng)功能

              參考答案:D

              參考解析:需求分析是軟件定義時期的最后一個階段,它的基本任務就是詳細調(diào)查現(xiàn)實世界要處理的對象,充分了解原系統(tǒng)的工作概況,明確用戶的各種需求,然后在這些基礎上確定新系統(tǒng)的功能。

              13[單選題]有如下程序段:

              int *p, a=10, b=1;

              p=&a;

              a=*p+b;

              執(zhí)行該程序段后,a的值是(  )。

              A.12B.11C.10D.編譯出錯

              參考答案:B

              14[單選題]在模塊化程序設計中,按功能劃分模塊的原則是(  )。

              A.各模塊的功能盡量單一,且各模塊之間的聯(lián)系盡量的少

              B.各模塊的功能盡量單一,且各模塊之間的聯(lián)系盡量緊密

              C.各模塊應包括盡量多的功能

              D.各模塊應包括盡量多的輸入輸出操作

              參考答案:A

              參考解析:在模塊化程序設計中.按功能劃分模塊的原則是:要求各模塊的功能盡量單一,且各模塊之間的聯(lián)系盡量的少。

              15[單選題] 數(shù)據(jù)庫設計的根本目標是要解決(  )。

              A.數(shù)據(jù)共享問題

              B.數(shù)據(jù)安全問題

              C.大量數(shù)據(jù)存儲問題

              D.簡化數(shù)據(jù)維護

              參考答案:A

              參考解析:從數(shù)據(jù)庫的概念中可以看到,所謂數(shù)據(jù)庫是指長期存儲在計算機內(nèi)的、有組織的、可共享的數(shù)據(jù)集合。因此進行數(shù)據(jù)庫設計的根本目標還是為了解決數(shù)據(jù)共享問題。

              16[單選題]下列關于this指針的敘述中,正確的是(  )

              A.任何與類相關的函數(shù)都有this指針

              B.類的成員函數(shù)都有this指針

              C.類的友元函數(shù)都有this指針

              D.類的非靜態(tài)成員函數(shù)才有this指針

              參考答案:D

              17[簡答題]使用VC++6.0打開考生文件夾下的源程序文件1.cpp,該程序運行時有錯,請改正其中的錯誤,使程序正常運行,并使程序輸出的結(jié)果為:

              sizeof(S1)=5

              sizeof(s2)=10

              sizeof(s3)=1

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

              (1)不能刪除assert()語句。

              (2)只能修改后面的數(shù)字。

              提示:assert函數(shù)如果為假,則會產(chǎn)生一個中斷異常。

              試題程序:

              #include

              #include

              voidmain()

              {

              char*s1="abc":

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

              assert(sizeof(s1)==3):

              cout<<"sizeof(s1)=5"<

              chars2[10]="ab":

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

              assert(sizeof(s2)==2);

              cout<<"sizeof(s2)=10"<

              chars3=23:

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

              assert(sizeof(s3)==4);

              cout<<"sizeof(s3)=1"<

              return;

              }

              參考解析:

              (1)應改為“assert(sizeof(s1)==4);”。

              (2)應改為“assert(sizeof(s2)==1O);”。

              (3)應改為“assert(sizeof(s3)==1);”。

              【解析】assert函數(shù)如果為假,則會產(chǎn)生一個中斷異常。所以要讓它正常執(zhí)行輸出結(jié)果,那么assert函數(shù)只有為真,才不會產(chǎn)生中斷異常。“assert(sizeof(s1)==3);”語句中“sizeof(s1)==3”為假,這會使程序產(chǎn)生異常,不能正常執(zhí)行。因為str1的值為abc,但是它還有一個尾符,它的長度應該是4,而不是3,所以在第1處修改為“assert(sizeof(s1)==4);”。str2[10]說明,str2的空間為10,在第2處修改為“assert(sizeof(s2)==10);”。charstr3=23;語句說明23是字符,所占存儲空間為1,所以修改為“assert(sizeof(s3)==1);”。

              18[填空題]數(shù)據(jù)模型分為格式化模型和非格式化模型,則關系模型屬于_______ 模型。

              【答案】非格式化

              【解析】數(shù)據(jù)模型分為格式化模型和非格式化模型,關系模型屬于非格式化模型。

              19[填空題]繼承的方式有公有繼承、私有繼承和 【13】 3種。

              參考解析:保護繼承

            掃描/長按二維碼幫助考試通關
            2018年等考報考資訊
            2018等考各科通關技巧
            2018各科最新預測試卷
            2018等考各科備考資料

            微信搜索"考試吧"了解更多考試資訊、下載備考資料

              相關推薦:

              2018年全國計算機等級考試必做試題匯總(各科目)

              2018年全國計算機等級考試復習知識點匯總(各科目)

              2018計算機等級考試報名時間|各地報名入口|報名條件

              2018年全國計算機等級考試時間|教材目錄(2018年版)

              2018全國計算機等級考試備考經(jīng)驗及應試技巧匯總

              報名方法|考試內(nèi)容|考試大綱|2018計算機等級考試科目

              歷年真題匯總|考試吧策劃:2018年計算機等級考試報考指南

            文章責編:wangmeng  
            看了本文的網(wǎng)友還看了
            文章搜索
            萬題庫小程序
            萬題庫小程序
            ·章節(jié)視頻 ·章節(jié)練習
            ·免費真題 ·?荚囶}
            微信掃碼,立即獲取!
            掃碼免費使用
            版權(quán)聲明:如果計算機等級考試網(wǎng)所轉(zhuǎn)載內(nèi)容不慎侵犯了您的權(quán)益,請與我們聯(lián)系800@eeeigo.com,我們將會及時處理。如轉(zhuǎn)載本計算機等級考試網(wǎng)內(nèi)容,請注明出處。
            Copyright © 2004- 考試吧計算機等級考試網(wǎng) 出版物經(jīng)營許可證新出發(fā)京批字第直170033號 
            京ICP證060677 京ICP備05005269號 中國科學院研究生院權(quán)威支持(北京)
            在線模擬試題
            考證通關殺器
            考試最新資訊
            一次通關技巧