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

江蘇省高校計算機等級考試命題研究院 江蘇省高校計算機等級考試輔導(dǎo)
2009江蘇省計算機等級考試C語言考前沖刺模擬試卷3

考試模擬試題3

1.下列關(guān)于信息的敘述錯誤的是____(1)__

A.      信息是指事物運動的狀態(tài)及狀態(tài)變化的方式

B.       信息是指認識主體所感知或所表述的事物運動及其變化方式的形式、內(nèi)容和效用

C.       在計算機信息系統(tǒng)中,信息是對用戶有意義的數(shù)據(jù),這些數(shù)據(jù)將可能影響到人們的行為與決策

D.      在計算機信息系統(tǒng)中,信息是數(shù)據(jù)的符號化表示

2.下列關(guān)于集成電路的敘述中錯誤的是____(2)____

A.將大量晶體管、電阻及互連線等制作在尺寸很小的半導(dǎo)體單晶片上就構(gòu)成集成電路

B. 現(xiàn)代集成電路使用的半導(dǎo)體材料通常是硅或砷化鎵

C. 集成電路根據(jù)它所包含的晶體管數(shù)目可分為小規(guī)模、中規(guī)模、大規(guī)模、超大規(guī)模和極大規(guī)模集成電路

D. 集成電路按用途可分為通用和專用兩大類。微處理器和存儲器芯片都屬于專用集成電路

3.移動通信指的是處于移動狀態(tài)的對象之間的通信,下面的敘述中錯誤的是__(3)______

A.      移動通信始于上世紀20年代初,70~80年代開始進入個人領(lǐng)域

B.       移動通信系統(tǒng)進入個人領(lǐng)域的主要標志就是手機的廣泛使用

C.       移動通信系統(tǒng)由移動臺、基站、移動電話交換中心等組成

D.      目前廣泛使用的GSM是第三代移動通信系統(tǒng)

4.下列不同進位制的四個數(shù)中,最小的數(shù)是__(4)______。

A.二進制數(shù)1100010  B. 十進制數(shù)65  C. 八進制數(shù)77  D. 十六進制數(shù)45

5.下面是關(guān)于PC機主存儲器的一些敘述,其中正確的是_____(5)____

A.主存儲器每次讀寫一個字節(jié)(8)

B.主存儲器也稱內(nèi)存,它是一種動態(tài)隨機存儲器

C.目前市場上銷售的pC機器,其內(nèi)存容量多數(shù)已達128MB

D.PC機的容量總是可擴充的

A.   B.  C.  D.

6.下面關(guān)于USB接口的敘述中,錯誤的是____(6)______

A.USB2.0的數(shù)據(jù)傳輸速率比USB1.1快的多

B.USB具有熱插拔和即插即用功能

C.主機不能通過USB連接器向外圍設(shè)備供電

D.從外觀上看,USB連接器要比PC機的串行口連接器小

7.下列關(guān)于目前流行的臺式PC機主板的敘述,正確的是_______(7)____

主板上通常包含微處理器插座和芯片組

.主板上通常包含內(nèi)存儲器(內(nèi)存條)插槽和BIOS ROM芯片

.主板上通常包含PCI(PCI-E)總線插槽

.主板上通常包含IDE(SATA)連接器

A  B.   C.   D.

8.為了讀取硬盤存儲器上的信息,必須對硬盤盤片上的信息進行定位,在定位一個扇區(qū)時,不需要以下參數(shù)中的_____(8)___。

A.      柱面(磁道)號

B.       盤片(磁頭)號

C.       通道號

D.      扇區(qū)號

9.下列各類存儲器中,____(9)____在斷電后其中的信息不會丟失。

A.寄存器  B. Cache  C. Flash   ROM  D. DDR SDRAM

10. 下列關(guān)于操作系統(tǒng)處理器管理的說法中,錯誤的是____(10)___  。

A.      處理器管理的主要目的是提高CPU的使用效率

B.       分時是指將CPU時間劃分成時間片,輪流為多個程序服務(wù)

C.       并行處理操作系統(tǒng)可以讓多個CPU同時工作,提高計算機系統(tǒng)的效率

D.多任務(wù)處理都要求計算機必須有多個CPU

