鸭子tv国产极品在线观看_成人69视频在线播放_91精品免费在线观看_亚洲AT永久偷窥无码精品_国产精品自产拍在线观看涩浪潮久

江蘇省高校計算機等級考試命題研究院 江蘇省高校計算機等級考試輔導
2010秋江蘇省二級C++考試真題

    絕密★ 啟用前

2010年秋

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

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

二級試卷

試卷語種:C++語言

 

  明:

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

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

3.計算機基礎知識部分全部是選擇題(20),程序設計部分分為選擇題(1 0

  )和填空題(30)兩種;

4.選擇題用答題卡答題。每一項有A、B、CD四個可供選擇的答案,請選

  擇其中一個你認為正確的答案,用HB鉛筆涂寫在答題卡的相應答題號內。

  每選對一項得1分,不選或選錯不得分;

5.填空題用答題紙答題。請將答案用藍、黑色鋼筆或圓珠筆填寫在答題紙的

  相應答題號內,每個答案只占一行,不得換行。每填對一個答案得1分,

  不填或填錯不得分;

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

  否填寫正確。

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

  畢清點后,方可離場。

 

第一部分  計算機基礎知識

  1.微電子技術是信息技術領域中的關鍵技術,它以集成電路為核心.下列有關集成電路的敘述中,錯誤的是 ___(1)___  

    A.  現(xiàn)代集成電路使用的半導體材料只能是硅(Si),不能使用其它任何半導體材料

    B.  集成度是指集成電路包含的電子元件數(shù)目,可分為SSI、MSI、VLSI

    C.  Moore定律指出,單塊集成電路的集成度平均18--24個月翻一番

    D.  我國第二代身份證中嵌入了集成電路芯片,可以實現(xiàn)電子防偽和數(shù)字管理功能

  2.  數(shù)據(jù)傳輸速率是數(shù)據(jù)通信中重要的性能指標。Gb/s是數(shù)據(jù)傳輸速率的計量單位之一,其正確含義是 ___(2)___   。

    A.每秒兆位

    B.每秒千兆位

    C.每秒百兆位

    D.每秒百萬位

  3.  所謂"變號操作"是指將一個整數(shù)變成絕對值相同但符號相反的另一個整數(shù)。假設使用補碼表示的8位整數(shù)x=10010101,則經(jīng)過變號操作后結果為___(3)___.

    A.01101010

    B.00010101

    C.11101010

    D.01101011

  4.  下列有關PC機主板的敘述中,錯誤的是 ___(4)___   。

    A.  主板的物理尺寸沒有標準,各廠家均可自行定義

    B.  主板上包含芯片組,它是PC機各組成部分相互連接和通信的樞紐

    C.  主板上包含BIOSCMOS芯片

    D.  主板上包含CPU插座、內存條插槽及其它類型的插槽

  5.  下列有關PC機中央處理器(CPU)和內存(內存條)的敘述中,正確的是 __(5)____   .

    A.PC機所采用的CPU都是Intel公司生產的Pentium系列芯片,其它廠商生產的

    CPU都與之不兼容

    B.  目前已有雙核的微處理器(例如Core 2 Duo),但還沒有四核的微處理器

    c.  通常來說,DRAM的速度比SRAM的存取速度慢

    D.  一般來說,一個內存條上僅有一個DRAMSRAM芯片

6.  下列有關PCI/O總線與I/O接口的敘述中,錯誤的是 __(6)____   .

    A.  目前PC機中協(xié)調與管理總線操作的總線控制器包含在主板上的芯片組中

    B.  總線最重要的性能是數(shù)據(jù)傳輸速率,其單位通常為MB/sGB/s

    C.  SATA接口的數(shù)據(jù)傳輸速率通常低于USB 2.0的數(shù)據(jù)傳輸速率

    D.  USB連接器有4個引腳,其中一個引腳連接+5V電源

7.  下列有關PC機常用I/O設備的敘述中,錯誤的是__(7)____。

    A.  目前臺式機鍵盤通常有一百零幾個按鍵,筆記本電腦的鍵盤有八十幾個按鍵

    B.  目前流行的鼠標是光電鼠標,其與主機的接口有PS/2USB兩種

    C.  寬屏LCD顯示器的寬高比為1691610

    D.  打印速度是打印機的重要性能指標,速度單位通常為dpi

