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

江蘇省高校計(jì)算機(jī)等級(jí)考試命題研究院 江蘇省高校計(jì)算機(jī)等級(jí)考試輔導(dǎo)
2014年9月全國(guó)二級(jí)C語(yǔ)言選擇題真題第2套

1.下列敘述中錯(cuò)誤的是

 

A.數(shù)據(jù)結(jié)構(gòu)中的數(shù)據(jù)元素不能是另一數(shù)據(jù)結(jié)構(gòu)

 

B.數(shù)據(jù)結(jié)構(gòu)中的數(shù)據(jù)元素可以是另一數(shù)據(jù)結(jié)構(gòu)

 

C.空數(shù)據(jù)結(jié)構(gòu)可以是線性結(jié)構(gòu)也可以是非線性結(jié)構(gòu)

 

D.非空數(shù)據(jù)結(jié)構(gòu)可以沒(méi)有根結(jié)點(diǎn)

 

2.為了降低算法的空間復(fù)雜度,要求算法盡量采用原地工作(in place)。所謂原地工作是指

 

A.執(zhí)行算法時(shí)所使用的額外空間固定(即不隨算法所處理的數(shù)據(jù)空間大小的變化而變化)

 

B.執(zhí)行算法時(shí)所使用的額外空間隨算法所處理的數(shù)據(jù)空間大小的變化而變化

 

C.執(zhí)行算法時(shí)不使用額外空間

 

D.執(zhí)行算法時(shí)不使用任何存儲(chǔ)空間

 

3. 某循環(huán)隊(duì)列的存儲(chǔ)空間為Q(1:m),初始狀態(tài)為front=rear=m,F(xiàn)經(jīng)過(guò)一系列的入隊(duì)操作和退隊(duì)操作后,front=m,rear=m-1,則該循環(huán)隊(duì)列中的元素個(gè)數(shù)為

 

A.m-1

 

B.m

 

C.1

 

D.0

 

4.某棵樹(shù)只有度為3的結(jié)點(diǎn)和葉子結(jié)點(diǎn),其中度為3的結(jié)點(diǎn)有8個(gè),則該樹(shù)中的葉子結(jié)點(diǎn)數(shù)為

 

A.15

 

B.16

 

C.17

 

D.不存在這樣的樹(shù)

 

5. 某二叉樹(shù)共有530個(gè)結(jié)點(diǎn),其中度為2的結(jié)點(diǎn)有250個(gè),則度為1的結(jié)點(diǎn)數(shù)為

 

A.29

 

B.30

 

C.249

 

D.251

 

6.若某二叉樹(shù)中的所有結(jié)點(diǎn)值均大于其左子樹(shù)上的所有結(jié)點(diǎn)值,且小于右子樹(shù)上的所有結(jié)點(diǎn)值,則該二叉樹(shù)遍歷序列中有序的是

 

A.前序序列

 

B.中序序列 

 

C.后序序列

 

D.以上說(shuō)法均可以

 

7.將C語(yǔ)言的整數(shù)設(shè)為整數(shù)類I,則下面屬于類I實(shí)例的是

 

A.-103

 

B.10E3

 

C.10.3

 

D."0103"

 

8.下列敘述中正確的是

 

A.軟件是程序、數(shù)據(jù)和文檔

 

B.軟件是程序和數(shù)據(jù)

 

C.軟件是算法和數(shù)據(jù)結(jié)構(gòu)

 

D.軟件是算法和程序

 

9.軟件生命周期是指

 

A.軟件的定義和開(kāi)發(fā)階段

 

B.軟件的需求分析、設(shè)計(jì)與實(shí)現(xiàn)階段

 

C.軟件的開(kāi)發(fā)階段

 

D.軟件產(chǎn)品從提出、實(shí)現(xiàn)、使用維護(hù)到停止使用退役的過(guò)程

 

10.下列敘述中正確的是

 

A.數(shù)據(jù)庫(kù)系統(tǒng)可以解決數(shù)據(jù)冗余和數(shù)據(jù)獨(dú)立性問(wèn)題,而文件系統(tǒng)不能

 

B.數(shù)據(jù)庫(kù)系統(tǒng)能夠管理各種類型的文件,而文件系統(tǒng)只能管理程序文件

 

