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

江蘇省高校計(jì)算機(jī)等級考試命題研究院 江蘇省高校計(jì)算機(jī)等級考試輔導(dǎo)
2015年3月全國計(jì)算機(jī)二級C語言選擇第1套

1.算法的時(shí)間復(fù)雜度是指

 

A.設(shè)計(jì)該算法所需的工作量

 

B.執(zhí)行該算法所需要的時(shí)間

 

C.執(zhí)行該算法時(shí)所需要的基本運(yùn)算次數(shù)

 

D.算法中指令的條數(shù)

 

2.設(shè)循環(huán)隊(duì)列存儲空間為Q(1:50),初始狀態(tài)為front=rear=50。經(jīng)過一系列入隊(duì)和退隊(duì)操作后,front=rear=25,則該循環(huán)隊(duì)列中元素個(gè)數(shù)為

 

 

 

A.26

 

B.25

 

C.24

 

D.0或50

 

3.某棵樹的度為4,且度為4、3、2、1的結(jié)點(diǎn)數(shù)分別為1、2、3、4,則該樹中的葉子結(jié)點(diǎn)數(shù)為

 

A.11

 

B.9

 

C.10

 

D.8

 

4.設(shè)某二叉樹的前序序列與中序序列均為ABCDEFGH,則該二叉樹的后序序列為

 

A.HGFEDCBA

 

B.EFGHABCD

 

C.DCBAHGFE

 

D.ABCDEFGH

 

5.下列敘述中正確的是

 

A.二分查找法適用于任何存儲結(jié)構(gòu)的有序線性表

 

B.二分查找法只適用于順序存儲的有序線性表

 

C.二分查找法適用于有序循環(huán)鏈表

 

D.二分查找法適用于有序雙向鏈表

 

6.下列序列中不滿足堆條件的是

 

A. (98,95,93,96,89,85,76,64,55,49)

 

B.(98,95,93,94,89,85,76,64,55,49)

 

C.(98,95,93,94,89,90,76,64,55,49)

 

D.(98,95,93,94,89,90,76,80,55,49)

 

7.下面屬于面向?qū)ο蠓椒ㄖ袑ο蠡咎攸c(diǎn)的是

 

A.多態(tài)性

 

B.方法唯一性

 

C.可修改性

 

D.靈活性

 

8.下面可以作為軟件需求分析工具的是

 

A.包圖 

 

B.程序流程圖

 

C.PAD圖

 

D.數(shù)據(jù)流程圖(DFD圖)

 

9.數(shù)據(jù)庫的數(shù)據(jù)模型分為

 

A.層次、關(guān)系和網(wǎng)狀

 

B.網(wǎng)狀、環(huán)狀和鏈狀

 

C.大型、中型和小型

 

D.線性和非線性

 

10.數(shù)據(jù)庫系統(tǒng)的數(shù)據(jù)獨(dú)立性是指

 

A.不會(huì)因?yàn)橄到y(tǒng)數(shù)據(jù)存儲結(jié)構(gòu)與數(shù)據(jù)邏輯結(jié)構(gòu)的變化而影響應(yīng)用程序

 

B.不會(huì)因?yàn)閿?shù)據(jù)的變化而影響應(yīng)用程序

 

C.不會(huì)因?yàn)榇鎯Σ呗缘淖兓绊懘鎯Y(jié)構(gòu)

 

D.不會(huì)因?yàn)槟承┐鎯Y(jié)構(gòu)的變化而影響其他的存儲結(jié)構(gòu)

 

11.以下敘述正確的是

 

A.C程序由函數(shù)組成,可以不包含main函數(shù)

 

B.每個(gè)C程序文件中的main函數(shù)都應(yīng)當(dāng)放在最前面

 

C.每個(gè)C程序文件都應(yīng)當(dāng)包含一個(gè)main函數(shù)

 

D.每個(gè)C程序都只能有一個(gè)main函數(shù)

 

12.以下敘述錯(cuò)誤的是

 

A.計(jì)算機(jī)可以直接識別由十六進(jìn)制代碼構(gòu)成的程序

 

B.可以連續(xù)執(zhí)行的指令的集合稱為"程序"

 