8.  下列有關PC機外存儲器的敘述中,錯誤的是___(8)___    。

  A.  目前硬盤的盤片大多為3.5、2.51.8英寸,一個硬盤中可有一個或多個盤片

  B.  目前有些u盤可以模擬硬盤和光盤存儲器啟動操作系統(tǒng)

  C.  目前光盤存儲器主要分為CDDVDBD三種,它們均采用紅外激光進行讀寫

  D.  目前光驅的速率通常用多少倍速表示

9.  下列有關計算機軟件的敘述中,錯誤的是___(9)___.

  A.  軟件一般是指程序及其相關的數(shù)據(jù)和文檔資料   

  B.  從軟件的用途考慮,軟件可以分為系統(tǒng)軟件和應用軟件,主要的系統(tǒng)軟件有操作系統(tǒng)、語言處理系統(tǒng)和數(shù)據(jù)庫管理系統(tǒng)等。   

  C.  從軟件的權益來考慮,軟件可以分為商品軟件、共享軟件和自由軟件,共享軟件和自由軟件均為無版權的免費軟件

  D.Linux是一種系統(tǒng)軟件、自由軟件

10.到目前以止,Windows系列操作系統(tǒng)已推出多個版本。在下列版本中,最新的Windows

  版本是___(10)___

  A.  Windows7   B.  Windows Me  C.  Windows XP    D.  Windows Vista

11.下列有關Windows XP操作系統(tǒng)功能的敘述中,錯誤的是___(11)___.

    A.  系統(tǒng)通過"時間片”輪轉策略支持多任務處理 

    B.  系統(tǒng)利用SPOOLing技術進行存儲管理

    C.  在設備管理中引入了緩沖技術,以減少I/O操作的等待時間

    D.  系統(tǒng)支持PnP功能,并按ACPI標準進行電源管理

12.在因特網(wǎng)中某臺主機的IP地址為20.25.30.8,子網(wǎng)掩碼為255.255.255.0,那么該主機

  的主機號為  ___(12)___  。

  A.  20   B.  25    C.  30   D.  8

13.局域網(wǎng)中需要傳輸?shù)臄?shù)據(jù)必須預先組織成若干數(shù)據(jù)幀,每一數(shù)據(jù)幀的格式如下圖所示:

上圖中最末部分"?”表示的是___(13)___    。

發(fā)送計算機地址

目的計算機地址

編號

有效載荷

  ?

A.協(xié)議信息

B.校驗信息

C.冗余信息

D.結束標志

14.目前網(wǎng)絡用戶接入因特網(wǎng)有多種方式,例如ADSL、HFC等。通過HFC接入因特網(wǎng)時采用的網(wǎng)絡是___(14)____

    A.  有線電話網(wǎng)   B.  有線電視網(wǎng)   C.  無線局域網(wǎng)    D.  移動電話網(wǎng)

15.下列網(wǎng)絡協(xié)議中,直接與電子郵件傳輸相關的網(wǎng)絡協(xié)議是___(15)___。

    A.FTP   B.SMTP    C.TELNET     D.NNTP

16.下列有關計算機中文本與文本處理的敘述中,錯誤的是 ___(16)____ 

    A.  西文字符主要是采用ASCII字符集,基本ASCII字符集共有256個字符

    B.  我國最早采用的漢字字符集是GB2312,包含6000多個漢字和若干個非漢字字符

    C.  無論采用何種方式輸入漢字,在計算機中保存時均采用統(tǒng)一的漢字內碼

    D.  簡單文本和豐富格式文本中字符信息的表示相同,區(qū)別在于格式信息的表示

17.彩色圖像所使用的顏色描述方法稱為顏色模型(即顏色空間)。下列四種顏色模型中,

    彩色噴墨打印機使用的是___(17)___.

    A.  RGB   B.  HSB    C.  YUV    D.  CMYK

 18.文件的擴展名用于標記文件的類型,用戶應該盡可能多地知曉各類文件的擴展名,

    列文件中,屬于數(shù)字聲音的文件是______

    A.  ABC.RM

    B.  ABC.WMA

    C.  ABC.MKV

    D.  ABC.SWF

 19.信息系統(tǒng)軟件開發(fā)瀑布模型包括系統(tǒng)規(guī)劃、系統(tǒng)分析、系統(tǒng)設計、系統(tǒng)實施和系統(tǒng)維

    護等幾個階段。下面各項工作中,屬于系統(tǒng)實施階段的是___(19)___

    A.問題定義

    B.可行性研究

    C.系統(tǒng)測試

    D.繪制E-R