11.在下列有關(guān)程序設(shè)計語言及其處理程序的敘述中,錯誤的是_(11)_。

A.用多種不同的匯編語言編寫一個程序稱為"交叉匯編"

B.匯編語言是一種用助記符號表示的、與機器語言接近的符號語言

C.機器語言指令是由一串“0”和“1”組成的二進位代碼

D.編譯程序應(yīng)具有詞法分析和語法分析功能

12.以下關(guān)于局域網(wǎng)和廣域網(wǎng)的敘述中,正確的是____(12)___

A.      廣域網(wǎng)只是比局域網(wǎng)覆蓋的地域廣,它們所采用的技術(shù)是相同的

B.       家庭用戶撥號入網(wǎng),既可接入廣域網(wǎng),也可接入局域網(wǎng)

C.       現(xiàn)階段家庭用戶的PC機只能通過電話線接入網(wǎng)絡(luò)

D.      個人不允許組建計算機網(wǎng)絡(luò)

13.將異構(gòu)的計算機網(wǎng)絡(luò)進行互連通常使用的網(wǎng)絡(luò)互連設(shè)備是_____(13)___

A. 網(wǎng)橋  B. 集線器  C. 路由器  D. 中繼器

14.TCP/IP網(wǎng)絡(luò)中,任何計算機必須有一個IP地址,而且__(14)______

A. 任意兩臺計算機的IP地址不允許重復(fù)

B. 任意兩臺計算機的IP地址允許重復(fù)

C. 不在同一城市的兩臺計算機的IP地址允許重復(fù)

D. 不在同一單位的兩臺計算機的IP地址允許重復(fù)

15. 當網(wǎng)絡(luò)中的兩臺計算機之間需要互相傳送多個文件時,一般應(yīng)使用_______(15)____服務(wù)

A.www      B.Telnet        C.FTP     D.電子郵件

16. 在瀏覽器的地址欄中輸入想要瀏覽的網(wǎng)頁URL時,不能缺省的輸入是___(16)_____

A.執(zhí)行的傳輸協(xié)議

B.網(wǎng)頁所在的Web服務(wù)器的域名或IP地址

C.端口號

D.網(wǎng)頁的文件名和查找路徑

17. 下面關(guān)于我國漢字編碼標準的敘述中,錯誤的是__  (17)_________

A.GB2312國標字符集所包含的漢字許多情況下已不夠使用

B.GBK字符集既包括簡體漢字,也包括繁體漢字

C.GB18030編碼標準中所包含的漢字數(shù)目超過2萬個

D.無論采用上述哪一種漢字編碼標準,漢字在計算機中均采用雙字節(jié)編碼

18. 下列關(guān)于計算機合成圖像(計算機圖形)的應(yīng)用中,錯誤的是__(18)_______。

A.      可以用來設(shè)計電路圖 

B.       可以用來生成天氣圖

C.       計算機只能生成實際存在的具體景物的圖像,不能生產(chǎn)虛擬景物的圖像

D.      可以制作計算機動畫

19.計算機中用于描述樂譜并由聲卡合成出樂曲的一種專用語言,稱為_____(19)_____

A.MP3   B.JPEG2000    C.MIDI    D.XML

20.PC機中安裝視頻輸入設(shè)備就可以獲取數(shù)字視頻,下面關(guān)于視頻獲取設(shè)備的敘述中,錯誤的是____(20)_________

A.視頻卡能通過有線電視電纜接收模擬電視信號并進行數(shù)字化

B.視頻卡一般插在PC機的PCI插槽內(nèi)

C.數(shù)字攝像頭必須通過視頻卡與PC機相連接

D.數(shù)字攝像頭拍攝的數(shù)字視頻可通過USBIEEE1394接口直接輸入計算機

二:c語言程序設(shè)計

21.一個用c語言編寫的程序,____________是必不可少的

A.取名為main的函數(shù)定義        B.#include <stdio.h>      C.變量聲明  D.注釋

22.已有枚舉類型定義:"enum letter{AB,C=7,D,E}",以下表達式中除(22)外,其他表達式的機內(nèi)值均等于10。

  A'\xb'-1    BB+E    C010+2    D0xf-3