C."程序"是人與計(jì)算機(jī)"對話"的語言

 

D.計(jì)算機(jī)可以直接識別由0和1組成的機(jī)器語言代碼

 

13.以下與數(shù)學(xué)表達(dá)式 0<x<5且x≠2 不等價(jià)的C語言邏輯表達(dá)式是

 

A.(0<x<5) && (x!=2)

 

B.0<x && x<5 && x!=2

 

C.x>0 && x<5 && x!=2

 

D.(x>0 && x<2) || (x>2 && x<5)

 

14.以下選項(xiàng)中與 ( !a== 0 )的邏輯值不等價(jià)的表達(dá)式是

 

A.( a== !0 )

 

B.a

 

C.(a>0 || a<0)

 

D.(a!= 0 )

 

15.變量math和engl中存放了兩門課的成績。若兩門課成績均在60分以上(含60),則顯示"pass";有一門低于60分則顯示"fail",以下不能實(shí)現(xiàn)上述功能的程序段是

 

A. if(math<60)

           if(engl<60)

              printf("fail\n");

          else

 

             printf("pass\n");

 

B.if(math<60)

              printf("fail\n");

        else

          if(engl>=60)

             printf("pass\n");

          else

 

              printf("fail\n");

 

C.if ((math<60) ||(engl<60))

            printf("fail\n");

        else

 

            printf("pass\n");

 

D.if ((math>=60) && (engl>=60))

           printf("pass\n");

        else

 

           printf("fail\n");

 

16.設(shè)有以下程序段

main( )

{  int  x[M][N];

      ...

   Arrlet(x);

     ...

}

 

則作為函數(shù)Arrlet的形參,以下表示形式非法的是

 

 

 

A.int x[M][ ]

 

B.int (*x)[N]

 

C.int x[ ][N]

 

D.int x[M][N]

 

17.有以下程序

#include  <stdio.h>

void  fun( int n )

{

  if( n/2 )  fun(n/2);

  printf("%d",n%2 );

}

main()

{   fun( 10 );    printf("\n");   }

 

 

程序運(yùn)行后的輸出結(jié)果是

 

A.0101

 

B.1000

 

C.1100

 

D.1010

 

18. 有以下程序

#include   <stdio.h>

void  fun(char  *a,char  *b)

{  char  *s=a;

   while(*s) s++;

   s--;

   while(s>=a)

   { *b=*s; s--; b++; }

   *b='\0';

}

main()

{  char  s1[]="abc",s2[6];

   fun(s1,s2);

   puts(s2);

 

 

}

 

程序運(yùn)行后的輸出結(jié)果是

 

A.cbaabc

 

B.abc

 

C.cba

 

D.abccba

 

19.有以下程序

#include   <stdio.h>

main( )

{  char  b[4][10];    int  i;

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

        scanf( "%s", b[i] );

   for( i=3; i>=0; i-- )

        printf( "%s ", b[i] );

   printf( "\n" );

}

 

 

執(zhí)行時(shí)若輸入:  Peach flower is pink.<回車>  ,則輸出結(jié)果是

 

A.Peachflower is pink.

 

B.pink. is flower Peach

 

C.Peachflowerispink.

 

D.Pink is flower peach.

 

20.有以下程序

#include  <stdio.h>

int *  f(int  *s)

{  s[1] +=6;

   *s=7;

   s+=2;

   return  s;

}

main( )

{  int  a[5]={1,2,3,4,5}, *p=a; 

   p= f(p); 

   printf( "%d,%d,%d\n", a[0], a[1], *p );

 

 

}

 

 

程序運(yùn)行后的輸出結(jié)果是

 

A.9,8,9

 

B.7,8,7

 

C.7,8,3

 

D.1,2,1

 

21.設(shè)有定義

    char  s[81];  int  i=0;

 

 

 

以下不能將一行不超過80個(gè)字符帶有空格的字符串正確讀入的語句或語句組是

 

A.scanf("%s",s);

 

B.while((s[i++]=getchar())!='\n');s[i]='\0';

 

C.gets(s);

 