20.下列有關Micmsoft Word 2003Microsoft Excel 2003軟件的敘述中,錯誤的是___(20)___

    A.  利用Word軟件編輯文檔,可以將其保存為TXTDOC、RTFHTM格式文件

    B.  利用Word軟件編輯文檔時,可以統(tǒng)計選定文本的字符數(shù)

    C.  Excel軟件中,可以打開(導入)TXT、DBF、HTML格式的文件(數(shù)據(jù))

    D.  Excel文件可以設置打開權限密碼,但不可以單獨設置修改權限密碼

 

第二部分  C++語言程序設計

一、選擇題(用答題卡答題,答案依次填在21--30答題號內)

21.對于fordowhile循環(huán)語句,以下描述正確的是___(21)___

  A.for語句中的循環(huán)體至少執(zhí)行一次            B.兩個語句中的循環(huán)體可能都不執(zhí)行

  C.do...while語句中的循環(huán)體至少執(zhí)行一次     D.兩個語句中的循環(huán)體至少執(zhí)行一次

22.設有說明語句;int hh[4]={2,3,4},*p=hh;則以下選項中存在語法錯誤的是___(22)___

  A.p++;    B.hh++;    C.(*p)++; D.(*hh)++

23.以下說明語句中,不存在語法錯誤的是___(23)___  。

  A.int s=26,this=30;         B.int _s1=25,-s2=100;

  C.int n;cin>>n;int arr[n];  D.char str[]={"I am a student"};

24.設有語句;int a=10,b=20,c=30;則執(zhí)行語句;cout<<(a,b,c);其輸出結果是___(24)___

  A.10    B.20    C.30   D.10,20,30

25.以下關于運算符重載的敘述中,正確的是___(25)___ 

    A.c++已有的任何運算符都可以重載    B.可以重載C++中沒有的運算符

    C.運算符重載時可改變其優(yōu)先級       D.運算符重載時可改變其實現(xiàn)的功能

26.設有函數(shù)原型說明;float *f(int,float);,則函數(shù)f的返回值為___(26)___    .

    A.一個實數(shù)    B.指向一個實數(shù)的指針  C.該函數(shù)的地址 D.指向一個函數(shù)的指針

27.下列有關構造函數(shù)的敘述中,不正確的是___(27)___ .

    A.可以定義沒有構造函數(shù)的類    B.任何一個類必定有構造函數(shù)

    C.類的構造函數(shù)可以重載        D.構造函數(shù)沒有返回值

28.下列有關類成員的敘述中,不正確的是___(28)___    。 

    A.當不指定類成員的訪問權限時則為私有成員   B.友元函數(shù)可訪問類中的任一成員

    C.指定為public的成員不允許在類外訪問      D.成員函數(shù)可訪問類中的任一成員

29.以下關于類和對象的敘述中,不正確的是___(29)___   .

    A.不同的類可以產生相同類型的對象    B.類是一種類型,它定義了數(shù)據(jù)和操作

    C.對象是類的實例                    D.任一對象必屬于某一個類

30.以下關于指針運算的敘述中,不正確的是___(30)___

    A.可以將NULL賦給任一指針變量

    B.兩個同類型的指針變量可進行相等或不等的比較運算

    C.指針變量的值加上整常數(shù)n,可使該指針指向當前元素后的第n個元素

    D-指向同一數(shù)組的兩個指針變量,在任何情況下,兩指針變量相減都是無意義的

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

●基本概念題,5

1.每一個類均有構造函數(shù)和析構函數(shù),這兩個函數(shù)中不可以定義為虛函數(shù)的是___(1)___  

2.定義了宏;#define F(x,y,z)  x/y*z

  執(zhí)行語句;b=F(3+4,2+2,4+4);后變量b的值為___(2)___

3.函數(shù)重載和運算符重載實現(xiàn)的多態(tài)性屬于___(3)___多態(tài)性.

4.為使函數(shù)不返回任何值,定義函數(shù)時應在函數(shù)名前加保留字(關鍵字)___(4)___    .

5.C++存儲類型的四種說明符分別是;auto,static,extern___(5)___  

●閱讀程序題,13

