亚洲国产福利在线一二三观看_精品国产伦一区二区三区欲臀_国产a∨视频精品视频护士_精品八戒人妻少妇av

江蘇省高校計算機等級考試命題研究院 江蘇省高校計算機等級考試輔導
2009年春江蘇省二級VC++考試試題與答案

絕密★啟用前

       2009年春

    江蘇省高等學校非計算機專業(yè)學生

    計算機基礎知識和應用能力等級考試

            二級試卷   

    試卷語種:  Visual C++

  明:

1.本試卷包括計算機基礎知識部分和程序設計部分,考試時間共120分鐘

2.本試卷滿分為60分,分選擇題和填空題,試卷不分A、B類型;

3.計算機基礎知識部分全部是選擇題(20),程序設計部分分為選擇題(10)和填空題(30)兩種;   

4.選擇題用答題卡答題。每一項有A、B、C、D四個可供選擇的答案,請選擇其中一個你認為正確的答案,用HB鉛筆涂寫在答題卡的相應答題號內。每選對一項得1分,不選或選錯不得分;

5.填空題用答題紙答題。請將答案用藍、黑色鋼筆或圓珠筆填寫在答題紙的相應答題號內,每個答案只占一行,不得換行。每填對一個答案得1分,不填或填錯不得分;

6.請認真填寫并仔細核對答題卡和答題紙上的學校名稱、準考證號和姓名是否填寫正確。

7.考試結束時將試卷、答題卡和答題紙放在桌上,不得帶走。待監(jiān)考人員收點

    第一部分計算機基礎知識

1.  在下列有關現(xiàn)代信息技術的一些敘述中,正確的是    1    。

  A.集成電路是20世紀90年代初出現(xiàn)的,它的出現(xiàn)直接導致了微型計算機的誕生

  B.集成電路的集成度越來越高,目前集成度最高的已包含幾百個電子元件

  C.目前所有數(shù)字通信均不再需要使用調制解調技術和載波技術

  D.光纖主要用于數(shù)字通信,它采用波分多路復用技術以增大信道容量‘    .

2.  最大的10位無符號二進制整數(shù)轉換成八進制數(shù)是    2    .。

  A.1023    B.1777

  C.1000    D.1024

3.  在下列有關目前PCCPU的敘述中,錯誤的是    3   。

    A.CPU芯片主要是由Intel公司和AMD公司提供的

    B."雙核"是指PC機主板上含有兩個獨立的CPU芯片

    C.Pentium 4微處理器的指令系統(tǒng)由數(shù)百條指令組成

    D.Pentium 4微處理器中包含一定容量的Cache存儲器

4.  在下列有關當前PC機主板和內存的敘述中,正確的是    4   

    A.主板上的BIOS芯片是一種只讀存儲器,其內容不可在線改寫

    B.絕大多數(shù)主板上僅有一個內存插座,因此PC機只能安裝一根內存條

    C.內存條上的存儲器芯片屬于SRAM(靜態(tài)隨機存取存儲器)

    D.目前內存的存取時間大多在幾個到十幾個ns(納秒)之間

5.  在下列有關PC機輔助存儲器的敘述中,正確的是    5    。

    A.硬盤的內部傳輸速率遠遠大于外部傳輸速率

    B.對于光盤刻錄機來說,其刻錄信息的速度一般小于讀取信息的速度

    C.使用USB 2.0接口的移動硬盤,其數(shù)據傳輸速率大約為每秒數(shù)百兆字節(jié)

    D.CD-ROM的數(shù)據傳輸速率一般比USB 2.0還快

6.  在下列PCI/O接口中,數(shù)據傳輸速率最快的是    6    。

    A.USB 2.0          B.IEEE-1394

    C.IrDA (紅外)      D.SATA

 7.  計算機軟件可以分為商品軟件、共享軟件和自由軟件等類型。在下列相關敘述中,錯誤的是    7   

    A.通常用戶需要付費才能得到商品軟件的使用權,但這類軟件的升級總是免費的

    B.共享軟件通常是一種"買前免費試用"的具有版權的軟件

    C.自由軟件的原則是用戶可共享,并允許拷貝和自由傳播

    D.軟件許可證是一種法律合同,它確定了用戶對軟件的使用權限

8.  人們通常將計算機軟件劃分為系統(tǒng)軟件和應用軟件。下列軟件中,不屬于應用軟件類型的是    8  

    A.AutoCAD     B.MSN    C.Oracle      D.Windows Media Player