C.數(shù)據(jù)庫(kù)系統(tǒng)可以管理龐大的數(shù)據(jù)量,而文件系統(tǒng)管理的數(shù)據(jù)量較少

 

D.數(shù)據(jù)庫(kù)系統(tǒng)獨(dú)立性較差,而文件系統(tǒng)獨(dú)立性較好

 

11.關(guān)于程序模塊化,以下敘述錯(cuò)誤的是

 

A.程序模塊化可以提高程序運(yùn)行的效率

 

B.程序模塊化可以提高程序編制的效率

 

C.程序模塊化可以提高程序代碼復(fù)用率

 

D.程序模塊化可以提高調(diào)試程序的效率

 

12.以下是正確C語(yǔ)言標(biāo)識(shí)符的是

 

A.&3

 

B.#3

 

C._3

 

D.-3

 

13.若有定義:int  a,b,c; 以下程序段的輸出結(jié)果是

          a=11;  b=3;  c=0;

 

 

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

 

A.2

 

B.0

 

C.3

 

D.1

 

14.以下選項(xiàng)中合法的C語(yǔ)言常量是

 

A. 'C-STR'

 

B.2014.1

 

C."\1.0

 

D.2EK

 

15.設(shè)有定義:int x,y,z;,且各變量已賦正整數(shù)值,則以下能正確表示代數(shù)式 的C語(yǔ)言表達(dá)式是(   )。

 

A.1.0/x/y/z

 

B.1/x*y*z

 

C.1/(x*y*z)

 

D.1/x/y/(double)z

 

16.有以下程序

    #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列開(kāi)始,<CR>代表回車,注意:回車也是一個(gè)字符)

    12<CR>

    34<CR>

 

則輸出結(jié)果是

 

A. 12

 

               3

 

B. 12

 

C.1234

 

D. 12

 

               34

 

17.有以下程序

#include   <stdio.h>

main( )

{  int  a, b;

   for (a=0; a<3; a++) 

   {  scanf("%d", &b);

      switch(b)

      {  default:  printf("%d,",b+1);  continue;

         case  1:  printf("%d,", b+1);

         case  2:  printf("%d,", b+1);  continue;

      }

   }

}

 

 

執(zhí)行時(shí)輸入:1  2  3<回車>,則輸出結(jié)果是

 

A.2,2,3,4,4,4,

 

B.2,3,4,

 

C.2,2,3,4,

 

D.2,3,3,4,5,6,

 

18.有以下程序

#include  <stdio.h>

#include  <math.h>

main()

{  double  x, y, z;

   scanf("%lf%lf",&x,&y );

   z= x/ y;

   while(1)

     if( fabs(z) > 1.0 )

     {  x=y; y=x; z=x/y; }

     else   break;

   printf("y=%f \n", y );

 

 

}

 

 

執(zhí)行時(shí)輸入:3.6  2.4<回車>,則輸出結(jié)果是

 

A.2.400000

 

B.1.500000

 

C.1.600000

 

D.2.000000

 

19.有以下程序

#include   <stdio.h>

main( )

{  int  i;

   char  c;

   scanf("%c", &c);

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

   {

        if (i > c) continue;

        printf("%d,", i);

   }

}

 

 

執(zhí)行時(shí)輸入0<回車>則輸出結(jié)果是

 

A.5

 

B.0,0,0,0,0,

 

C.0,1,2,3,4,

 

D.0,1,

 

20.以下程序擬實(shí)現(xiàn)計(jì)算 sum=1+1/2+1/3+ … +1/50 。

#include   <stdio.h>

main( )

{  int  i;    double  sum;

   sum=1.0;

   i=1;

   do

   {  i++;    sum += 1/i;   }

   while( i<50 );

   printf("sum=%lf\n",sum);

}

 

 

程序運(yùn)行后不能得到正確結(jié)果,出現(xiàn)問(wèn)題的語(yǔ)句是

 

A.sum += 1/i;

 

B.while(i<50);

 

C.sum = 1.0;

 

D.i++;

 

21. 若有定義語(yǔ)句

    double  a, *p=&a;

 

 

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

 

A.定義語(yǔ)句中的 * 號(hào)是一個(gè)間址運(yùn)算符

 

