<source id="v77gz"></source>
    <u id="v77gz"><p id="v77gz"></p></u>

      <samp id="v77gz"></samp>

      <var id="v77gz"><td id="v77gz"><ins id="v77gz"></ins></td></var>

      <video id="v77gz"></video>
      <source id="v77gz"></source>
    1. 江蘇省高校計算機等級考試命題研究院 江蘇省高校計算機等級考試輔導
      最新全國計算機二級C選擇題第3套

      1.下列敘述中正確的是

       

      A.結點中具有兩個指針域的鏈表一定是二叉鏈表

       

      B.結點中具有兩個指針域的鏈表可以是線性結構,也可以是非線性結構

       

      C.二叉樹只能采用鏈式存儲結構

       

      D.循環鏈表是非線性結構

       

      2.某二叉樹的前序序列為ABCD,中序序列為DCBA,則后序序列為

       

      A.BADC

       

      B.DCBA

       

      C.CDAB

       

       

      D.ABCD

       

      3.下面不能作為軟件設計工具的是

       

      A.PAD圖   

       

      B.程序流程圖

       

      C.數據流程圖(DFD圖)

       

      D.總體結構圖

       

      4.邏輯模型是面向數據庫系統的模型,下面屬于邏輯模型的是

       

      A.關系模型

       

      B.謂詞模型

       

      C.物理模型 

       

      D.實體-聯系模型

       

      5.運動會中一個運動項目可以有多名運動員參加,一個運動員可以參加多個項目。則實體項目和運動員之間的聯系是

       

      A.多對多

       

      B.一對多

       

      C.多對一 

       

      D.一對一

       

      6.堆排序最壞情況下的時間復雜度為

       

       

       

      A.

       

      B.

       

      C.

       

      D.

       

      7.某二叉樹中有15個度為1的結點,16個度為2的結點,則該二叉樹中總的結點數為

       

      A.32  

       

      B.46 

       

      C.48  

       

      D.49

       

      8.下面對軟件特點描述錯誤的是

       

      A.軟件沒有明顯的制作過程

       

      B.軟件是一種邏輯實體,不是物理實體,具有抽象性

       

      C.軟件的開發、運行對計算機系統具有依賴性

       

      D.軟件在使用中存在磨損、老化問題

       

      9.

       

      A.0

       

      B.1

       

      C.2

       

      D.3

       

      10.設有表示公司和員工及雇傭的三張表,員工可在多家公司兼職,其中公司C(公司號,公司名,地址,注冊資本,法人代表,員工數),員工S(員工號,姓名,性別,年齡,學歷),雇傭E(公司號,員工號,工資,工作起始時間)。其中表C的鍵為公司號,表S的鍵為員工號,則表E的鍵(碼)為

       

      A.公司號,員工號

       

       

      B.員工號,工資

       

      C.員工號 

       

      D.公司號,員工號,工資

       

      11.算法應當具有的特性不包括

       

      A.可行性

       

      B.有窮性

       

      C.確定性

       

      D.美觀性  

       

      12.若想給已定義為int型的變量a、b、c、d賦整數1,以下選項中錯誤的語句是

       

      A.d=c, c=b, b=a, a=1;     

       

      B. d=c=b=a=1;

       

      C.d=(b=c=(a=1));

       

      D.d=1, c=d, b=c, a=b;

       

      13.以下選項中,合法的C語言常量是

       

      A.21.84 

       

      B. 'CPP'    

       

      C. "\1.0

       

      D.2MB

       

      14.下面敘述正確的是

       

      A. C語言程序的語句經過編譯和鏈接轉換成二進制機器指令后才能執行

       

      B.任何算法需要包含三種基本結構中的兩種以上

       

      C.復雜算法是不能用三種基本結構來表達的

       

      D. 只要是簡單算法,它的操作步驟都不會超過20步

       

      15.若已有定義語句:int  a, b, c;,且變量已正確賦初值,則以下選項中正確的賦值表達式是

       

      A.a = (b = c) + 8; 

       

      B.(a = b) = c = 9;

       

      C.a = (b == c) = 'A';

       

      D.a + b = c + 1;

       

      16. 以下表達式的值與x無關、其值恒為真的是

       

      A.0 < x < 5

       

      B. x>10 && x<5 

       

      C. x>10 && x<5 

       

      D.x<10 &&  x>5

       

      17. 以下非法的字符常量是

       

      A.'\x21' 

       

      B.'\101' 

       

      C.'\\n'

       

      D. '\0'

       

      18.若有定義int  a=0,b=0,c=0,d=0;,以下關于C語言表達式(++a || ++b) ? ++c : ++d 執行順序的敘述正確的是

       

      A.先執行++b,表達式++b的值為1;再執行++a,表達式++a的值為1,由此可確定(++a || ++b)值為1,因此執行++c

       

      B.先執行++a,表達式++a的值為1;再執行++b,表達式++b的值為1,由此可確定(++a || ++b)值為1,因此執行++c

       

      C.先執行++b,表達式++b的值為1;再執行++a,表達式++a的值為1,由此可確定(++a || ++b)值為1,因此執行++c

       

      D.先執行++a,表達式++a的值為1,由此可確定(++a || ++b)值為1,因此執行++c

       

      19.有如下程序

      #include   <stdio.h>

      main( )

      {

          int  i, data;

          scanf("%d", &data);

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

          {

              if (i > data) break;

              printf("%d,", i);

          }

      }

       

      程序運行時,從鍵盤輸入:3<回車>后,程序輸出結果為

       

      A. 2,3,4,

       

      B. 1,2,3,

       

      C.0,1,2,3,

       

      D.3,4,5,

       

      20. 有以下程序

       

      #include <stdio.h>

      main( )

      {

          int  i = 4;

          for ( printf("%d", i); i<2; i++)  printf("%d", i);

          printf("\n");

      }

       

      程序運行后的輸出結果是

       

       

      A.4

       

      B.12  

       

      C.1 

       

      D.0

       

      21. 有以下程序

      #include   <stdio.h>

      main( )

      {

          if ('\0' == 0) putchar('1');

          if ('0' == 0)  putchar('2');

          if ('a' > 'b') putchar('3');

       

      }

       

      程序運行后的輸出結果是

       

      A.  3

       

      B.123

       

      C.23 

       

      D.1 

       

      22. 有如下程序段

            int  k;

            for(k=2;k==0;)  printf("%d",k--);

       

      則for循環體執行的次數是

       

       

      A. 1次

       

      B.0次 

       

      C.2次  

       

      D.無限次

       

      23.有以下程序

       

      #include  <stdio.h>

      int  k=5;

      void f(int  *s)

      {   s=&k;

          *s=7;

      }

      main( )

      {  int  m=3; 

         f(&m); 

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

       

      }

       

      程序運行后的輸出結果是

       

      A. 3,7  

       

      B. 7,7

       

      C. 5,7

       

      D.3,5

       

      24.有以下程序

       

      #include   <stdio.h>

      void fun(int  a[ ], int  n)

      { 

         int i;

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

         {

             if (i % 3 == 0)

                a[i] -= n;

             else

                a[i] += n;

          }

      }

      main( )

      {  int c[5] = {6,7,8,9,10},i;

         fun(c, 5);

         for (i=0;i<5; i++)  printf("%d,", c[i]);

         printf("\n");

      }

       

      程序運行后的輸出結果是

       

       

      A.10,9,8,7,6, 

       

      B. 1,12,13,4,15,

       

      C.1,7,13,9,15,

       

      D. 10,12,8,4,6,

       

      25.有以下程序

      #include   <stdio.h>

      int sub(double  a, double  b)

      {

          return (int)(a - b - 1.3);

      }

      main( )

      {

          printf("%d\n", sub(3.2, 4.1));

      }

       

       

       

      程序運行后的輸出結果是

       

      A. -2 

       

      B. 1.7

       

      C.-3 

       

      D.2.0

       

      26.有以下程序

      #include   <stdio.h>

      main( )

      {

          int  i, *ptr;

          int  array[4] = {1,1,3,4};

          for (ptr=array, i=0; i<3; i++)  printf("%d,", *ptr++);

          printf("\n");

      }

       

      程序運行后的輸出結果是

       

       

      A.2,4,8,

       

       

      B. 1,3,4, 

       

      C. 1,2,4,

       

      D.1,1,3, 

       

      27.有以下程序

       

      #include <stdio.h>

      main( )

      {  int x[ ] = {8,2,6,12,5,15}, f1, f2;

         int *p = x;

         f1 = f2 = x[0];

         for( ; p<=x+5; p++)

         { if( f1<*p ) f1 = *p;

           if( f2>*p ) f2 = *p;

         }

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

      }

       

      程序的運行結果是

       

      A.8,8

       

      B. 15,15 

       

      C.2,15

       

      D. 15,2 

       

      28. 有以下程序

       

      #include <stdio.h>

      main()

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

         int (*p)[4] = x, k = 1, m, n = 0;

         for(m=0; m<2; m++) n += *(*(p+m)+k);

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

      }

       

      程序的運行結果是

       

      A.14 

       

      B.20 

       

      C.10  

       

      D. 16

       

      29.有以下程序

       

      #include <stdio.h>

      main( )

      {  char b[4][10], c;   

         int i,j;

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

         {  j = 0;

            while ((c=getchar())!=' ' && c!='\n')  b[i][j++] = c;

            b[i][j] = '\0';

         }

         printf("%s%s%s%s\n", b[0], b[1], b[2], b[3]);

       

      }

      程序運行時從第一列開始輸入:

      Peach flower is pink.<回車>

       

      則輸出結果是

       

       

      A. Peachflower is pink.

       

      B.Peachfloweris pink.

       

      C.Peachflowerispink.

       

      D.Peach flower is pink.

       

      30.有如下程序

       

      #include <stdio.h>

      void convert(char  ch)

      {

          if (ch < 'X') convert(ch+1);

          printf("%c", ch);

      }

      main( )

      {

          convert('W');   

          printf("\n");

      }

       

      程序運行后的輸出結果是

       

       

      A. YZ

       

      B.VW 

       

      C.XY 

       

      D. XW  

       

      31.有以下程序

      #include   <stdio.h>

      #include   <string.h>

      main( )

      { char  a[20]="ab",b[20]="cdef";

        int  k=0;

        strcat(a,b);

        while(a[k]!='\0') { b[k]=a[k]; k++;}

        puts(b);

      }

       

      程序的運行結果是

       

      A.abcdef

       

      B. cbcdef  

       

      C. cdef 

       

      D.ab

       

      32.以下使指針指向一個字符串的選項錯誤的是

       

      A.char str[ ] = "string", *ps;

           *ps = str;

       

      B.char str[ ] = "string", *ps;

       

           *ps = str;

       

      C. char str[ ] = "string", *ps;

       

           ps = str;

       

      D.char *ps;

       

           ps = "string";

       

      33.有以下程序

      #include <stdio.h>

      typedef struct stu {

                            char  name[10];

                            char  gender;

                            int  score;

                         } STU;

      void f(STU  a, STU  *b)

      {  *b = a;

         printf("%s,%c,%d,", b->name, b->gender, b->score);

      }

      main( )

      {  STU  a={"Zhao", 'm', 290}, b={"Qian", 'f', 350};

         f(a,&b);

         printf("%s,%c,%d\n", b.name, b.gender, b.score);

       

      }

       

      程序運行后的輸出結果是

       

      A.Zhao,m,290,Zhao,m,290

       

      B. Qian,f,350,Zhao,m,290

       

      C. Qian,f,350,Qian,f,350

       

      D.Zhao,m,290,Qian,f,350

       

      34. 若有定義

          typedef  int  *T;

          T  a[20];

       

      則以下與上述定義中a類型完全相同的是

       

      A.int  a[20];

       

      B.int  (*a)[20];

       

      C. int  *a[20]; 

       

      D. int  **a[20];

       

      35.有如下程序

      #include   <stdio.h>

      struct person

      {

          char  name[10];

          int  age;

      };

      main( )

      {

          struct person room[2] = {{"Wang", 19}, {"Li", 20}};

          printf("%s:%d\n", (room+1)->name, room->age);

       

      }

       

      程序運行后的輸出結果是

       

      A.  Li:20

       

      B. Wang:19

       

      C.Li:19 

       

      D.Wang:17

       

      36.以下關于編譯預處理的敘述中錯誤的是

       

      A.預處理命令是在程序正式編譯之前被處理的

       

      B.源程序中凡是以#開始的控制行都是預處理命令行

       

      C. 一行上只能有一條有效的預處理命令

       

      D.預處理命令行必須位于源程序的開始

       

      37.以下關于宏的敘述錯誤的是

       

      A.宏替換不具有計算功能

       

      B.宏替換不具有類型

       

      C.宏名必須用大寫字母構成 

       

      D.宏替換不占用運行時間

       

      38. 有以下程序

      #include   <stdio.h>

      struct S

      {

          int x, y;

      };

      main( )

      {

          struct S  data[3] = {4, 3, 2, 0, 8, 1};

          int i;

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

              printf("%d%d;", data[i].x, data[i].y >> 1);

          printf("\n");

      }

       

      程序運行后的輸出結果是

       

       

      A. 43;20;81;

       

      B.41;22;64;

       

      C.40;21;80;

       

      D. 41;20;80;

       

      39.以下敘述正確的是

       

      A.文件指針是指針類型的變量

       

      B.文件指針變量的值是文件的當前讀取位置

       

      C.文件指針變量的值是文件的當前讀取位置

       

      D. 調用fscanf函數能向所有類型的文件中寫入任意字符

       

      40.有以下程序

       

      #include <stdio.h>

      typedef struct stu {

                         char  name[10];

                         char  gender;

                         int  score;

                         } STU;

      void f(STU a, STU *b)

      {  a = *b;

         printf("%s,%c,%d,", a.name, a.gender, a.score);

      }

      main( )

      {  STU  a = {"Zhao", 'm', 290}, b = {"Qian", 'f', 350};

         f(a,&b);

         printf("%s,%c,%d\n", a.name, a.gender, a.score);

       

      }

       

      程序運行后的輸出結果是

       

       

      A. Qian,f,350,Zhao,m,290     

       

      B.Zhao,m,290,Qian,f,350

       

      C.Qian,f,350,Qian,f,350  

       

      D.Zhao,m,290,Zhao,m,290

       

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

      中文在线字幕第一页_中文字幕高跟丝袜作品番号_亚洲中文无无码第_日本亚洲欧美国产日韩a??y_在线观看亚洲av无码专区