6.[程序]  (2)

  #include <iostream.h>

  void main(void)

  {

    int c2,c3,c5,m=20;

    c2=c3=c5=0;

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

      if(i==15 || i==14)continue;

    if(i%2==0) c2++;

    if(i%3==0) c3++;

    if(i%7==0) c5++;

    }

    cout<<c2<<endl<<c3<<endl<<c5<<endl;

   }   

    執(zhí)行程序后輸出的第一行是___(6)___,  第三行是___(7)___

7.[程序]  (2)

  #include<iostream.h>

  int f(int a,int &b,int *c)

  {

    a+=b;  b+=*c;*c+=a;

    return  (a+b+*c);

  }

  void main(void)

  {

    int x=5,y=5,z=6,sum;

    for(int i=0;i<2;i++){

      sum=f(x,y,&z);

      cout<<x<<'\t'<<y<<'\t'<<z<<'\t'<<sum<<'\n';

    }

  }

    執(zhí)行程序后輸出的第一行是___(8)___,第二行是___(9)___

8.[程序]  (2)

  #include <iostream.h>

  void f(int s[],int *y)

  {

    static int t=3;

    *y=s[t];

    s[t]*=2;

    t--;

  }

  void main(void)

  {

    int a[]={1,2,3,4},i;

    int x=0;

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

      f(a,&x);

      cout<<x<<endl;

    }

    for(i=0;i<4;i++) cout<<a[i]<<'\t';

    cout<<'\n';

  }

    執(zhí)行程序后輸出的第二行為___(10)___,最后一行為 ___(11)___

9.[程序](3)

    #include<iostream.h>

    void f(int x,int y)

    {  

      char res[10]={0};

      int i=0,rem;

      do{

         rem=x%y;

         x=x/y;

         if(rem<10) res[i]='0'+rem;else res[i]='A'+rem-10;

         i++;

        }while(x!=0);

        i--;

        for(;i>=0;i--) cout<<res[i];

        cout<<endl;

    }

    void main(void)

    {

      f(23,10);

      f(45,8);

      f(50,16);

    }

    執(zhí)行程序后輸出的第一行是___(12)___,第二行是___(13)___,第三行是___(14)___.

10.[程序]  (2)

  #include <iostream.h>

  char st[]="Your friend!";

  void f2(int );

  void f1(int i)

  {

    cout<<(st+i)<<endl;

    if(i<3){

      i+=2;

      f2(i);

    }

  }

  void f2(int i)

  {

    cout<<st[i]<<endl;

    if(i<3){

       i+=2;

       f1(i);

    }

  }

  void main(void)

  {

    int i=0;

    f1(i);

  }

    執(zhí)行程序后輸出的第一行是___(15)___,第二行是___(16)___.

