2013年計(jì)算機(jī)二級(jí)C++模擬試題及答案(5)

字號(hào):

一、選擇題
    1.根據(jù)數(shù)據(jù)結(jié)構(gòu)中各數(shù)據(jù)元素之間前后件關(guān)系的復(fù)雜程度,一般將數(shù)據(jù)結(jié)構(gòu)分成( )
    A.動(dòng)態(tài)結(jié)構(gòu)和靜態(tài)結(jié)構(gòu)
    B.緊湊結(jié)構(gòu)和非緊湊結(jié)構(gòu)
    C.線性結(jié)構(gòu)和非線性結(jié)構(gòu)
    D.內(nèi)部結(jié)構(gòu)和外部結(jié)構(gòu)
    【參考答案】 C
    2.在下列幾種排序方法中,要求內(nèi)存量的是( )
    A.插入排序
    B.選擇排序
    C.快速排序
    D.歸并排序
    【參考答案】 D
    3.下列不屬于軟件調(diào)試技術(shù)的是( )
    A.強(qiáng)行排錯(cuò)法
    B.集成測(cè)試法
    C.回溯法
    D.原因排除法
    【參考答案】 B
    4.軟件復(fù)雜性度量的參數(shù)包括( )
    A.效率
    B.規(guī)模
    C.完整性
    D.容錯(cuò)性
    【參考答案】 B
    5.數(shù)據(jù)庫(kù)系統(tǒng)的核心是( )
    A.數(shù)據(jù)庫(kù)
    B.數(shù)據(jù)庫(kù)管理系統(tǒng)
    C.數(shù)據(jù)庫(kù)模型
    D.軟件工具
    【參考答案】 B
    6.最簡(jiǎn)單的交換排序方法是( )
    A.快速排序
    B.選擇排序
    C.堆排序
    D.冒泡排序
    【參考答案】 D
    7.線性表的順序存儲(chǔ)結(jié)構(gòu)和線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)分別是( )
    A.順序存取的存儲(chǔ)結(jié)構(gòu)、順序存取的存儲(chǔ)結(jié)構(gòu)
    B.隨機(jī)存取的存儲(chǔ)結(jié)構(gòu)、順序存取的存儲(chǔ)結(jié)構(gòu)
    C.隨機(jī)存取的存儲(chǔ)結(jié)構(gòu)、隨機(jī)存取的存儲(chǔ)結(jié)構(gòu)
    D.任意存取的存儲(chǔ)結(jié)構(gòu)、任意存取的存儲(chǔ)結(jié)構(gòu)
    【參考答案】 B
    8.在結(jié)構(gòu)化設(shè)計(jì)方法中,生成的結(jié)構(gòu)圖(SC)中,帶有箭頭的連線表示( )
    A.模塊之間的調(diào)用關(guān)系
    B.程序的組成成分
    C.控制程序的執(zhí)行順序
    D.數(shù)據(jù)的流向
    【參考答案】 A
    9.一個(gè)關(guān)系中屬性個(gè)數(shù)為1時(shí),稱此關(guān)系為( )
    A.對(duì)應(yīng)關(guān)系
    B.單一關(guān)系
    C.一元關(guān)系
    D.二元關(guān)系
    【參考答案】 C
    10.相對(duì)于數(shù)據(jù)庫(kù)系統(tǒng),文件系統(tǒng)的主要缺陷有數(shù)據(jù)關(guān)聯(lián)差、數(shù)據(jù)不一致性和( )
    A.可重用性差
    B.安全性差
    C.非持久性
    D.冗余性
    【參考答案】 D
    11.下列選中不全是C++關(guān)鍵字的是( )
    A.const,break,default
    B.long,void,using
    C.virtual,extern,include
    D.try,throw,this
    【參考答案】 C
    12.在32位的計(jì)算機(jī)中,一個(gè)char型數(shù)據(jù)所占的內(nèi)存長(zhǎng)度的字節(jié)是( )
    A.4
    B.1
    C.2
    D.8
    【參考答案】 B
    13.有如下程序:
    #include″iostream.h″
    void main()
    { int x=1,a=0,b=0;
    switch(x) {
    case 0:b++;
    case 1:a++;
    case 2:a++;b++; }
    cout<<″a=″<
    該程序的輸出結(jié)果是( )
    A.a=2,b=1
    B.a=1,b=1
    C.a=1,b=0
    D.a=2,b=2
    【參考答案】 A
    14.若有說(shuō)明int a[3][4];,則a數(shù)組元素的非法引用是( )
    A.a[0][2*1]
    B.a[1][3]
    C.a[4-2][0]
    D.a[0][4]
    【參考答案】 D
    15.若已定義的函數(shù)有返回值,則以下關(guān)于該函數(shù)調(diào)用的敘述中錯(cuò)誤的是( )
    A.函數(shù)調(diào)用可以作為獨(dú)立的語(yǔ)句存在
    B.函數(shù)調(diào)用可以無(wú)返回值
    C.函數(shù)調(diào)用可以出現(xiàn)在表達(dá)式中
    D.函數(shù)調(diào)用可以作為一個(gè)函數(shù)的形參
    【參考答案】 D
    16.以下類定義中可能會(huì)引起錯(cuò)誤的語(yǔ)句是( )
    class A
    { public:
    ~A(){ } //1
    int i; //2
    private:
    int j; //3
    A(int i){i++;} //4 };
    A.1
    B.2
    C.3
    D.4
    【參考答案】 D
    17.下列描述中錯(cuò)誤的是( )
    A.派生類可以作為基類派生其他的子類
    B.派生類繼承基類的所有數(shù)據(jù)成員
    C.派生類可以有多個(gè)基類
    D.派生類不能繼承一些函數(shù)成員
    【參考答案】 B
    18.下列運(yùn)算符中哪些是不能夠被重載的?( )
    A..,.*,->*,::,?:
    B.++,--,new,delete,==
    C.sizeof,new,delete,++,--
    D.sizeof,new,delete,+,-
    【參考答案】 A
    19.下列關(guān)于函數(shù)模板實(shí)參不能省略的情況說(shuō)明不正確的是( )
    A.從模板函數(shù)實(shí)參表獲得的信息有矛盾
    B.需要獲得特定類型的返回值,而不管參數(shù)的類型如何
    C.虛擬類型參數(shù)沒(méi)有出現(xiàn)在模板函數(shù)的形參表中
    D.函數(shù)模板不含有常規(guī)形參
    【參考答案】 D
    20.表達(dá)式10>5&&6%3的值是( )
    A.-1
    B.非零值
    C.0
    D.1
    【參考答案】 C
    21.以下函數(shù)調(diào)用語(yǔ)句中含有參數(shù)個(gè)數(shù)是( )
    excc((v1,v2),(v2,v3,v4),v6);
    A.3
    B.4
    C.5
    D.6
    【參考答案】 A
    22.下列程序段的輸出結(jié)果是( )
    #include
    void fun(fun *x,int *y)
    { cout<<*x<<*y;
     *x=3;
     *y=4; }
    void main()
    { int x=1,y=2;
    fun(&y,&x);
    cout<
    A.2143 www.Examda.CoM
    B.1212
    C.1.4
    D.2112
    【參考答案】 A
    23.下列程序的輸出結(jié)果是( )
    #include
    void main()
    { char *str=″12123434″;
    int x1=0,x2=0,x3=0,x4=0,i;
    for(i=0;str[i]!=′\0′;i++)
    switch(str[i])
    { case′1′:x4++;
     case′2′:x3++;
     case′3′:x2++;
     case′4′:x1++;〗 }
    cout<
    A.8,6,4,1
    B.8,6,3,2
    C.8,8,4,1
    D.8,6,4,2
    【參考答案】 D
    24.每個(gè)C++程序中都必須有且僅有一個(gè)( )
    A.類
    B.預(yù)處理命令
    C.主函數(shù)
    D.語(yǔ)句
    【參考答案】 C
    25.設(shè)有int x=11;,則表達(dá)式(x++*2/3)的值是( )
    A.7
    B.8
    C.11
    D.12
    【參考答案】 A
    26.對(duì)表達(dá)式for(表達(dá)式1;;表達(dá)式3)可理解為( )
    A.for(表達(dá)式1;0;表達(dá)式3)
    B.for(表達(dá)式1;1;表達(dá)式3)
    C.for(表達(dá)式1;表達(dá)式3)
    D.for(;;表達(dá)式3)
    【參考答案】 B 27.有如下說(shuō)明
    int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a;
    則數(shù)值為9的表達(dá)式是( )
    A.*p+9
    B.*(p+8)
    C.*p+=9
    D.p+8
    【參考答案】 B
    28.以下對(duì)C++語(yǔ)言函數(shù)的有關(guān)描述中,正確的是( )
    A.在C++語(yǔ)言中調(diào)用函數(shù),只能把實(shí)參的值傳給形參,形參的值不能傳送給實(shí)參
    B.C++語(yǔ)言函數(shù)既可以嵌套定義又可以遞歸調(diào)用
    C.函數(shù)必須無(wú)返回值,否則不能使用函數(shù)
    D.函數(shù)必須有返回值,返回值類型不定
    【參考答案】 A
    29.拷貝構(gòu)造函數(shù)的參數(shù)一般是( )
    A.某對(duì)象名
    B.某對(duì)象成員名
    C.某對(duì)象的引用名
    D.指向?qū)ο蟮闹羔樏?BR>    【參考答案】 C
    30.下面這個(gè)程序的結(jié)果是( )
    #include
    class A
    { private:
    int a;
    public:
    void seta();int geta();};
    void A::seta()
    { a=1;}
    int A::gate()
    { return a;}
    class B
    { private:
    int a;
    public:
    void seta();int geta();};
    void B::seta()
    {a=2;}
    int B::geta()
    {return a;}
    class C:public A,public B
    { private:
    int b;
    public:
    void display();};
    void C::display()
    { int b=geta();
    cout<
    void main()
    C c;
    C.seta();
    C.display();}
    A.1
    B.2
    C.隨機(jī)輸出1或2
    D.程序有錯(cuò)
    【參考答案】 D
    31.對(duì)于模板定義關(guān)鍵字class和typename說(shuō)法不正確的是( )
    A.程序中的class并不能都替換為typename
    B.class和typename都可互相替換
    C.程序中的typename都能替換為class
    D.程序中的部分class可以替換為typename
    【參考答案】 B
    32.以下程序的輸出結(jié)果是( )
    #include
    long fun(int n)
    { long s;
    if(n==1||n==2)s=2;
    else s=n-fun(n-1);
    return s; }
    void main()
    { cout<
    A.1
    B.2
    C.3
    D.4
    【參考答案】 A
    33.有如下程序
    #include
    void main()
    { char ch[2][5]={″6937″,″8254″},*p[2];
     int i,j,s=0;
     for(i=0;i<2;i++)p[i]=ch[i];
     for(i=0;i<2;i++)
     for(j=0;p[i][j]>′\0′;j+=2)
     s=10*s+p[i][j]-′0′;
     cout<
    該程序的輸出結(jié)果是( )
    A.69825
    B.63825
    C.6385
    D.693825
    【參考答案】 C
    34.以下程序的輸出結(jié)果是( )
    #include
    void main()
    { char x=040;
    cout<<(x<<1);}
    A.100
    B.80
    C.64
    D.32
    【參考答案】 C
    35.對(duì)以下說(shuō)明語(yǔ)句的正確理解是( )
    int a[10]={6,7,8,9,10};
    A.將5個(gè)初值依次賦給a[1]至a[5]
    B.將5個(gè)初值依次賦給a[0]至a[4]
    C.將5個(gè)初值依次賦給a[6]至a[10]
    D.因?yàn)閿?shù)組長(zhǎng)度與初值的個(gè)數(shù)不相同,所以此語(yǔ)句不正確
    【參考答案】 B
    二、填空題
    1.算法的工作量大小和實(shí)現(xiàn)算法所需的存儲(chǔ)單元多少分別稱為算法的【1】。
    【參考答案】
    【1】時(shí)間復(fù)雜度和空間復(fù)雜度
    2.可以把具有相同屬性的一些不同對(duì)象歸類,稱為【2】。
    【參考答案】
    【2】對(duì)象類
    3.由關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)支持的完整性約束是指【3】和參照完整性。
    【參考答案】
    【3】實(shí)體完整性
    4.軟件結(jié)構(gòu)是以【4】為基礎(chǔ)而組成的一種控制層次結(jié)構(gòu)。
    【參考答案】
    【4】模塊
    5.數(shù)據(jù)庫(kù)保護(hù)分為:安全性控制、【5】、并發(fā)性控制和數(shù)據(jù)的恢復(fù)。
    【參考答案】
    【5】完整性控制
    6.在C++語(yǔ)言的面向?qū)ο蟪绦蛟O(shè)計(jì)框架中,【6】是程序的基本組成單元。
    【參考答案】
    【6】類
    7.以下程序的輸出結(jié)果是【7】。
    #include
    void fun()
    { static int a=0;
    a+=2;
    cout<
    void main()
    { int cc;
    for(cc=1;cc<4;cc++)
    fun();
    cout<
    【參考答案】
    【7】2 4 6
    8.以下程序的輸出結(jié)果是【8】。
    #include
    unsigned fun(unsigned num)
    { unsigned k=1;
    do{k*=num%10;num/=10;}while(num);
    return k; }
    void main()
    { unsigned n=26;
    cout<
    【參考答案】
    【8】12
    9.C++語(yǔ)言中的多態(tài)性是在編譯時(shí)通過(guò)【9】和模板體現(xiàn)的,在運(yùn)行時(shí)是通過(guò)【10】體現(xiàn)的。
    【參考答案】
    【9】CCCCCC 【10】虛函數(shù)
    10.執(zhí)行下列語(yǔ)句后,c3中的值為【11】
    int c1=1,c2=2,c3;c3=1.0/c2*c1;
    【參考答案】
    【11】0
    11.以下程序的輸出結(jié)果是【12】。
    #include
    void main()
    { char s[]=″abcdef″;s[3]=′\0′;
    cout<
    【參考答案】
    【12】adc
    12.常數(shù)據(jù)成員和靜態(tài)數(shù)據(jù)成員在使用前共同的要求是要進(jìn)行【13】。
    【參考答案】
    【13】初始化
    13.表達(dá)式x.operator+(y.operator++(0))還可以寫成【14】。
    【參考答案】
    【14】x+y++或x+(y++)
    14.構(gòu)造函數(shù)是和【15】同名的函數(shù)。
    【參考答案】
    【15】類