<delect id="sj01t"></delect>
  1. <em id="sj01t"><label id="sj01t"></label></em>
  2. <div id="sj01t"></div>
    1. <em id="sj01t"></em>

            <div id="sj01t"></div>
            試題

            上半年全國計算機二級C++考試真題

            時間:2025-04-25 01:20:32 試題 我要投稿
            • 相關推薦

            上半年全國計算機二級C++考試真題

              一、選擇題

            上半年全國計算機二級C++考試真題

              (1)下列敘述中正確的是

              A)棧是“先進先出”的線性表

              B)隊列是“先進后出”的線性表

              C)循環隊列是非線性結構

              D)有序線性表既可以采用順序存儲結構,也可以采用鏈式存儲結構

              (2)支持子程序調用的數據結構是

              A)棧

              B)樹

              C)隊列

              D)二叉樹

              (3)某二叉樹有5個度為z的結點,則該二叉樹中的葉子結點數是

              A)10

              B)8

              C)6

              D)4

              (4)下列排序方法中,最壞情況下比較次數最少的是

              A)冒泡排序

              B)簡單選擇排序

              C)直接插入排序

              D)堆排序

              (5)軟件按功能可以分為: 應用軟件、系統軟件和支撐軟件(或工具軟件)。下面屬于應用軟件的是

              A)編譯程序

              B)操作系統

              C)教務管理系統

              D)匯編程序

              (6)下面敘述中錯誤的是

              A)軟件測試的目的是發現錯誤并改正錯誤

              B)對被調試的程序進行“錯誤定位”是程序調試的必要步驟

              C)程序調試通常也稱為Debug

              D)軟件測試應嚴格執行測試計劃,排除測試的隨意性

              (7)耦合性和內聚性是對模塊獨立性度量的兩個標準。下列敘述中正確的是

              A)提高耦合性降低內聚性有利他哦高模塊的獨立性

              B)降低耦合性提高內聚性有利于提高模塊的獨立性

              C)耦合性是指一個模塊內部各個元索間彼此結合的緊密程度

              D)內聚性是指模塊間互相連接的緊密程度

              (8)數據庫應用系統中的核心問題是

              A)數據庫設計

              B)數據庫系統設計

              C)數據庫維護

              D)數據庫管理員培訓

              (9)有如下程序:

              #include

              using namespace std;

              class ONE{

              int c;

              public:

              ONE():c(0){cout<<1;}

              ONE(int n):c (n){cout<<2;}

              };

              class TWO{

              ONE onel;

              ONE one2;

              public:

              TWO(int m):one2(m){cout<<3;}

              };

              int main()t

              TWO t(4)

              return 0

              }

              運行時的輸出結果是

              A)3

              B)23

              C)123

              D)213

              (10)將E-R圖轉換為關系模式時,實體和聯系都可以表示為

              A)屬性

              B)鍵

              C)關系

              D)域

              (11)對C++編譯器區分重載函數無任何意義的信息是

              A)參數類型

              B)參數個數

              C)返回值類型

              D)常成員函數關鍵字coast

              (12)有如下類定義和變量定義:

              class A{

              publie:

              A(){data=0;}

              ~A(){}

              int GetData ( ) coast { return data;}

              void SetData(int n) {data=n;}

              private:

              int data;

              };

              ccnst A a;

              A b;

              下列函數調用中錯誤的是

              A)a .GetData();

              B)a .SetData(10);

              C)b .GetData();

              D)b .SetData(10);

              (13)有如下類定義和變量定義:

              class Parents{

              public:

              int publicuata;

              private:

              int privateData;

              };

              class ChildA:public Parents{/*類體略*/};

              class ChildB:private Parents{/*類體略*/);

              ChildA a;

              ChildBb;

              下列語句中正確的是

              A)cout< B)cout< C)cout< D)cout<

              (14)運算符重載時不需要保持的性質是

              A)操作數個數

              B)操作數類型

              C)優先級

              D)結合性

              (15)下列關于函數模板的描述中,錯誤的是

              A)從模板實參表和從模板函數實參表獲得信息矛盾時,以模板實參的信息為準

              B)對于常規參數所對應的模板實參,任何情況下都不能省略

              C)虛擬類型參數沒有出現在模板函數的形參表中時,不能省略模板實參

              D)模板參數表不能為空

              (16)要建立文件流并打開當前目錄下的文件file.dat用于輸入,下列語句中錯誤的是

              A)ifstream fin=ifstream.open(“file.dat”);

              B)ifstream*fir.=new ifstream(“file.dat”);

              C)ifstream fin; fin.open(“file.dat”);

              D)ifstream *fin=new ifstream( );fin一>open(“file.dat”);

              (17)下列描述中,不屬于面向對象思想主要特征的是

              A)封裝性

              B)跨平臺性

              C)繼承性

              D)多態性

              (18)有如下程序段:

              Tnt i=4;int j=l;

              int main(){

              int i=8,j=i;

              cout< }

              運行時的輸出結果是

              A)44

              B)41

              C)88

              D)81

              (19)有如下程序段:

              int i=5;

              while(int i=0){cout《'*';i--;}

              運行時輸出“*”的個數是

              A)0

              B)1

              C)5

              D)無窮

              (20)己知有數組定義

              char a[3][4];

              下列表達式中錯誤的是

              A)a[2]=“WIN”

              B)strcpy(a[2],“WIN”)

              C)a [2][3]='W'

              D)a[0][1]=a[0][1]

              (21)已知函數fun的原型為

              int fun(int,int,int);

              下列重載函數原型中錯誤的是

              A)char fun(int,int);

              B)double fun(int,int,double);

              C)int fun(int,char*);

              D)float fun (int, int, int);

              (22)建立一個類對象時,系統自動調用

              A)析構函數

              B)構造函數

              C)靜態函數

              D)友元函數

              (23)通過派生類的對象可直接訪問其

              A)公有繼承基類的公有成員

              B)公有繼承基類的私有成員

              C)私有繼承基類的公有成員

              D)私有繼承基類的私有成員

              (24)己知表達式++a中的“++”是作為成員函數重載的運算符,則與十+a等效的運算符函數調用形式為

              A)a .orerator++(1)

              B)operator++(a)

              C)operator++(a,l)

              D)a.operator++( )

              (25)在定義一個類模板時,模板形參表是用一對括號括起來的,所采用的括號是

              A)( )

              B)[ ]

              C)< >

              D){ }

              (26)當使用ifstream流類定義一個流對象并打開一個磁盤文件時,文件的默認打開方式為

              A)ios_base::in

              B)ios_base::in|ios_base::out

              C)ios_base::out

              D)ios_base::in&ios_base::out

              (27)有如下程序:

              #include

              #include

              using namespace std;

              class XCD{

              char* a;

              int b;

              public:

              XCD(char* aa, int bb){

              a=new char[strlen(aa)+1];

              strcpty(a,aa);

              b=bb;

              }

              Char* Geta (){return a;)

              int Getb(){ return b;}

              };

              int main(){

              char *pl=“abcd”,*p2=“weirong”;

              int dl=6, d2=8;

              XCD x(pl,dl),Y(p2,d2);

              cout< return 0;

              }

              運行時的輸出結果是

              A)12

              B)16

              C)14

              D)11

              (28)有如下程序:

              #include

              #include

              using namespace std;

              class XCF{

              int a;

              public:

              XCF(int aa=0):a (aa){cout<<“1”;}

              XCF(XCF& x){a=x .a; cout<<“2”;)

              ~XCF(){cout< int Geta(){return a;}

              };

              int main(){

              XCF dl(5),d7 (dl);

              XCF *pd=new XCF(8);

              cout

              delete pd;

              return 0;

              }

              運行時的輸出結果是

              A)121SS88

              B)12188SS

              C)12185

              D)128512

              (29)已知類MyClass聲明如下:

              class MyClass{

              int n;

              public;

              MyClass(int k):n(k){}

              int getValue()const{return n;}

              };

              在下列數組定義中正確的是

              A)MyClass x1[2];

              B)MyClass x2[2]={new MyClass(1),new MyClass(2)};

              C)MyClass *x3[2];

              D)MyClass *x4[2]={MyClass(1),MyClass(2)};

              (30)有如下程序:

              #include

              using namespace std;

              class AA{

              lilt k;

              protected:

              int n;

              void setK(int k){ this->k=k;}

              public:

              void setN(int n){ this->n=n;}

              };

              class BB: public }{/*類體略*/};

              int main(){

              BB x_ ; //1

              x .n=1; //2

              x.setN (2); //3

              x.k=3; //4

              x .setK(4);

              return 0;

              }

              在標注號碼的四條語句中正確的是

              A)1

              B)2

              C)3

              D)4

              (31)有如下類定義:

              class XX{

              int xx;

              public:

              XX():xx(0){cout<<' A';}

              XX(int n):xx ( n){tout<<' B';}

              };

              Class YY:public XX{

              Int yy;

              public:

              YY():yy ( 0){cout+yy;}

              YY(int n):XX(n+1),yy(n){cout< YY (int m, int n):XX (m),yy(n){cout< };

              下列選項中,輸出結果為A0的語句是

              A)YY y1(0,0);

              B)YY y2(1);

              C)YY y3(0);

              D)YY y4;

              (32)有如下程序:

              #include

              Using namespace std;

              class A{

              public:

              virtual void f(){cout+1;}

              void g(){cout<<2;}

              };

              class B:public A{

              public:

              virtual void f(){cout<<3;}

              void g(){ecut<<4;}

              };

              void show(A &a){a.f();a.g( );}

              int main(){

              B b;

              show(b);

              return 0;

              }

              運行時的輸出結果是

              A)12

              B)34

              C)14

              D)32

              (33)有如下程序:

              #include

              using namespace std;

              class Pair{

              int m;

              int n;

              public:

              Pair(int i,int j):m(i),n(j){}

              boot operator >(pair p)const; //須在類體外給出定義

              };

              int main(){

              Pair Al(3,4),p2(4,3);p3(4,5);

              Cout<<(pl>p2)<<(p2>P1)<<(p2>p3)<<(p3>p2);

              return 0;

              }

              運算符函數。operator>的功能是比較兩個Pair對象的大小,當左邊對象大時,返回true,否則返回false。比較規則是首先比較兩對象的m成員,m大者為大;當m相等時比較n,n大者為大。程序輸出0101,下列對運算符重載函數的正確定義是

              A)bool Pair::operator>(Pair p)const

              {if (m!=p.m) return m>p.m; return n>p.n;}

              B)bool Pair:;operator>(Pair p)

              {if (m!=p.m) return m>p.m; return n>p.n;}

              C)bool Pair::operator>(Pair p)const

              {if (m>p.m) return true; return n>p.n;}

              D)bool Pair:;operator>(Pair p)

              {if (m>p.m) return true; return n>p.n;}

              (34)假定下列語句都是程序運行后首次執行的輸出語句,其中輸出結果與另外三條語句不同的語句是

              A)cout< B)cout< C)cout<<123< D)cout<

              二、填空題

              (1)假設用一個長度為50的數組(數組元索的下標從0到49)作為棧的存化空間,棧底指針bottom指間棧底元素,棧頂指針top指向棧頂元素,如果bottom=49,top=30(數組下標),則棧中具有【1】個元素。

              (2)軟件測試可分為白盒測試和黑盒測試。基本路徑測試屬于【2】測試。

              (3)符合結構化原則的三種基本控制結構是:選擇結構、循環結構和【3】。

              (4)數據庫系統的核心是【4】。

              (5)在E-K圖中,圖形包括矩形框、菱形框、橢圓框。其中表示實體聯系的是【5】框。

              (6)有如下程序段:

              int x=1,Y=2,z=3;

              x=x^z;

              y=y^z;

              z=x^y;

              cout< 執行這個程序段的輸出是【6】。

              (7)有如下程序段:

              fer(int i=1; i<=50;i++){

              if(i%3 != 0)

              continue;

              else

              if(i%5!=0)

              continue;

              tout< }

              執行這個程序段的輸出是【7】。

              (8)有如下程序段:

              Char c [20]=“examination”;

              c[4]=0;

              cout< 執行這個程序段的輸出是【8】。

              (9)下面的函數利用遞歸實現了求1+2+3+……+n的功能:

              int sum(int n){

              if(n==0)

              return 0;

              else

              return n+sum(n-1);

              }

              在執行sum(10)的過程中,遞歸調用sum函數的次數是【9】。

              (10)非成員函數應該聲明為類【10】函數才能訪問該類的私有成員。

              (11)有如下程序:

              #include

              using namespace std;

              class Monitor{

              public:

              Monitor(char t):type (t){}

              void print( ) const

              {cout<<“The type of monitor is”< private:

              char type;

              };

              class Computer{

              public:

              Computer(int i,char c): 【11】{}

              void Print()const

              {cout<<“The computer is”< private:

              int id;

              Monitor mon;

              };

              const Computer myComputer(101,'B‘);

              myComputer .Print();

              return 0;

              }

              請將程序補充完整,使程序在運行時輸出:

              The computer is 101

              'The type of monitor i.s 8

              (12)有如下程序:

              #include

              using namespace std

              class Animal{

              public:

              virtual char* getType()const { return “Animal”;}

              virtual char* getVoice()const { return “Voice”;}

              };

              Class Dog : public Animal {

              public:

              char* getType ( ) const {return “Dog”;}

              char* getVoice ( ) const {return “Woof”}

              };

              void type(Animal& a) {cout< void speak(Animal a) {cout< int main( ) {

              Dog d; type (d);cout<<“ speak”;speak(d);cout< return 0;

              }

              運行時的輸出結果是【12】。

              (13)補充完整下面的類定義:

              const double PI=3 .14;

              class Circle{ //圓形物體的抽象基類

              protected:

              double r; //半徑

              public:

              Circle(double radius=0):r(radius){}

              【13】;//計算圓形物體表面積的純虛函數聲明

              };

              class Cylinder:public Circle { //圓柱體類

              double h; //高度

              public:

              Cylindr(double radius=0, doubli height=0):

              Circle(radius),h (height){}

              Virtual double Area() { //計算圓柱體的表面積

              return 2*PI*r*(r+h);

              }

              };

              (14)補充完整下面的類定義:

              class XCH{

              char* a;

              public:

              XCH(char* as) { //構造函數

              a=new char[strlen(aa)+1];

              strcpy(a,aa);

              }

              XCH& operator=(const XCH& x) //重載賦值函數

              Delele []a;

              A=new char[strlen(x.a)+l];

              strcpy(a, x .a)

              【14】;

              }

              ~XCH() {delete []a;}

              };

              (15)補充完整下面的模板定義:

              template //Type為類型參數

              class Xtwo{ //由兩個Type類型的數據成員構成的模板類

              Type a;

              Type b;

              public:

              Xtwe(Type aa=0, Type bb=0):a(aa),b(bb){}

              int Ccmpare (){//比較a和b的大小

              if (a>b)returm 1;

              else if(a==b) return 0;

              else return -1;

              }

              Type Snm() {return a+b;} //返回a和b之和

              Type Mult(); //函數聲明,返回a和b之乘積

              };

              Template

              【15】::Mult(){return a*b;} //Mult 函數的類外定義

            【上半年全國計算機二級C++考試真題】相關文章:

            全國計算機二級考試C++真題03-09

            全國計算機等級考試二級C++筆試真題05-01

            2006上半年全國計算機二級C++筆試真題01-22

            2005年上半年全國計算機二級C++筆試真題01-23

            2011年9月全國計算機二級考試C++真題08-16

            2014年3月全國計算機二級考試C++真題03-04

            2011年3月全國計算機二級C++考試真題01-05

            3月全國計算機等級考試二級C++筆試真題05-19

            上半年全國計算機二級考試VFP真題03-28

            <delect id="sj01t"></delect>
            1. <em id="sj01t"><label id="sj01t"></label></em>
            2. <div id="sj01t"></div>
              1. <em id="sj01t"></em>

                      <div id="sj01t"></div>
                      黄色视频在线观看