B.定義語(yǔ)句中的 * 號(hào)是一個(gè)說(shuō)明符

 

C.定義語(yǔ)句中的p只能存放double類型變量的地址

 

D.定義語(yǔ)句中 *p=&a 把變量a的地址作為初值賦給指針變量p

 

22.關(guān)于函數(shù)返回值,以下敘述正確的是

 

A.函數(shù)可以返回整個(gè)結(jié)構(gòu)體,即使結(jié)構(gòu)體中有數(shù)組

 

B.函數(shù)只能返回基本數(shù)據(jù)類型的數(shù)值或指針

 

C.函數(shù)不可以返回一個(gè)數(shù)組

 

D.函數(shù)不能沒(méi)有返回值

 

23.有以下程序

#include  <stdio.h>

int  fun( int *b,  int  n )

{   int  i, r=1;

    for( i=0; i<=n; i++ ) r=r*b[i];

    return  r;

}

main()

{   int  x, a[]={2,3,4,5,6,7,8,9 };

    x=fun( a,3 );

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

 

 

}

 

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

 

A.24

 

B.720

 

C.120

 

D.6

 

24.若有語(yǔ)句int  a[3][4], (*p)[4];  p = a;,則以下選項(xiàng)中敘述錯(cuò)誤的是

 

A.系統(tǒng)將開(kāi)辟一個(gè)名為p的二維數(shù)組,p[0][0]中的值即為a[0][0]中的值

 

B.p+1代表a[1][0]的地址

 

C.p中將存放 a 數(shù)組的首地址

 

D.p+2代表 a 數(shù)組最后一行的首地址

 

25.有以下程序

#include   <stdio.h>

void change( char*  array, int  len )

{  for (len--; len>=0; len--)

        array[len] += 1;

}

main( )

{  int  i;

   char  array[5] = "ABCD";

   change(array, 4);

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

        printf("%c,", array[i]);

}

 

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

 

 

 

A. B,C,D,E,

 

B.A,B,C,D,

 

C.C,D,E,F,

 

 

D.B,D,F,H,

 

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

        float  a[8] = {1.0, 2.0};

        int  b[1] = {0};

        char  c[] = {"A", "B"};

        char  d == "1";

 

 

以下敘述正確的是

 

A.只有變量c的定義是合法的

 

B.只有變量a,b,c的定義是完全合法的

 

C.所有變量的定義都是完全合法的

 

D.只有變量a, b的定義是完全合法的

 

27.有以下程序

#include   <stdio.h>

main( )

{  int  a[4],p,x,i;

   for( i=3;i>0;i-- )a[i-1]=i*2-1;

   scanf("%d",&x);

   i=0;

   while( a[i]<x )  i++;

   p=i;

   for( i=3;i>p;i-- )  a[i]=a[i-1];

   a[p]=x;

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

   printf("\n");

}

 

 

執(zhí)行時(shí)輸入:2<回車>,則輸出結(jié)果是

 

A.1  2  3  4

 

B.5  4  3  1

 

C.1  2  3  5

 

D.3  2  1  4

 

28.有以下程序

#include  <stdio.h>

int fun(int  a[],int  n,int  x)

{  int  *p=a;

   while( p<a+n && *p!=x ) p++;

   if ( p<a+n )  return  p-a;

   else  return  -1;

}

main()

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

   printf("%d\n",fun(a,10,10)); 

}

 

 

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

 

A.9

 

B.-1

 

C.10

 

D.0

 

29.有以下程序

#include  <stdio.h>

main( )

{  char  w[20], a[5][10]={"abcde", "fghij", "klmno", "pqrst", "uvwxy"};

   int  i;

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

       w[i] = a[i][i];

   w[5]= '\0';

   printf( "%s\n", w );

 

 

}

 

 

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

 

A.ejoty

 

B.afkpu

 

C.agmsy

 

D.eimqu

 

30.語(yǔ)句printf("%d\n", strlen("\t\"\\\n\'\065\08AB"));的輸出結(jié)果是

 

A.6

 

B.7

 

C.8

 

D.9

 

31.有以下程序

#include  <stdio.h>

#include  <string.h>

void  fun( char *s, int m1, int m2 )