D.do{ scanf("%c",&s[i]); }while(s[i++]!='\n'); s[i]='\0';

 

22.以下敘述中錯(cuò)誤的是(  )。

A.C語言中的每條可執(zhí)行語句和非執(zhí)行語句最終都將被轉(zhuǎn)換成二進(jìn)制的機(jī)器指令

B.C程序經(jīng)過編譯、連接步驟之后才能形成一個(gè)真正可執(zhí)行的二進(jìn)制機(jī)器指令文件

C.用C語言編寫的程序稱為源程序,它以ASCII代碼形式存放在一個(gè)文本文件中

D.C語言源程序經(jīng)編譯后生成后綴為.obj的目標(biāo)程序

23.以下選項(xiàng)中,合法的一組C語言數(shù)值常量是(  )。

A.12. 0Xa23 4.5e0

B.028 .5e-3。0xf

C..177 4e1.5 0abc

D.0x8A 10,000 3.e5

24.下選項(xiàng)中不合法的標(biāo)識符是(  )。

A.&a

B.FOR

C.print

D. 00

25.若有代數(shù)式 (其中e僅代表自然對數(shù)的底數(shù),不是變量),則以下能夠正確表示該代數(shù)式的C語言表達(dá)式是(  )。

A.sqrt(fabs(pow(n,x)+exp(x)))

B.sqrt(fabs(pow(n,x)+pow(x,e)))

C.sqrt(abs(n^x+e^x))

D.sqrt(fabs(pow(x,n)+exp(x)))

26.若有定義:double a=22;int i=0,k=18;,則不符合C語言規(guī)定的賦值語句是(  )

A.i=(a+k)<=(i+k);

B.i=a%11;

C.a=a++,i++

D.i=!a;

27.有以下程序:

#include  <stdio.h>

main()

{  int s,t,A=10; double B=6;

  s=sizeof(A); t=sizeof(B);

  printf("%d,%d\n",s,t);

}

在VC6.0平臺上編譯運(yùn)行,程序運(yùn)行后的輸出結(jié)果是(  )。

A.10,6

B.4,4

C.2,4

D.4,8

28.有以下程序:

#include  <stdio.h>

main()

{   char  a,b,c,d;

   scanf("%c%c",&a, &b);

   c=getchar();    d=getchar();

   printf("%c%c%c%c\n",a,b,c,d);

}

當(dāng)執(zhí)行程序時(shí),按下列方式輸入數(shù)據(jù)(從第1列開始,<CR>代表回車,注意:回車也是一個(gè)字符)

12<CR>

34<CR>

則輸出結(jié)果是(  )。

A.12

34

B.12

C.1234

D.12

3

29.下關(guān)于邏輯運(yùn)算符兩側(cè)運(yùn)算對象的敘述中正確的是(  )。

A.可以是任意合法的表達(dá)式

B.只能是整數(shù)0或非0整數(shù)

C.可以是結(jié)構(gòu)體類型的數(shù)據(jù)

D.只能是整數(shù)0或1

30.有以下程序:

#include  <stdio.h>

main()

{  int  a=0,b=0,c=0,d=0;

  if(a=1)  b=1;c=2;

  else    d=3;

  printf("%d,%d,%d,%d\n",a,b,c,d);

}

程序輸出(  )。

A.1,1,2,0

B.0,0,0,3

C.編譯有錯(cuò)

D.0,1,2,0

31.有以下程序:

#include  <stdio.h>

main()

{ int   x=1, y=0, a=0, b=0;

   switch (x)

   { case   1:

    switch(y)

    { case   0:  a++;  break;

      case   1:  b++;  break;

      }

     case 2:  a++;  b++;  break;

     case 3:  a++;  b++;

  }

  printf("a=%d, b=%d\n", a, b);

}

程序的運(yùn)行結(jié)果是(  )。

A.a=2,b=2

B.a=2,b=1

C.a=1,b=1

D.a=1,b=0

32.以下程序段中的變量已正確定義:

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

      for( k=1; k<3; k++ ); printf("*" );

程序段的輸出結(jié)果是(  )。

A.**

B.****

C.*

D.********

33.有以下程序段:

#include  <stdio.h>

