<pre id="bbfd9"><del id="bbfd9"><dfn id="bbfd9"></dfn></del></pre>

          <ruby id="bbfd9"></ruby><p id="bbfd9"><mark id="bbfd9"></mark></p>

          <p id="bbfd9"></p>

          <p id="bbfd9"><cite id="bbfd9"></cite></p>

            <th id="bbfd9"><form id="bbfd9"><dl id="bbfd9"></dl></form></th>

            <p id="bbfd9"><cite id="bbfd9"></cite></p><p id="bbfd9"></p>
            <p id="bbfd9"><cite id="bbfd9"><progress id="bbfd9"></progress></cite></p>
            試題

            12月計算機二級C++備考試題及答案

            時間:2025-03-10 03:15:30 試題 我要投稿
            • 相關推薦

            2016年12月計算機二級C++備考試題及答案

              計算機等級證書是我們找工作的敲門磚,現在越來越多人重視計算機等級考試。下面是百分網小編為大家帶來的2016年12月計算機二級C++備考試題及答案,希望對大家的學習有幫助!

            2016年12月計算機二級C++備考試題及答案

              試題一

              (1)關于友元的概念錯誤的是

              A)友元函數沒有this指針

              B)調用友元函數時必須在它的實參中給出要訪問的對象

              C)一個類的成員函數也可以作為另一個類的友元函數

              D)只能在類的公有段聲明友元

              (2)關于抽象類下面說法正確的是

              A)抽象類就是其中有函數定義但沒有實現的類

              B)抽象類是可以被實例化的

              C)派生類不能成為抽象類

              D)抽象類的子類必須實現父類中的純虛函數

              (3)下面程序的結果是

              #include

              class test { private:

              int num;

              public:

              test();

              int getint(){return num;}

              ~test();};

              test :: test()

              { num =0;}

              test::~test()

              { cout<<"Destructor is active"< P>

              { test x[3];

              cout<<"Exiting main"<>

              Destructor is active

              Destructor is active

              Destructor is active

              B)Exiting main

              Destructor is active

              Destructor is active

              C)Exiting main

              Destructor is active

              D)Exiting main

              (4)如果表達式--x+y中,--是作為成員函數重載的, +是作為成員函數重載的,則該表達式還可為

              A)y.operator+(x.operator--(0))

              B)y.operator+(x.operator--())

              C)y.operator+(operator--(x,0))

              D)operator+(x.operator--())

              (5)下列語句不能夠用于打開C根目錄下文件test.txt的語句是

              A)ifstream fin; fin.open("C:\\test.txt");

              B)ifstream fin("C:\\test.txt");

              C)A)和B)

              D)ifstream fin; fin("C:\\test.txt");

              (6)以下哪個基類中的成員函數表示純虛函數?

              A)virtual void vf (int)

              B)void vf (int)=0

              C)virtual void vf(=0)

              D)virtual void yf(int){ }

              (7)下面程序輸出的結果是

              #include

              void main()

              { int i;

              int a[3][3]={1,2,3,4,5,6,7,8,9};

              for(i=0;i<3;i++)

              cout << a[i][i] << " ";}

              A)1 5 9

              B)7 5 3

              C)3 5 7

              D)5 9 1

              (8)派生類繼承基類的方式有

              A)public

              B)private

              C)protected

              D)以上都對

              (9)下列程序的運行結果為

              #include

              class Location {

              protected:

              int X, Y;

              public:

              void SetX(int myx){X=myx;}

              void SetY(int myy){Y=myy;}

              void showxy(){cout << "X=" << X << " " << "Y=" << Y <>

              private:

              int H, W;

              public:

              void SetH(int myh){H=myh;}

              void SetW(int myw){W=myw;}

              void show(){ cout << "X=" << X << " " << "Y=" << " " << Y << " " << "H=" << H << " " << "W=" << W << endl;}};

              void main()

              { Rectangle r1;

              r1.SetX (3);

              r1.SetY (5);

              r1.SetH (4);

              r1.SetW (6);

              r1.showxy();

              r1.show();}

              A)X=3 Y=5

              X=3 Y=5 H=4 W=6

              B)X=3 Y=5

              X=3 Y=5 H=3 W=6

              C)X=3 Y=5

              X=3 Y=4 H=4 W=6

              D)X=3 Y=5

              X=3 Y=3 H=4 W=6

              (10)有以下程序

              #include

              void ss(char *s,char t)

              { while(*s)

              { if(*s==t)*s=t-′a′+′A′;

              s++;}}

              void main()

              { char str1[100]="abcddfefdbd",c=′d′;

              ss(str1,c); cout << str1;}

              程序運行后的輸出結果是

              A)ABCDDEFEDBD

              B)abcDDfefDbD

              C)abcAAfefAbA

              D)Abcddfefdb

              答案解析:

              (1)D

              解析: C++中的友元可以在一個類中的任何位置聲明,不一定必須在公有段,友元沒有自己的this指針,調用友元函數時必須在它的實參中給出要訪問的對象,并且一個類的成員函數是可以作為另一個類的友元函數的。

              (2)D

              解析: C++語言中的抽象類就是類中至少有一個純虛函數的類,抽象類不能被實例化,繼承抽象類的類必須實現抽象類中的純虛函數。

              (3)A

              解析: C++語言中析構函數是在程序退出不用該類的對象時進行調用。

              (4)B

              解析: C++語言中用成員函數重載--x為:x. operator--(),用成員函數重載x+y為:x. operator+(y)。

              (5)D

              解析: C++語言中打開文件有兩種方式① ifstream fin("test.dat")② ifstream fin;fin.open("test.dat");。

              (6)B

              解析: C++中純虛函數的定義與虛函數的關鍵字一樣,在函數末尾要加上"=0"。

              (7)A

              解析: 首先,當i=0時,數組中的位置是a[0][0]=1,當然,如果用排除法的話,就不用考慮后面的循環了,因為在4個選項中,第1個數為1的選項只有A)。本題執行第2次循環時,i的值為1,則cout函數中的數組指向為a[1][1]=5,依次循環,可求出答案。

              (8)D

              解析: 派生類繼承基類的方式有3種:public,private和protected,常用的是public.

              (9)A

              解析: 本題是一道簡單的成員函數應用題,考生只要按著主函數中生成的類Rectangle的對象r1進行成員函數的調用即可得到答案。

              (10)B

              解析: 在內存中,字符數據以ASCII碼存儲,它的存儲形式就與整數的存儲形式相類似。C++語言使字符型數據和整型數據之間可以通用。也可以對字符數據進行算術運算,此時相當于對它們的ASCII碼進行算術運算,在本題中,s++相當于s=s+1,即讓s指向數組中的下一個元素。

              試題二

              1)有以下程序

              #include

              void main()

              { int a=5,b=0,c=0;

              if(a=b+c)cout << "***"<< ?$$$?<下列選項敘述正確的是<>

              A)有語法錯不能通過編譯

              B)可以通過編譯但不能通過連接

              C)輸出***

              D)輸出$$$

              (2)已知各變量的定義如下

              int i=8,k,a,b;

              unsigned long w=5;

              double x=1.42,y=5.2;

              則以下符合C++語言語法的表達式是

              A)a+=a-=(b=4)*(a=3)

              B)a=a*3+2

              C)x%(-3)

              D)y=float i

              (3)以下程序中循環體總的執行次數是

              int i,j;

              for(i=6;i>1;i--)

              for(j=0;j{……}

              A)20

              B)261

              C)15

              D)25

              (4)對于下面的程序,說法正確的是

              #include

              void main()

              { int x=3,y=4,z=2;

              if(x=y+z)cout << "x=y+z";

              else cout << "x!=y+z";}

              A)不能通過編譯

              B)輸出6

              C)輸出x!=y+z

              D)輸出x=y+z

              (5)下列程序的輸出結果是

              #include

              void main()

              { int a[3],i,j,k=2;

              for(i=0;i<3;i++)a[i]=i;

              for(i=0;ifor(j=0;ja[j]=a[i];

              cout << a[2];}

              A)2

              B)3

              C)1

              D)0

              參考答案:

              (1)D

              解析: 解答本題時,先判斷if語句,因為a=b+c為零,則執行else語句。

              (2)A

              解析: 選項B)中a在運算前未賦初值,在C++語言里變量在運算前必須賦初值;選項C)中的模運算符"%"兩側均應為整型數據;選項D)應改為y=(float)i。

              (3)A

              解析: 本題中第1個for循環執行5次后結束,第2個for循環執行5次。第2個for循環中第1次執行了6次,第2次執行了5次,第3次執行了4次,第4次執行了3次,第5次執行了2次,共20次。

              (4)D

              解析: 解答本題關鍵是要理解if后面的括號里的是賦值語句而并非關系判斷,賦完值后x不等于零,C++語言里非零都作真處理,所以輸出結果為"x=y+z",故答案為選項D),注意"="與"=="的區別。

              (5)A

              解析: 本題里有三個for循環,但要分清楚,第一個是單獨的給三個元素賦值,賦完值后三個a[0]=0,a[1]=1,a[2]=2;后面的兩個for是嵌套循環,對數組元素的賦值,但由于k=2,初值已定for里的條件是小于k,所以不管怎么處理都影響不到a[2],故答案為2。

            【12月計算機二級C++備考試題及答案】相關文章:

            2016年12月計算機二級C++備考習題及答案11-10

            2016年12月計算機二級C++備考題及答案08-22

            2016年12月計算機二級C++備考習題及答案10-07

            12月計算機二級備考練習試題及答案10-24

            2017年9月計算機二級C++備考試題及答案10-29

            計算機二級考試C++備考練習試題及答案10-16

            2017計算機二級C++備考練習試題及答案09-04

            計算機二級C++備考練習試題及答案201710-29

            2017年3月計算機二級C++備考習題及答案11-04

                    <pre id="bbfd9"><del id="bbfd9"><dfn id="bbfd9"></dfn></del></pre>

                    <ruby id="bbfd9"></ruby><p id="bbfd9"><mark id="bbfd9"></mark></p>

                    <p id="bbfd9"></p>

                    <p id="bbfd9"><cite id="bbfd9"></cite></p>

                      <th id="bbfd9"><form id="bbfd9"><dl id="bbfd9"></dl></form></th>

                      <p id="bbfd9"><cite id="bbfd9"></cite></p><p id="bbfd9"></p>
                      <p id="bbfd9"><cite id="bbfd9"><progress id="bbfd9"></progress></cite></p>
                      飘沙影院