9.  在下列有關Windows 98/2000/XP操作系統(tǒng)的敘述中,錯誤的是    9    。

    A.系統(tǒng)采用并發(fā)多任務方式支持多個任務在計算機中同時執(zhí)行

    B.系統(tǒng)總是將一定的硬盤空間作為虛擬內存來使用

    C.文件()名的長度可達200多個字符

    D.硬盤、光盤、優(yōu)盤等均使用FAT文件系統(tǒng)

10. 在下列有關算法和數(shù)據結構的敘述中,錯誤的是    10    。

    A.算法通常是用于解決某一個特定問題,且算法必須有輸入和輸出

    B.算法的表示可以有多種形式,流程圖和偽代碼都是常用的算法表示方法

    C.常用的數(shù)據結構有集合結構、線性結構、樹形結構和網狀結構等

    D.數(shù)組的存儲結構是一種順序結構

11•因特網的IP地址由三個部分構成,從左到右分別代表    11    。

    A.網絡號、主機號和類型號

    B.類型號、網絡號和主機號

    C.網絡號、類型號和主機號

    D.主機號、網絡號和類型號

12•在下列有關ADSL技術及利用該技術接入因特網的敘述中,錯誤的是    12    。

    A.從理論上看,其上傳速度與下載速度相同

    B.一條電話線上可同時接聽/撥打電話和進行數(shù)據傳輸

    C.利用ADSL技術進行數(shù)據傳輸時,有效傳輸距離可達幾公里

    D.目前利用ADSL技術上網的計算機一般需要使用以太網網卡

13.人們往往會用"我用的是10M寬帶上網"來說明白己計算機連網的性能,這里的"10M"

  指的是數(shù)據通信中的    13    指標。

  A.最高數(shù)據傳輸速率

  B.平均數(shù)據傳輸速率

  C.每分鐘數(shù)據流量

  D.每分鐘IP數(shù)據包的數(shù)目

14•計算機局域網按拓撲結構進行分類,可分為環(huán)型、星型和    14    型等。

  A.電路交換

  B.以太  

  C.總線

  D.對等

15.網絡信息安全主要涉及數(shù)據的完整性、可用性、機密性等問題。保證數(shù)據的完整性就是 15   。

  A.保證傳送的數(shù)據信息不被第三方監(jiān)視和竊取

  B.保證發(fā)送方的真實身份

  C.保證傳送的數(shù)據信息不被篡改

  D.保證發(fā)送方不能抵賴曾經發(fā)送過某數(shù)據信息

16.某計算機系統(tǒng)中,西文使用標準ASCII碼、漢字采用GB2312編碼。設有一段純文本,其機內碼為CB F5 DO B4 50 43 CA C7 D6 B8,則在這段文本中含有:  16    。

    A.2個漢字和1個西文字符

    B.4個漢字和2個西文字符   

    C.8個漢字和2個西文字符

    D.4個漢字和1個西文字符

17.以下關于漢字編碼標準的敘述中,錯誤的是   17    。

    A.GB 2312標準中所有漢字的機內碼均用雙字節(jié)表示      

    B.我國臺灣地區(qū)使用的漢字編碼標準BIG 5收錄的是繁體漢字

    C.GB 18030漢字編碼標準收錄的漢字在GB 2312標準中一定能找到

    D.GB 18030漢字編碼標準既能與UCS(Unicode)接軌,又能保護已有中文信息資源

18.若波形聲音未進行壓縮時的碼率為64kb/s,已知取樣頻率為8kHz,量化位數(shù)為8,那么它的聲道數(shù)是    18    。

  A.1    B.2   C.4 D.8 

19.從信息處理的深度來區(qū)分信息系統(tǒng),可分為業(yè)務處理系統(tǒng)、信息檢索系統(tǒng)和信息分析系統(tǒng)等。在下列幾種信息系統(tǒng)中,不屬于業(yè)務處理系統(tǒng)的是    19   

    A.DSS  B.CAI   C.CAM   D.OA

 20.在下列有關信息系統(tǒng)開發(fā)、管理及其數(shù)據庫設計的敘述中,錯誤的是    20    。

    A.常用的信息系統(tǒng)開發(fā)方法可分為結構化生命周期方法、原型法、面向對象方法和CASE方法等

    B.在系統(tǒng)分析中常常使用結構化分析方法,并用數(shù)據流程圖和數(shù)據字典來表達數(shù)據和處理過程的關系

    C.系統(tǒng)設計分為概念結構設計、邏輯結構設計和物理結構設計,通常用E-R模型作為描述邏輯結構的工具

    D.從信息系統(tǒng)開發(fā)過程來看,程序

 

