<samp id="uu9tx"></samp>
        <samp id="uu9tx"><tr id="uu9tx"><nav id="uu9tx"></nav></tr></samp>
        <delect id="uu9tx"><legend id="uu9tx"><meter id="uu9tx"></meter></legend></delect>
                <samp id="uu9tx"><tr id="uu9tx"><meter id="uu9tx"></meter></tr></samp><nav id="uu9tx"></nav>
                <samp id="uu9tx"></samp>
                  <samp id="uu9tx"><tr id="uu9tx"><meter id="uu9tx"></meter></tr></samp>
                  江蘇省高校計算機等級考試命題研究院 江蘇省高校計算機等級考試輔導
                  2012秋江蘇省計算機二級C++筆試真題

                  本頁為文字題目,如果需要查看視頻講解,請點擊2013年春季江蘇二級VC++考試題目視頻講解

                  絕密★ 啟用前

                  2012年秋

                  江蘇省高等學校非計算機專業學生

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

                  二級試卷

                  試卷語種:C++語言

                   

                    明:

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

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

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

                    )和填空題(30)兩種;

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

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

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

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

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

                    不填或填錯不得分;

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

                    否填寫正確。

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

                    畢清點后,方可離場。

                   

                   

                  第一部分   計算機基礎知識

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

                  1.下列關于信息、信息技術、信息產業與信息化的敘述中。錯誤的是___1___    。

                      A.世間一切事物都在運動,都具有一定的運行狀態,因而都在產生信息

                      B.現代信息技術的主要特征之一是以數字技術為基礎

                      C.信息產業特指利用信息設備進行信息處理與服務的行業,它不包括任何生產制造行業

                      D.信息化是一個推動人類社會從工業社會向信息社會轉變的社會轉型的過程

                  2.下列關于數字技術與微電子技術的敘述中,錯誤的是___2___ 。

                    A.數字技術的處理對象是"比特",它只有兩種取值,即數字0和數字1

                  B.數據通信和計算機網絡中傳輸二進制信息時,傳輸速率的度量單位通常為B/s、KB/s、MB/s

                    C.微電子技術是實現電子電路和電子系統超小型化及微型化的技術,它以集成電路為核心

                    D.Intel公司創始人之一摩爾曾發表論文預測,單塊集成電路的集成度平均每18~24個月翻一番

                  3.以下選項中,數值相等的一組數是___3___ 。

                    A.十進制數54020與八進制數54732

                    B.八進制數13657與二進制數1011110101111

                    C.十六進制數F429與二進制數1011010000101101

                    D.八進制數7324與十六進制數B93

                  4.下列關于臺式PCCPU的敘述中,錯誤的是___4___。

                      A.目前的PC,CPU芯片都是直接固定在主板上的,用戶不可對其進行更換

                      B.PCCPU芯片有多個生產廠商,例如Intel公司、AMD公司等

                      C.Intel公司的Core i7/i5/i3處理器是64位多內核CPU芯片

                      D.目前的CPU芯片中一般都集成了一定容量的高速緩沖存儲器cache

                  5.下列關于臺式PC機主板的敘述中,錯誤的是___5___。

                      A.為了便于不同PC機主板的互換,主板的物理尺寸已經標準化,例如ATXBTX規格

                      B.芯片組是主板上的重要部件,它與CPU芯片及外設同步發展

                      C.主板上的BIOS集成電路芯片中存儲了CMOS設置程序

                      D.主板上的CMOS存儲器是一種非易失性存儲器,在任何情況下其信息均不會丟失

                  6.下列四種I/O總線(接口),數據傳輸方式為并行方式的是___6___ 。

                      A.PCI-Express

                      B.PCI

                      C.USB

                      D.IEEE-1394

                  7.下列關于常用I/O設備的敘述中,錯誤的是___7___

                    A.鼠標器與主機的接口主要有PS/2USB兩種  

                    B.光學分辨率是掃描儀的重要性能指標,目前普通辦公用掃描儀的分辨率可達1000dpi以上

                    C.數碼相機的成像芯片均為CCD類型,且絕大多數相機的存儲卡是通用的、可互換的

                    D.寬屏LCD顯示器是目前最常見的PC機顯示器,其顯示屏的寬度與高度之比為16:916:10

                  8.下列關于PC機外存儲器的敘述中,錯誤的是___8___

                   A.PC機硬盤接口主要有PATA(并行ATA)SATA(串行ATA)兩種,PATA的傳輸速率更高些

                   B.目前U盤不僅能方便地保存數據,還可以模擬光驅和硬盤啟動操作系統

                   C.固態硬盤是基于半導體存儲器芯片的一種外存儲設備,一般用在便攜式計算機中

                   D.光盤可分為CD光盤、DVD光盤和藍光光盤

                  9.  下列關于軟件的敘述中,錯誤的是___9___

                      A.軟件是用于特定用途的一整套程序、數據及相關的文檔

                      B.共享軟件是沒有版權的軟件。允許用戶對其進行修改并散發

                      C.目前,Adobe Reader、360殺毒軟件是有版權的免費軟件

                      D.操作系統、程序設計語言處理蠶統、數據庫管理系統均屬于系統軟件

                  10.下列關于Windows操作系統多任務處理的敘述中,正確的是___10___。

                      A.如果用戶只啟動一個應用程序工作(如使用Word寫作),那么該程序就可以自始至終地獨占CPU

                      B.僅當計算機中有多個處理器或處理器為多內核處理器時,操作系統才能同時執行多個任務處理

                      C.無論是系統程序還是應用程序,所有運行程序(進程)獲得CPU使用權的優先級相同

                      D.在多任務處理時,后臺任務與前臺任務都能得到CPU的及時響應

                  11.下列關于程序設計語言及其處理系統的敘述中,錯誤的是___11___

                      A.機器語言就是計算機的指令系統,機器語言程序一般為二進制代碼形式

                      B.匯編程序是指用匯編語言編寫的源程序,不同計算機的匯編程序通常是相同的

                      C.Microsoft Office軟件(Word、Excel)中包含VBA程序設計語言,VBAVB的子集

                      D.高級語言的語言處理系統的工作方式通常分為兩種,"解釋"方式和"編譯"方式

                  12.下列關于移動通信的敘述中,錯誤的是___12___

                      A.1代個人移動通信采用的是模擬傳輸技術,從第2代開始均采用了數字傳輸技術

                      B.目前廣泛使用的GSMCDMA都是第2代移動通信

                      C.我國的3G通信目前有三種技術標準,這三種標準的網絡不能互通,但終端設備互相兼容

                      D.目前第4代移動通信(4G)也在研發和部署之中,我國已有多個城市開始建設試驗網

                  13.下列關于因特網接入技術的敘述中,錯誤的是___13___

                    A.采用電話撥號接入時,需要使用電話MODEM,其主流產品的速率為56kbps

                    B.采用ADSL接入時,數據上傳速度低于數據下行速度,理想狀態下數據下行速度可達8Mbps

                    C.采用有線電視網接入時,多個終端用戶均可獨享連接段線路的帶寬

                    D.目前我國許多城市采用"光纖到樓、以太網入戶"的做法,用戶可享受數兆乃至百兆的帶寬

                  14.Internet使用TCP/IP協議實現了全球范圍的計算機網絡的互連,連接在Internet上的每一臺主機都有一個IP地址。下面不能作為IP地址的是___14___ 。

                      A.201.109.39.68

                      B.120.34.0.18

                      C.21.18.33.48

                      D.127.0.257.1

                  15.現在因特網上的多數郵件系統使用___15___協議,它允許郵件正文具有豐富的排版格式,可以包含圖片、聲音和超鏈接,從而使郵件的表達能力更強,內容更豐富。

                      A.MIME    B.SMTP    C.POP3 D.HTML

                  16.下列關于網絡信息安全的敘述中,錯誤的是 ___16___ 。

                    A.信息在網絡傳輸過程中,會受到竊聽、偽造、篡改等安全威脅

                    B.最簡單也是最普遍的身份鑒別方法是使用口令(密碼),但其安全性不高

                    C.數據加密是常用的網絡信息安全措施.也是數字簽名等安全措施的基礎

                    D.入侵檢測與防火墻一樣,都是被動保護系統免受攻擊的一種網絡安全技術

                   

                  17.下列關于字符編碼標準的敘述中,錯誤的是___17___ 。

                    A.ASCII標準是美國制定的標準,也是目前使用最為廣泛的西文字符編碼標準

                    B.GB2312、GBKGB18030都是我國制定的標準,在這些標準中所有字符均采用雙字節編碼

                    C.目前在臺港澳等地區廣泛使用BIG5編碼標準,它與GB2312不兼容

                    D.UCSISO制定的標準,相應的工業標準稱為Unicode

                  18.人們說話時所產生的語音信號必須數字化才能由計算機存儲和處理。假設語音信號數字化時取樣頻率為8kHz,量化精度為8,數據壓縮比為4,那么1分鐘數字語音的數據量(壓縮后)大約為___18___

                    A.960KB    B.480KB    C.120KB D.60KB

                  19.目前數字有線電視和衛星電視所傳輸的數字視頻采用的壓縮編碼標準大多是___19___

                    A.MPEG-1    B.MPEG-2    C.MPEG4    D.MPEG7

                  20.下列關于Microsoft Office軟件(2003/2007版本為例)功能的敘述中,錯誤的是___20___

                    A.Word編輯處理的文檔可以保存為多種文件格式,例如DOC、RTF、TXT、HTML

                    B.一個Excel文件不可以引用另一個Excel文件中的數據

                    C.PowerPoint編輯處理的文檔可以另存為網頁或圖像文件

                    D.Access是一個數據庫管理系統,Access數據庫中

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

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

                  21.以下選項中,均不能作為用戶標識符的選項是___ 21___    。

                      AA,P_0,do    Bfloat,2a0,-A  Cb_a,goto,int D-123,temp,INT

                  22.設有說明語句:"int[5];",能正確描述該語句的是___22___  。

                      Ap是一個指向數組的指針,所指向的數組有5int類型的元素

                      Bp是一個指向某數組中第5個元素的指針,該元素是int類型的變量

                      Cp[5]表示某個數組中的第5個元素的值

                      Dp是一個具有5個元素的指針數組,每個元素都是一個int類型的指針

                  23.設有以下語句序列;

                      #define S(x)  x*(x)*2

                      int k=3;

                      則表達式S(k+1)的值為___23___  。

                    A32    B11    C24 D8

                  24.在循環語句的循環體中使用breakcontinue語句的作用是___24___    。

                      A.兩者都結束循環        B.分別結束本次循環和結束循環

                      C.兩者都結束本次循環    D.分別結束循環和結束本次循環

                  25.以下敘述中,不正確的是___25___ 。

                      A.派生類的成員函數中可直接使用其基類中的所有成員,并與派生方式無關

                      B.派生類不能繼承其基類的友元函數

                      C.派生類構造函數通常帶有基類初始化列表

                      D.派生類缺省的構造函數中通常隱含直接基類的缺省構造函數

                  26.以下敘述中,不正確的是___26___  。

                      A.類的構造函數可以重載    B.類的析構函數可以重載

                      C.一個類必定有構造函數    D.一個類必定有析構函數

                  27.以下敘述中,正確的是___27___。

                    A.函數在重載時其函數名可以不同

                    BC++中所有運算符都可以重載

                    C.基類中定義虛函數a(int,int),若在派生類中定義函數a(int),則在派生類中a為函數重載

                    D.對于基類中定義的運算符重載函數,在派生類中均可繼承和使用

                  28.一個類的靜態數據成員所表示的屬性___28___  。

                    A.是該類或該類對象的屬性    B.僅是該類對象的屬性

                    C.僅是該類的屬性            D.是該類和該類友元的屬性

                  29.設有說明語句;"char s1[]='hello';char s2[]=('h','e','l','l','o');int b;,以下語句

                    會產生編譯錯誤的是___29___  。

                    Astrlen(s1);    Bb=s1=s2;    Ccout>>s1+s2;  Dstrcat(s1,s2);

                  30.以下敘述中,錯誤的是___30___  。

                    A.對象成員是類的一種數據成員,它是另一個類的對象

                    B.在定義一個類時,可將該類的對象作為該類的數據成員

                    C.對對象成員的初始化要包含在該類的構造函數中

                    D.一個類中可含有多個對象成員作為其成員

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

                  ●基本概念題,5

                  1.若x=0,y=1,z=2,則執行語句;"z=x++&&(++y);",變量zy的值分別為___(1)___    ___(2)___  。

                  2.要將一個類的成員函數定義虛函數時,使用關鍵字___(3)___  。

                  3c++中使用const定義常量時,需要指出其名字、類型和___(4)___ 。

                  4.假設A為一個類,該類中有語句;"A(A &x);,該語句是該類___(5)___ 構造函數的原型說明。

                  三、閱讀程序,13

                  5.[程序]  (3)

                  #include

                  void fun(int *a,int i,int j)

                  {

                    int t;

                    if(i<=j){

                       t=a[i];a[i]=a[j];a[j]=t;

                          fun(&a[i+1],i+2,j-1);

                    }

                  }

                  void main()

                  {

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

                         fun(a,0,5);

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

                                cout<

                  }

                   

                  執行程序,輸出的第二行是___(6)___,第四行是___(7)___,第六行是___(8)___

                   

                  6.[程序] (2)

                  #include

                   

                  void swap(int *p1,int*p2)

                  {

                    int *p;

                    p=p1;p1=p2;p2=p;

                  }

                  void main()

                  {

                         int x=50,y=100;

                         cout<<"x="<       swap(&x,&y);

                         cout<<"x="<}

                   

                  執行程序,輸出的第一行是___(9)___,第二行是___(10)___

                  7.[程序]  (3)

                  #include

                  void main()

                  { char ch[2][6]={"2013","0246"},*pch[2];

                    int i,j,s=0;

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

                       for(j=0;pch[i][j]>='0' && pch[i][j]<='9';j+=2){

                         s=10*s+pch[i][j]-'0';

                         cout<

                       }

                  }

                   

                  執行程序,共輸出___(11)___,輸出的第一行是___(12)___,最后一行是___(13)___

                  8.[程序](2)

                  #include

                  #include

                   

                  class Person{

                    public:

                         Person(char *s){

                           name=new char[strlen(s)+1]; strcpy(name,s);}

                         virtual void print(){

                           cout<<"我的名字是:"<

                    protected:

                         char *name;      

                  };

                   

                  class Student: public Person{

                    public:

                      Student(char *s,char *p):Person(s){

                         strcpy(num,p);}

                      void print(char *s){

                         cout<

                         cout<<"我的名字是:"<學號是:"<

                      }

                    private:

                      char num[10];

                  };

                   

                  class Professor:public Person{

                     public:

                        Professor(char *s, int n):Person(s) {

                           publs=n;

                        }

                        void print(){

                          cout<<"我的名字是:"<發表論文數為:"<\n";

                        }

                     private:

                       int publs;

                  };

                   

                   

                  void main()

                  {

                    Person *p;

                    Person x("張明");

                    Student y("王海","20120501");

                    Professor z("李濤",5);

                    p=&x;  p->print();

                    p=&y;  p->print();

                    p=&z;  p->print();

                  }

                   

                  執行程序后,輸出的第二行是____(14)______,第三行是___(15)___

                   

                  9.[程序](3)

                  #include

                  class B{

                    public:

                      B(int a=0) {cout<<"B class "<

                      ~B() {cout<<" ~B class"<

                  };

                   

                  class A:public B{

                    public:

                       A(){cout<<"A class "<

                  };

                   

                  void f()

                  {

                    static A a;

                    cout<<"f()"<<"\n";

                  }

                   

                  void main()

                  {

                    f();f();

                  }

                  執行程序,輸出的第一行是___(16)___,第二行是___(17)___,第四行是___(18)___

                   

                  完善程序,12

                  10.以下程序的功能是

                  以下程序的功能是:求三角函數sin(x)的近似值,sin(x)得近似值的計算公式如下:

                     sin(x)= - + - +…+

                    其中x的值用弧度值表示。當輸入的x的值為角度表示時,必須先將角度數轉換為弧度,轉換公式如下:

                         y=

                  然后求出sin(y)的近似值,要求計算精度達到0.000001

                   

                  [程序]2

                  #include

                  #include

                   

                  double sin(double x,double eps)

                  {double term,sum,y; int n=1;

                   y=x*x;  term=x;   sum=0;

                   while(fabs(term)>=eps){

                     sum+=term; n++;

                     term=term*y/___(19)___;

                     term*=-1;

                   }

                   return ___(20)___;

                  }

                   

                  void main(void)

                  {

                    double x,y;

                    cout<<"輸入x的值(角度):";

                    cin>>x;

                    while(x>360)

                       x-=360;

                    y=3.1415926*x/180;

                    cout<<"度數為:"<<"其中sin值為:"<

                  }

                   

                  11.以下程序的功能是輸入兩個字符串,將這兩個字符串拼接為一個新的字符串,

                  然后輸出這三個字符串

                    #include

                    char *stringcat(char *to,char *from,char *s)

                    {

                       char ___(21)___;

                        while(*s++=*to++);

                       ___(22)___;

                       while(___(23)___);

                       return p;

                    }

                   

                    void main(void)

                    {

                      char s1[100],s2[200],s3[200];

                      cout<<"輸入第一個字符串:"

                      cin.getline(s1,100);

                      cout<<"輸入第二個字符串";

                      cin.getline(s2,100);

                      cout<<"s1="<

                      cout<<"s2="<

                      cout<<"拼接后的字符串為:"<

                    }

                   

                  12.以下程序的功能是:驗證任一大于6的偶數總能表示為兩個素數之和,方法是將偶數分解為兩個奇數之和,并分別判斷兩個奇數

                  是否均為素數,例如:68=7+61,761均為素數

                  [程序]  2

                  #include

                  #include

                   

                  void main(void)

                  {

                     int a,b,c,d;

                     cout<<"請輸入一個大于6的偶數";

                     cin>>a;

                     for(b=3;b<=a/2;b+=2){

                        for(c=2;c<=sqrt(b);c++)

                           if (b%c==0)

                             ___(25)___;

                       if (c>=sqrt(b))

                          d=a-b;

                       else

                          break;

                       for(c=2;c<=sqrt(d);c++)

                         if(___(26)___)  

                            break;

                         if(c>=sqrt(d))

                           cout<

                   

                     }

                   

                  }

                   

                  13.以下程序的功能是:建立單向鏈表,刪除鏈表上指定的結點,輸出鏈表上的結點值等,其中函數deltenode(node *h, int x)的功能是:

                  h所指向的鏈表中,刪除結點的數據值為x的所有結點

                  [程序]  (4)

                  #include

                  struct node{

                     int data;

                     node *next;

                  };

                   

                  node *deltenode(node *h, int x)

                  {

                    node *p,*q;

                    if(h==NULL)  return h;

                    if(h->data==x){

                      p=h;

                      ___(27)___;

                      delete p;

                    }

                    else{

                       p=h->nxt;

                       q=h;

                       while(p!=NULL && p->data!=x){

                          ___(28)___;

                          p=p->next;

                      }

                      if(p!=NULL){

                         q->next=p->next;

                         delete p;

                      }

                    }

                    return h; 

                  }

                   

                  node *creatlist(int a[], int j)

                  {

                      node *h,*p,*q;

                      int i;

                      h=NULL;

                      for(i=0;i

                          q=new node ;

                          q->data=a[i];

                          q->next=NULL;

                          if(h==NULL)

                             h=p=q;

                          else{

                              ___(29)___;

                             p=q;

                          }

                      }

                      return h;

                  }

                   

                  void outlist(node *h)    //輸出鏈表

                  {

                      node *p;

                      p=h;

                      if(p==NULL)cout<<"鏈表為空!"<

                      else(

                         cout<<"Head";

                         do{

                            cout<<"->"<data;

                            p=p->next;

                           }while(p!=NULL);

                      cout<<"->End"<

                     }

                  }

                  void free list(node *h)    //撤銷鏈表

                  {

                      node *p;

                      while(h){  

                        p=h;

                        h=h->next;

                        delete p;

                      }

                  }

                  void main(void)

                  {

                      node *head;

                      int a[]={2,4,6,8,10,15,17};

                      ___(30)___    ;

                      cout<<"原鏈表為;";

                      outlist(head);   

                      head=deltenode(head,10);

                      cout<<"刪除數據后的鏈表為:";

                      outlist(head);

                      free_list(head);

                  }

                   

                   

                   

                  二級C++參考答案

                   一、選擇題

                  (1)C (2)B (3)B (4)A (5)D (6)B (7)C (8)A (9)B (10)D
                  (11)B (12)C (13)C (14)D (15)A (16)D (17)B (18)C (19)B (20)B

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

                   

                  二、填空題

                  (1)0   (2)1   (3)virtual  (4)     (5)拷貝   (6)2   (7)1    (8)4 

                  (9)x=50  y=100  (10)x=50  y=100 

                  (11)4  (12)2  (13)2104  (14)我的名字是王海,學號是20120511

                  (15)我的名字是李濤,發表論文數為5

                  (16)B Class  (17)A Class  (18)f()  (19)(2*n-2)*(2*n-1)

                  (20)sum  (21)*p=s  (22)s--  (23)*s++=*from++  (24)s1,s2,s3

                  (25)break;  (26)d%c==0  (27)h=h->next  (28)q=p  (29)p->next=q

                  (30)head=createlist(a)

                   本頁為文字題目,如果需要查看視頻講解,請點擊2013年春季江蘇二級VC++考試題目視頻講解

                   

                  亚洲欧美日韩国产一区二区三区_全亚洲免费一级黄片_国产一区二区三区不卡视频手机版_国产污三级网站在线观看