23.以下聲明中正確的是(23)  。

  Aint n=2a[n]={10};    Bint n=10,*p[2]=&n;

  Cint n=10,a[2]={n}Dint a[2][2]={lO},(*p)[2]=a+1

24.若有函數(shù)fun的定義為

    void fun(…)

    {static int a=1;

       ...

    }

  則下列敘述中不正確的是  ( 24)  。

  A.在每次調(diào)用fun函數(shù)時,變量a的值是上次調(diào)用結(jié)束時a的值

  B.在fun函數(shù)之外,可以用變量名a直接引用a的值

  c.在其他函數(shù)中,可以出現(xiàn)聲明double a=25;

  Dfun函數(shù)的形式參數(shù)不能取名為a

 25.已知數(shù)據(jù)類型定義和變量聲明如下:

    struct sk   

    {int a;float b;} data[2],*p;   

    若有P=data,則以下對data[0]中成員a的引用中錯誤的是:(25)。

    Adata[0]->a    Bdata->a    CP->a    D.(*p).a

 26.以下單目運算符均只需妻一個操作數(shù),其中要求操作數(shù)的類型只能是指針型的是

    (26)    。

    A&    B++    C!    D.*

27.已知有聲明"int good=1;",若要使得表達式"P="good"+good"無語法錯誤(包括警告錯

    ),P應(yīng)當聲明為( 27)。

    Achar p;    Bchar *p    Cint p;D.int*p

28.已知有聲明"char c='1',;int x=300;float t=35000;double d=3.1234567e10",則以下表達

    式求值時除  ( 28 )  外其結(jié)果都可能是不準確的。

    Ax=t/c    Bt=d/x    Ct=d/le5f   D.t=x+c

 29.已有預(yù)處理命令和聲明如下:

    #define N 10

    int a=2,c=1;

    double b=1.2

    下述程序段正確的是(29)。

    Aswitch(a)                Bswitch(a)

       {case c a--;break;       {case N>0a=1break;

        case c+1:a++;break;        case 1    a=O;break

       }                            }

C. switch(a)                                 D.switch(b)

   {                                            {  case 1.0:  b++;break;

      case 2:  b++;break;                          case 1.2: b=1;break;

      case '0': b=3;                            }

   }

30.若有以下聲明和定義:

    void fun(int c){prinff("%d",C);}

    main()

    {void(*a)(int)=fun*b(int),(*c)(int)

    /*調(diào)用fun函數(shù)語句位置*/

    }

    void*b(int C){}。

  如果在main函數(shù)中需要調(diào)用fun函數(shù),以下調(diào)用語句中錯誤的是_______(30)______  。

  Afun(1)    B(*a)(1);    Cb=fun;(*b)(1); 

Dc=a(*c)(1);

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

●基本概念題(5)

1.若有聲明"char a=0;int b=1float c=2;double d=3;",則表達式"c=a+b+c+d"值的類型

  (1)  。

2.若某個程序運行時創(chuàng)建了多個輸入流,當執(zhí)行到程序中的scanf函數(shù)時,只有在  (2)

  人流為空時才會暫停程序運行而等待輸入。   

3.執(zhí)行"printf("%d,%d"i,j,k,m)"后在屏幕上將輸出_____(3)______個整數(shù)。

4.設(shè)已有非空文本數(shù)據(jù)文件fileldat,要求能讀出文件中原有的全部數(shù)據(jù),并在文件原有數(shù)據(jù)

  之后添加新數(shù)據(jù),則用FILE *fp=fopen("fileldat", ____(4)_________  )打開該文件。

5.若有函數(shù)定義int f(){int x=4y=3,z=2;return x,yz;},則調(diào)用函數(shù)f后的返回值是

    (5)  

●閱讀程序題(13)

6.以下程序運行時輸出結(jié)果是  (6 )

    #include<stdioh>

    #define M 3

    #defme N M+1

    #define NN N*N/2

    main()   

    {printf("%d\n",NN);}

7.以下程序運行時輸出結(jié)果是  (7)  。