21.下列關于"for(e1;e2;e3) s1;"的描述中不正確的是______

A.存在"for(;;) s1;"的情況    B.表達式e1e3可為空,e2不能為空

C.表達式e2的值可增可減       D.循環(huán)體s1可以為空,但分號(;)必須有

22.下列函數(shù)定義中存在語法錯誤的是______

    Avoid f5();f6(){f5;cout<<200;} void f5(){cout<<100;}

    Bvoid f3(){cout<<100;} void f4(){tout<<200;}

    Cvoid f7(int a){if(a)f7(--a);cout<””;}

    Dvoid f1(){cout<<100;void f2(){tout<<200;}}   

23.設有說明語句;   

    int a=7,b=12,e;

  以下表達式選項中,e值為2的是_______

  Ae=b%=(a-a%5)    Be=b%=(a%=5)

  Ce=b%=b+1-a%5    De=(b%=a)-(a%=5)

24.以下敘述中不正確的是_____

  A.一個函數(shù)中可以有多個return語句  B.一個函數(shù)中可以沒有return語句

  C.一個return語句可返回多個值      D.一個return語句可不返回值

25.以下雙目運算符中要求兩個操作數(shù)均為整型的運算符是______。

    A||    B&&    C/   D %

26.以下對break語句的描述中,不正確的是______

  Abreak語句可用在循環(huán)語句中,其作用是結束本層循環(huán)的執(zhí)行

  Bbreak語句可用在switch語句中,其作用是結束該switch語句的執(zhí)行

  Cbreak語句可用在if語句中,其作用是結束該if語句的執(zhí)行

  Dbreak語句在同一循環(huán)體中可以多處使用

27.以下對類的析構函數(shù)的敘述中,正確的是______

  A.析構函數(shù)完成類的初始化   

  B.析構函數(shù)完成對象的初始化

  C.析構函數(shù)完成撤銷對象的相關處理

  D.析構函數(shù)和成員函數(shù)一樣可以顯式地調用   

28.以下有關多態(tài)性的敘述中不正確的是________ 。

    AC++語言的多態(tài)性分為編譯時的多態(tài)性和運行時的多態(tài)性

    B.編譯時的多態(tài)性通過重載函數(shù)來實現(xiàn)

    C.運行時的多態(tài)性通過虛函數(shù)來實現(xiàn)

    D.函數(shù)重載和虛函數(shù)均可實現(xiàn)編譯時的多態(tài)性和運行時的多態(tài)性

29.設已定義了一個類名為MyClass的類:

    MyClass sl,*s2**s3,*s4 E2];

    當該語句執(zhí)行后,調用該類的構造函數(shù)的次數(shù)是 _______

    A1    B2    C3    D.5

 30.在公有派生的情況下,派生類中定義的成員函數(shù)能訪問其基類的_________。

    A.公有成員和保護成員    B.公有成員和私有成員

    C.保護成員和私有成員    D.公有成員、保護成員和私有成員

二、填空題(請將答案填寫在答題紙的相應答題號內,每個答案只占一行)

●基本概念題(5)

1.以下循環(huán)語句的循環(huán)體的執(zhí)行次數(shù)為  ( ) 

      for(int s=0,j=1;j<=10;s+=j);j++;

2void類型的指針是其指向變量的數(shù)據類型是不固定的,對該類型指針進行操作時,通常應進行________

3.C++變量的存儲類型有自動類型、靜態(tài)類型、 _________________。

4.c++函數(shù)的參數(shù)傳遞方式有三種:  (_________)  、指針傳遞和引用傳遞。

●閱讀程序題(13)

5.[程序](2)

    #include

    void fa(int&a,int&b)

    {int t=a;a=b;b=t;}

    void fb(int a,int b)

    {  int t=a;a=b;b=t;}   

    void main(void)

    {int c[2]={100,200},d[2]={300,400};

    fa(c[0],c[1]);    cout<

    rb(d[0],d[1]);    cout<

    }   

    程序輸出的第一行是(   )  ,第二行是(  )。

6.[程序](2)

    #include   

    void main(void)

    {  int n=0,m=0;

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

      for(int j=0;j<3;j++)

        if(j>=i)n++;m++;

    cout<

    }.

  程序輸出的第一行是(   )  ,第二行是(   ) 