11.[程序](2)

  #include<iostream.h>

  class A{

    public:

        A(char *s){cout<<s<<endl;}

        A(){ };

    };

    class B:public A{       //L1

    public:

        B(char *s1,char *s2):A(s1)

        { cout<<s2<<endl;}

    };

    class C : public A{      //L2

    public:

        C(char *s1,char *s2):A(s1)

        {  cout<<s2<<endl;}

    };

    class D:public B,public C{

    public:

        D(char *s1,char *s2,char *s3,char *s4):B(s1,s2),C(s1,s3)

        {    cout<<s4<<endl;}

    };

    void main(void)

    {

       D *ptr= new D("students","study","C++","hard");

       delete ptr;

    }

    執(zhí)行程序后共輸出___(17)___.

    若分別將L1行改為;class B : virtual public A{       //L1

    L2行改為:class C:virtual public A{    //L2

    則執(zhí)行程序后共輸出___(18)___行。

●完善程序題,12

12.以下程序的功能是;從鍵盤上輸入一個大于等于3的整數(shù),將其分解為質因子的乘積并輸

.例如,輸入50,則輸出;50;2*5*5;輸入45,則輸出;45=3*3*5;輸入37.則出;37=37.

    [程序]  (4)

    #include <iostream.h>

    int prime(int x)  //求大于x的最小質數(shù)(素數(shù))

    {

      int flag=1;

      x++;

      while(___(19)___){

         int i=2;

         while(i<x){

           if(___(20)___)break;

           i++;

         }

         if(i<x)x++;else flag=0;

      }

    return x;

    }

    void f(int n)  //n分解為若干個質數(shù)之積

    {

      int flag=1;

      int i=2;      //保證i為質數(shù)

      do{

         while(___(21)___){

            if(flag==1){

                cout<<i;

                flag=0;

            }

            else cout<<'*'<<i;

            n=n/i;

         }

        ___(22)___

      }while(i<n);

      if(n!=1)

        if(flag==1) cout<<n;else cout<<'*'<<n;

    }

    void main(void)

    {

     int x;

    do{

     cout<<"請輸入一個整數(shù),若小于3則重輸;";

     cin>>x;

    }while(x<3);

    cout<<x<<'=';

    f(x);

    cout<<endl;

   }

13.以下程序的功能是:實現(xiàn)兩個字符串拼接,函數(shù)strcat(char *s1,char *s2)先將s1所指向的字符串拷貝到s所指向的動態(tài)申請的存儲空間,接著將s2所指向的字符串拼接s所指向的字符串后面,函數(shù)返回拼接后的字符串。

    [程序](4)

    #include <iostream.h>

    char *strcat(char *s1,char *s2)

    {

      char *s,  *p,  *q;

      int len1=0,len2=0;

      p=s1;

      while(*p!='\0'){

        len1++;

        p++;

      }

      p=s2;

      while(*p!='\0'){

        len2++;

        p++;

      }

      s=q=___(23)___ ;

      p=s1;

      for(int i=0;i<len1;i++)*q++=*p++;

      p=s2;

      while(___(24)___);

        ___(25)___

    }

    void main(void)

    {

      char s1[]="visual";

      char s2[]="is esay";

      char *s;

      s=___(26)___;

      cout<<s<<endl;

      delete []s;

    }  

14.下面程序的功能是;將兩個有序鏈表(降序捧序)合并為一個有序鏈表,函數(shù)merge(node *h1,node *h2)將由h1h2分別指向的己排序的兩個鏈表,合并為一個依然有序的鏈表。注意;對于數(shù)據(jù)大小相同的結點,都要保留在合并后的鏈表上。主函數(shù)產生兩條已降序排序的鏈表,并輸出合并后鏈表上的數(shù)據(jù)值.

  例如,原鏈表上各結點的數(shù)據(jù)依次為;

  h1:15,9,8,7,3

  h2:15,12,10,7,3,2

  合并后得到的新鏈表為;15,15,12,  10,9,8,7,7,3,3,2

  【程序](4)

  #include<iostream.h>

  struct node{

    int data;

    node*next;

   };

    node *merge(node *h1,node *h2)

    {

     if(h1==NULL) return h2;

     if(h2==NULL) return h1;

     node *h=NULL;

     if(___(27)___){

        h=h1;

        h1=h1->next;

     }

     else{

         h=h2;

         h2=h2->next;

     }

     node *p=h;

     while(___(28)___){

       if(h1->data >=h2->data){

         p->next=h1;

         p=h1;

         h1=h1->next;

       }

       else{

           p->next=h2;

           p=h2;

           h2=h2->next;

       }

    }

    if(h1 !=NULL) ___(29)___;

    else   

        if(h2!=NULL) p->next=h2;

    return h;

}

void main(void)

{

  node a[5]={{15},{9},{8},{7},{3}};

  node b[6]={{15},{12},{10),{7},{3},{2}};

  node *h,*h1,*h2,*p;

  int i;

  h1=a;

  h2=b;

  for(i=0;i<4;i++) a[i].next=&a[i+1];    //形成a鏈表

  a[4].next=NULL;

  for(i=0;i<5;i++) b[i].next=&b[i+1];  //形成b鏈表

  b[5].next=NULL;

  ___(30)___   ;

  p=h;

  while(p){

    cout<<p->data<<'\t';

    p=p->next;

  }

  cout<<endl;

}

 

答案:

1.A 2.B 3.D 4.A 5.C 6.C 7.D 8.C 9.C 10.A

11.B 12.D 13.B 14.B 15.B16.A 17.D 18.B 19.C 20.D

(21)C (22)B (23)D (24)C (25)D (26)B (27)A (28)C (29)A (30)D

:填空

(1)構造  (2)17  (3)編譯 (4)void (5)register

(6)9  (7)1 (8)5 11 16 37 (9)5 27 32 75

(10)3 (11)2 4 6 8 (12)23 (13)55 (14)32 (15)Your friend!

(16)u (17)5 (18)3 (19)flag (20)x%i==0 (21)n%i==0 (22)i++

(23)new char[len1+len2+1] (24)*q++=*p++ (25)return s

(26)strcat(s1,s2) (27)h1->data>h2->data (28)h1!=0 && h2!=0

(29)p->next=h1  (30)h=merge(h1,h2)