{  char  t, *p;

   p=s + m1;  s= s+m2;

   while( s<p )

   {  t=*s;  *s=*p;  *p=t;

      s++;   p--;

   }

}

main()

{   char  ss[10]="012345678";

    int  n=6;

    fun( ss,0,n-1 );

    fun( ss,9,n );

    fun( ss,0,9 );

    printf("%s\n", ss );

}

 

 

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

 

A.012345

 

B.876543210

 

C.876543

 

D.012345678

 

32.有以下程序

#include   <stdio.h>

int  m=1,n=2;

void sub1(int  m,int  n)

{   m+=2; n++;   }

void sub2( )

{   m++;  n+=2;   }

main( )

{  printf("%d,%d,",m,n);

   sub1(4,5);

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

   sub2();

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

 

 

}

 

 

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

 

A.1,2,1,2,2,4

 

B.1,2,6,6,7,8

 

C.1,2,2,4,2,4

 

D.1,2,6,6,2,4

 

33.有以下程序

#include   <ctype.h>

#include   <stdio.h>

long fun( char  s[] )

{  long  n;  int  sign;

   for(  ; isspace(*s); s++ );

   sign=(*s=='-')? -1 : 1;

   if(*s=='+' || *s=='-') s++;

   for( n=0 ; isdigit(*s); s++ )

       n=10*n+(*s-'0');

   return sign*n;

}

main()

{  char  s[]="  -26a3";

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

 }

 

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

 

A.-263

 

B.2

 

C.0

 

D.-26

 

34.設(shè)有定義

    struct complex

    {  int real,unreal;} data1={1,8},data2;

 

 

 

則以下賦值語(yǔ)句中錯(cuò)誤的是

 

A.data2=(2,6);

 

B.data2=data1;

 

C.data2.real=data1.real;

 

D.data2.real=data1.unreal;

 

35.有以下程序

 

#include <stdio.h>

#define S(x) x*x/x

main( )

{  int k = 6, j = 3;

   printf("%d,%d\n", S(k+j+2), S(j+k+2));

 

 

}

 

 

 

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

 

A. 11,11

 

B.29,29

 

C.26,29

 

D.121,121

 

36.若有定義

          typedef  int  *T[10]; 

          T  a;

 

 

則以下選項(xiàng)與上述定義中a的類型完全相同的是

 

A.int  *a[10];

 

B.int  (*a)[10];

 

C.int  a[10];

 

D.int  (*a[10])();

 

37.有以下程序

#include   <stdio.h>

main( )

{  FILE  *fp;

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

   fp = fopen( "data.dat", "w+" );

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

       fprintf(fp, "%d\n", a[5-i]);

   rewind(fp);

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

   {   fscanf(fp, "%d", &k);

       printf("%d,", k);

   }

   fclose(fp);

}

 

 

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

 

A.6,5,4,3,2,1,   

 

B.1,2,3,4,5,6,

 

C.1,1,1,1,1,1

 

D.6,6,6,6,6,6,

 

38. 有以下程序

#include  <stdio.h>

#include  <stdlib.h>

void  fun( double  *p1, double  *p2, double  *s )

{   s=( double* )calloc( 1,sizeof(double) );

    *s = *p1 + *p2;

}

main()

{   double  a[2]={1.1,2.2 }, b[2]={ 10.0,20.0 }, *q=NULL;

    fun( a,b,q );

    printf("%5.2f \n", *q  );

 

 

}

 

 

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

 

A.有運(yùn)行錯(cuò)誤

 

B.輸出11.10

 

C.輸出12.10

 

D.輸出21.10

 

39.若文件指針fp已正確指向文件,ch為字符型變量,以下不能把字符輸出到文件中的語(yǔ)句是

 

A.fget( fp,ch );

 

B.fputc(ch,fp);

 

C.fprintf( fp, "%c",ch );

 

D.fwrite( &ch,sizeof(ch),1,fp);

 

40.有以下程序

#include   <stdio.h>

struct  ball

{

    char  color[10];

    int  dim;

};

main( )

{

    struct ball list[2] = {{"white", 2}, {"yellow", 3}};

    printf("%s:%d\n", (list+1)->color, list->dim);

 

 

}

 

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

 

A.yellow:3

 

B.yellow:2 

 

C.white:2

 

D.white:3

 

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

 

34