7.[程序](2)

    #include

    int a=10;

    void main(void)

    {  int a=20,b=30;

        { int a=0,b=0;

          for(int i=1;i<4;i++){    

              a=a+b;b=::a+b;

           }

          cout<程序輸出的第一行是  (  )  ,第二行是(  )  。

8.[程序](3)  

    #include

    void f2(int x[],int n);   

   

    void fl(int x[],int n)   

    {  cout<

       x[n]++;

       if(n<3){n=n+2;f2(x,n);}

    }   

    void f2(int x[],int n)

    {cout<

     x[n]++;

    if(n<3){n=n+3;fl(x,n);  }

    }

    void main(void)

    {int y[7]={3,4,5,6,7,8,9};

     f1(y,0);

    for(int i=0;i<5;i++)cout<

    cout<   

    }

    程序輸出的第一行是(  )  ,第二行是(  )  ,第三行是( )

  9[程序](2)  

    #include

    class A{

        int n;

    public:

        static int s;

        A(int a){n=a;}

        void add(){s+=n;}

        void print(){cout<

        int get(){return n;}

    };

    int A::s=0;

    class B:public A{

          int y;

    public:

        B(int b,int c):A(c){y=b;}

        void p(){cout<

    };

    void main(void)

    {  A a1(10),a2(20);

       B b1(5,15),b2(10,15);

       a1.add();a2.add();b1.add();b2.add();

       a1.print();a2.print();

       b1.p();b2.p();

    }

    程序輸出的第一行是(  )  ,第三行是(  )

    10[程序](2)

    #include

    class A{

         int x;

    public:

       A(int a){x=a;}

       virtual void print(){cout<<"x="<

       void fun(){print();}

    };

    class B:public A{

          int y:

    public:

         B(int a,int b):A(a){y=b;}   

         void print(){cout<<"y="<    }

         void fun(){print();}

    };

    class C:public B{

          int z;  

    public:

          C(int a,int b,int C):B(a,b){z=c;}

          void print(){cout<<"z="<    }

          void fun(){print();}

    };

    void main(void)

    {  A a1(5),*p1;  

       B bl(10,15);   

       C c1(20,30,40);  

       a1.fun();b1.fun();c1.fun();  

       pl=&b1;  pl->fun();p1=&c1;pl->fun();

    } 

  程序輸出的第四行是()  ,第五行是( )

●完善程序題(12)  

11.以下程序的功能是:采用插入排序的方法將數(shù)組s1中的元素升序排序,并刪除重復的元

  (值相同的元素只保存一個)。函數(shù)insert(int p[],int c,int x)將整數(shù)x插入到已排序

  的數(shù)組P(并仍保持升序),參數(shù)c為數(shù)組P的元素個數(shù)。函數(shù)sort(int s[],int n)將數(shù)

  s中的數(shù)據按升序排序。先將s[0]放到臨時數(shù)組tern[0],然后,依次從s中取一個

  元素,若該元素不在數(shù)組tem,則調用函數(shù)insert()將該元素插入到數(shù)組tern中。最后

  將數(shù)組tem拷貝到數(shù)組s中。

  [程序](4)

    #include

    void insert(int p[],int c,int x)

    {  for(int i=0;i

          if(p[i]>x)break;

          if(i==c)_____________;   

          else{for(int J=c;j>i;j--)p[j]=P[j-1];________;}

    }

    int sort(int s[],int n)

    {int tem[200];  

     int len,j,k;

     tem[O]=s[O];

     len=1    //len記錄數(shù)組tern中的元素個數(shù)

     for(j=1;j

      for(k=0;k

        if(s[j]==tem[k])_____________;

     }

     if(k>=len){

        insert(_________);len=len+1;

        }

    }

    for(j=0;j

    retum len;    //返回數(shù)組的大小

    }   

    void main(void)

    {int s1[200]={34,22,11,55,66,30,22,100,66};

    int n;n=sort(s1,9);

    for(int i=0;i

    cout<<'\n';

    }   

12.以下程序通過重載運算符+、*實現(xiàn)集合(用數(shù)組表示)的并(u),(n)運算。集

  的元素不能相同。兩個集合的并包含了兩個集合的所有元素。兩個集合的交僅包含

  集合中共同存在的元素。設sl={1,2,3,4,5,6},s2={3,5,7,9,11}s1 u s2={1,

  4,5,6,7,9,11},s1 n s2={3,5}。

  [程序](4)

    #include

    class Set{

          float x[20];

          int size;

    public:

         int In(float e,int n)    //元素e已在集合x,則返回1,否則返回0

         {  int flag=0;

           for(int i=o;i

           return flag;

         }

         Set(float a[],int n)   

  {  x[0]=a[0];size=1;

    for(int i=1;i

       if(In(a[i],size)==0){

       (________)  ;

       size++;

       }

  }

    Set(){size=0;}

    Set operator +(Set);

    Set operator *(Set);

    Set &operator =(Set&);

    int GetSet(float y[])

    { for(int i=0;i

      return size;

    } 

    void print()

    {  for(int i=0;i

       cout<<'\n'<<"size=”<

    };

}

Set Set::operator +(Set a)

{   Set tem; 

    for(int i=0;i  ______;

    tem.size=size;

    for(i=0;i

    if(tem.In(a.x[i]i,tern.size)==0)tem.x[tem.size++]=a.x[i];

    return tem;

}

Set Set::operator *(Set a)

{  Set tem;

  tem.size=0;

  for(int i=0;i

    if(a.In(x[i],a.size)==1)

    tem.x[tem.size++]=x[i];

    retum tem;

}    Set &Set::operator =(Set &a)

    {for(int i=0;i   

    (__________)  ;  

    return *this;

    }

    void main(void)

    {float b1[6]={1,2,3,4,5,6};

    float b2[6]={3,5,7,9,11},b3[6];

    Set a1(b1,6),a2(b2,5),a3,a4,a5;   

    a3=a1+a2;a3.print();  

    a5=a1*a2;a5.print();  

    int n=a1.GetSet(b3);

    for(int i=0;i

    cout<<'\n'<

    }

13,以下程序的功能是:先產生一條帶頭結點(鏈表的第一個結點不存儲數(shù)據,而是存儲鏈表的

  表長,即結點個數(shù))的無序鏈表,每一個結點包含一個整數(shù)。然后將該鏈表分成兩條帶頭結

  點的鏈表:_條鏈表上的數(shù)據均為偶數(shù),另一條鏈表上的數(shù)據均為奇數(shù)。函數(shù)Cleate()創(chuàng)建

  了一條帶有頭結點的單鏈表。函數(shù)Print()輸出鏈表上各結點的值。函數(shù)Split()把鏈表

  分割成兩條鏈表,值為奇數(shù)的結點保留在原鏈表上,值為偶數(shù)的結點移到另一個鏈表中,

  并將指向偶數(shù)鏈表的頭指針返回。 

  [程序](4)   

    #include

    struct Node{

    int data; 

    struct Node *next;

    };

    Node *Create(void)    //創(chuàng)建一條帶有頭結點的單向鏈表

    {  Node *p1,*head;

       int a;    //創(chuàng)建頭結點,頭結點的數(shù)據域儲存鏈表的結點個數(shù)

       head=new Node;

       head->data=0;head->next=0   

       cout<<"創(chuàng)建一條無序鏈表,請輸人數(shù)據,-l結束,\n";

       cin>>a;

       while(a!=-1){

        p1=new Node;

    pl->data=a;pl->next=head->next;

    _________;  

    head->data++; 

    cin>>a

  }   

    (___________)    ;

}

void Print(Node *h)

{ h=h->next;

  while(h){eout<data<<" ";h=h->next;}

  cout<

}

Node *Split(Node *&link)  //link-個帶頭結點的單鏈表

{Node *pl=link,*p2=link->next,*head;

  head=new Node;

  head->data=0;head->next=0;

  while(p2){

    if(p2->data%2==O){

      p1->next=p2->next;link->data--;

      p2->next=head->next;

      __________  ; 

      head->data++;    p2=p1->next;

    }

    else{pl=p2;  ___________;}

  }

  return(head);

}

void main(void)

{  Node *h1,*h2;

   hl=Create();    cout<<"輸入的鏈表為:"<

   Print(h1);

   h2=Split(h1);  cout<<"分割后的奇數(shù)鏈表為:"<

   Print(h1);    cout<<"分割后的偶數(shù)鏈表為:"<

   Print(h2);

}

 

 

一、選擇題 
21.B 22.D 23.A 24.C 25.D 26.C 27.C 28.D 29.A 30.A
(1)無數(shù)次   (2)強制類型轉換    (3)外部類型
(4)寄存器類型  (5)值傳遞  (6)200  100
(7)300 400    (8)6    (9)1
(10)30   30  (11)20 30   (12)3
(13)5    (14)8    (15)10   60
(16)15 60  5    (17)15    (18)40
(19)p[c]=x或p[i]=x (20)p[j]=x或p[i]=x   (21)break
(22) tem,len,s[j]  (23)x[i]==e   (24)x[size]=a[i]
(25)tem.x[i]=x[i]    (26)  size=a.size    (27) head->next=p1
(28)retum head    (29)head->next=p2     (30)p2=p2->next