int  i, n;

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

{  n = rand() % 5;

  switch (n)

  { case 1:

case 3:  printf("%d \n", n);  break;

case 2:

case 4:  printf("%d \n", n);  continue;

case 0:  exit(0);

  }

  printf("%d \n",n);

}

以下關(guān)于程序段執(zhí)行情況的敘述,正確的是(  )。

A.for循環(huán)語句固定執(zhí)行8次

B.當(dāng)產(chǎn)生的隨機(jī)數(shù)n為4時(shí)結(jié)束循環(huán)操作

C.當(dāng)產(chǎn)生的隨機(jī)數(shù)n為1和2時(shí)不做任何操作

D.當(dāng)產(chǎn)生的隨機(jī)數(shù)n為0時(shí)結(jié)束程序運(yùn)行

34.有以下程序:

#include  <stdio.h>

int f(int x);

main()

{ int n=1,m;

 m=f(f(f(n))); printf("%d\n",m);

}

int f(int x)

{ return x*2; }

程序運(yùn)行后的輸出結(jié)果是(  )。

A.8

B.2

C.4

D.1

35.下敘述中錯(cuò)誤的是(  )。

A.可以給指針變量賦一個(gè)整數(shù)作為地址值

B.函數(shù)可以返回地址值

C.改變函數(shù)形參的值,不會(huì)改變對應(yīng)實(shí)參的值

D.當(dāng)在程序的開頭包含頭文件stdio.h時(shí),可以給指針變量賦NULL

36.設(shè)已有定義:float  x;,則以下對指針變量p進(jìn)行定義且賦初值的語句中正確的是(  )。

A.int  *p=(float)x;

B.float  *p=&x;

C.float  p=&x;

D.float  *p=1024;

37.以下數(shù)組定義中錯(cuò)誤的是(  )。

A.int  x[2][3]={1,2,3,4,5,6}

B.int  x[][3]={0};

C.int  x[][3]={{1,2,3},{4,5,6}};

D.int  x[2][3]={{1,2},{3,4},{5,6}};

38.有以下程序:

#include  <stdio.h>

void fun( int  a[], int  n)

{  int   i, t;

  for(i=0; i<n/2; i++)  { t=a[i];  a[i]=a[n-1-i];  a[n-1-i]=t; }

}

main()

{  int   k[10]={ 1,2,3,4,5,6,7,8,9,10},i;

  fun(k,5);

  for(i=2; i<8; i++) printf("%d",k[i]);

  printf("\n");

}

程序的運(yùn)行結(jié)果是(  )。

A.321678

B.876543

C.1098765

D.345678

39.有以下程序:

#include  <stdio.h>

#define   N    4

void  fun(int  a[][N], int  b[])

{ int  i;

  for (i=0; i<N; i++)   b[i] = a[i][i] - a[i][N-1-i];

}

main()

{ int  x[N][N]={{1, 2, 3, 4}, {5, 6, 7, 8}, {9,10,11,12}, {13,14,15,16}}, y[N], i;

  fun (x, y);

  for (i=0; i<N; i++)   printf("%d,", y[i]);    printf("\n");

}

程序運(yùn)行后的輸出結(jié)果是(  )。

A.-3,-1,1,3,

B.-12,-3,0,0,

C.0,1,2,3,

D.-3,-3,-3,-3,

40.設(shè)有定義:char  s[81];  int  i=0;,以下不能將一行(不超過80個(gè)字符)帶有空格的字符串正確讀入的語句或語句組是(  )。

A.gets(s);

B.while((s[i++]=getchar())。'\n');s[i]='\0';

C.scanf("%s",s);

D.do{ scanf("%c",&s[i]); }while(s[i++]。'\n'); s[i]='\0';

1.C  2.D  3.A  4.A  5.B  6.A  7.A  8.D  9.A  10.A  11.D  12.A  13.A  14.A  15.A  16.A  17.D  18.C  19.B  20.C  21.A  22.A  23.A  24.A  25.A  26.B  27.D  28.D  29.A  30.C  31.B  32.C  33.D  34.A  35.A  36.B  37.D  38.A  39.A  40.C