#include <stdio.h>

  main()

    {char a=256

     int d=a

     prinff("%d",d+1);

    }    、

  8•有如下程序,假定所用編譯系統(tǒng)用兩個字節(jié)存儲一個int型操作數(shù),已知輸出結(jié)果第一行是FFD2,則第二行應(yīng)當是( 8)

    main()

    {int a[10]={1,2,3,45,6,78,90},*p

     P=&a[5];   

     printf("%X\n"p);printf("%X\n",p-1);

 9•以下程序運行時輸出結(jié)果的第一行是(9)  ,第二行是(10)。

    int C

    void fl(int xint *sum)

    {static int y;

     x++;y++c=c+y;

     *sum=(x+y)/c;

    }

 

    main()

    {int a,b=100

     for(a=O;a<2;a++)

     {f1(a&b);printf("%d%d%d\n"a,bc)}   ,

10.以下程序運行時輸出結(jié)果的第一行是___(11)_______,第三行是______(12)__________

    #include<stdioh> 

    void mat_change(int b[4][4])

    {int i,j,mn,k,c[6][6];

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

      for(j=0;j<6j++) c[i][j]=1;

for(i=1;i<5i++)

       for(j=1;j<5j++)  c[i][j]=b[i-1][j-1];

    for(i=1i<5;i++)

      for(j=1;j<5;j++)

      {if(c[i][j]==0)

        {k=0

          for(m=-1;m<=1;m++)

            for(n=-1;n<=1;n++)

                 if(!(m==O&&n==O))k=k+c[i+m][j+n]

          if(k==8)c[i][j]=1;

        }

       }

    for(i=1i<5;i++)

      for(j=1j<5;j++)

         b[i-1][j-1]=c[i][j]

    }

    main()

    {int i,j,a[4][4]={{0,1},{1,11,l},{0,1,0,1}{0,1,1,1}};

    mat_change(a)

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

     {for(j=0;j<4;j++)printf("%d"a[i][j]);

     printf("\n");

     }

    }

11.以下程序運行時輸出結(jié)果是(13)  。

    #include<stdioh>

    void f(int a[],int nint x,int *c)

    main()

    {int a[10]={1,3,5,23,5,3,74,1}t=0; 

     f(a10,5,&t)printf("%d",t);

    }

    void f(int a[],int n,int X,int *c)

    {if(n==0)return

     if(a[O]>=x)(*c)++;

     f(a+1n-1,x,c);

    }

12.以下程序運行時輸出結(jié)果的第一行是  (14)  ,第二行是(15)  ,第三行是(16)

    #include<stdioh> 

    typedef struct s

    {

       int index;

       int value;

    }M;

   

    main()

    {static int ij,kc[4][4];

    M a[10]={{0,1},{3,2}{5,3},{6,4},{95},{15,6}{-l,0}}*p=a

      b[10]={{1,1}{3,2},{4,3},{6,4}{lO,5},{136},{-1,0}},*q=b;

    while(p->index!=-1) 

    {

      i=p->index/4;

      j=p->index%4;

      c[i][j]=P->value;

      p++;

    }

    while(q->index!=-1)

    {

       i=q->index/4;

       j=q->index%;

       c[i][j]+=q->value;

       q++;

    }

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

   {

    for(j=0;j<4;j++)  

      printf("%d"c[i][j]);   

    printf("\n");

   }

 }

13.以下程守運行時輸出結(jié)果的第一行是__(17)______ ,第二行是____(18)________  。

    void q(char *s,int left, int right)

    { int i,j;

      char x,y;

      i=left; j=right;

      x=s[(1eft+right)/2];

      do

      {while(s[i]>x&&i<right)i++

       while(s[j]<x&&j>left)j--;

  if(i<=j)

    { y=s[i];

      s[i]=s[j];

      s[j]=y;

      i++;j--;

    }

    }while(i<=j); 

   }

    main()

    {char strl[6]="abcde",str2[7]="25134";

     q(strl,0,4)puts(strl);

     q(str214);puts(str2)

    }

●完善程序題(12)    7

14.如果一個兩位整數(shù)是質(zhì)數(shù),將組成它的兩個數(shù)字交換位置后形成的整數(shù)仍為質(zhì)數(shù),則稱這 樣的數(shù)為絕對質(zhì)數(shù)。例如,13就是一個絕對質(zhì)數(shù)。以下程序用于找出所有兩位絕對質(zhì)數(shù)。

    #include<stdioh>

    int a_prime(int n)  

    {int jk,m[2];

     m[O]=n;

     m[1]= _____(19)_______

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

        for(k=m[j]/2k>1;k--)

            if(    (20)    )return 0;

        return 1;

    }

    main()

    {int i;

    for(i=10;i<100;i++)

         if(a_prime(i))printf("%d",i); 

    }   

        20  i

15.計算∑  n!的值,即求(1!)+(1!+2!)+(1!+2!+3!)++(1!+2!+3!++20!)

        i=1 n=1

    main()

   {int i,ndouble s=0,t

    for(i=1;i<=20;i++)

    {  ________(21)__________ ;

      for(n=1;_____(22)___________  ;n++)

      {  t=t*n;s=s+t;}

    } 

    printf("1!+(1!+2!)++(1!+2!++20 !)=%e\n"s);

    }   

16.以下程序中函數(shù)strmerge的功能是:合并ab兩個有序的字母字符串(字典序)而產(chǎn)生一

  個新的字符串,在合并的過程中刪除重復(fù)出現(xiàn)的字符,合并后的字符串仍然保持原序并保

  存到c指向的數(shù)組中,函數(shù)返回在合并過程中刪除的字符個數(shù)。main函數(shù)中輸出合并后

  的字符串“copy”以及在合并過程中刪除的字符個數(shù)3。

    include<stdioh>

    int strmerge(char *a,char *b,char *c)

    {int i=0,j=0,k=O;char t;

    while(a[i]!='\0' &&  (     22       )

    {if(a[i]==b[j])

      {t=a[i];i++;

         (   24        );

      }

    else   

        if(a[i]<b[j])

           t=a[i++] 

        else

          t=b[j++];

     if(t!=c[k-1])

          (       25       )    =t    。

    }

    while(a[i])

      if(a[i]!=c[k-1])

       c[k++]=a[i++];

      else

         i++

    while(b[j])

      if(b[j]!=c[k-1])

        c[k++]=b[j++]

    else

      j++;

    e[k]='\0';

    return    (       26      )  ;

    }

    main()

    {static char s1[10]="ccp",s2[10]="oppy",s3[20];int n;

     n=strmerge(sls2,s3)

     puts(s3);

     printf("%d",n)

    }

17.設(shè)某鏈表上每個結(jié)點的數(shù)據(jù)結(jié)構(gòu)為

    typedef struct node

    {int d;  

     struct node *next;

    }NODE

    函數(shù)NODE *invert(NODE *head)的功能是:將head指向的單鏈表逆置,即原鏈表最后一

個結(jié)點變?yōu)榈谝粋結(jié)點,原來倒數(shù)第二個結(jié)點變成第二個結(jié)點,以此類推。在逆置過程中不建

立新的鏈表。

    NODE *invert(NODE *head)

    {NODE *P,*q,*r;

     if(head==0||  (      (27)    )

       return head;

     P=head;

     q=P->next;

     while(q!=0)

     {r=    (       28        ) 

      q->next=p;p=qq=r;

     }

    (    29      )    =O;

    head=  (           30         )  ;

    return head;

    }  

 

 

 

 

 

答案:

1.D 2.D 3.D  4.C  5.A   6.C  7.D  8.C  9.C  10.D 11.A  12.B  13.C  14.A  15.C

16.B  17.D  18.C  19.C  20.C

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

(1)float  (2)標準  (3)2  (4)”a+”  (5)2  (6)6  (7)1  (8)FFD0   (9)021  (10)113

(11)1100  (12)0111  (13)3  (14)1104  (15)3380  (16)0550  (17)edcba  (18) 25431

(19)n/10+n%10*10  (20)m[j]%k==0  (21)t=1  (22)n<=i  (23)b[j]!=’\0’ (24)j++

(25)c[k++]  (26) i+j-k  (27)head->next==0  (28)q->next (29)head->next (30) p 

 

上機模擬試卷一:

改錯題:(20)

以下程序檢查地名登記表,使每個地名只登記一次,并輸出登記表內(nèi)容

函數(shù)del_line刪除s指向的n行字符串中重復(fù)出現(xiàn)的字符串,只保留第一次出現(xiàn)的字符串

若程序正確,運行后輸出結(jié)果應(yīng)為:shanghai beijing nanjing

含有錯誤的源程序如下:

#include <stdio.h>

#include <string.h>

 

int del_line(char s[10][ ],int n)

{

  int i,j,k;

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

  {j=i;

   while(j<n)

     if(strcmp(s[i],s[j])==0)

     {for(k=j;k<n;k++) s[k]=s[k+1];

       s[k][0]=0;n--;

     }

     else j++;

  }

  return n;

}

 

main()

{

  char line[10][10]={“shanghai”,”beijing”,”nanjing”,”shanghai”,”nanjing”};

  int k,n=5;

  n=del_line(line,n);

  for(k=0;k<n;k++)  puts(line);

}

將上述程序錄入到文件myf1.c中,然后根據(jù)題目的要求以及程序中語句之間的邏輯關(guān)系對程序中的錯誤進行修改。

2•改錯時,可以修改語句中的一部分內(nèi)容,調(diào)整語句次序,增加少量的變量說明或編譯

   預(yù)處理命令,但不能增加其他語句,也不能刪去整條語句。

  3.改正后的源程序(文件名myflc)必須放在考試軟盤的根目錄下,供閱卷用,否則不

  予評分。

二:編程題(20)

1.        編寫函數(shù)int gcd_max(int a[ ],int b[ ],int n),求長度為n的數(shù)組a中所有相鄰兩元素的最大公約數(shù)(n-1),并將之依次保存到數(shù)組b中,函數(shù)返回b數(shù)組中最大數(shù)的下標

2.        編寫函數(shù)main函數(shù),聲明一個數(shù)組并用以下測試數(shù)據(jù)對其初始化,調(diào)用函數(shù)gcd_max,將求得的所有公約數(shù),最大公約數(shù)及其下標寫入文件myf2.out中。

例如:輸入測試數(shù)據(jù)3,6,4,16,8,5,15,10,12,18,則輸出結(jié)果應(yīng)為:3,2,4,8,1,5,5,2,6,max1=3,max=8

1.將源文件取名為myf2c,輸出結(jié)果文件取名為myf2out。   

2.數(shù)據(jù)文件的打開、使用和關(guān)閉等操作均用C標準庫中緩沖文件系統(tǒng)的文件操作函數(shù)

實現(xiàn)。

3.源程序文件和運行結(jié)果文件均須保存在T:盤的根目錄下,供閱卷用。

4.不要將myf2obj、myf2exe保存到T:盤中。

 

 

改錯答案:

(1)         int del_line(char s[10][ ],int n)修改為: int del_line(char s[ ][10],int n)

(2)         j=i;  修改為:j=i+1;

(3)         s[k]=s[k+1]  修改為:strcpy(s[k],s[k+1]);

(4)         puts(line); 修改為: puts(line[k]);

編程題答案:

#include "stdio.h"

 

int gcd_max(int a[ ],int b[ ], int x)

{

int i,k=0,t,r,m,n;

int max,maxk;

for(i=0;i<x-1;i++)

{

  m=a[i];n=a[i+1];

  if(m<n) t=m,m=n,n=t;

  r=m%n;

  while(r!=0)

  {

    m=n;n=r;r=m%n;

}

b[k++]=n;

}

max=b[0]; maxk=0;

for(i=1;i<k;i++)

  if(max<b[i]) max=b[i],maxk=i;

return maxk;

}

 

main()

{

  FILE *fp;

  int a[10]={ 3,6,4,16,8,5,15,10,12,18},i,k;

  int b[9]={0};

  if((fp=fopen("myf2.out","w"))==NULL)

  {

     printf("Create file myf2.out failed!\n");

     exit(0);

  }

  k=gcd_max(a,b,10);

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

  {

         printf("%5d",b[i]);

    fprintf(fp,"%5d",b[i]);

  }

  fprintf(fp,"\n");

  fprintf(fp,"max1=%d,max=%d\n",k,b[k]);

  fclose(fp);

}