下半年計算機二級c語言基礎試題

時間:2024-07-31 22:50:51 計算機等級 我要投稿
  • 相關推薦

下半年計算機二級c語言基礎試題

  任何設計活動都是在各種約束條件和相互矛盾的需求之間尋求一種平衡,程序設計也不例外。下面是小編收集的關于計算機二級c語言基礎試題,希望大家認真閱讀!

下半年計算機二級c語言基礎試題

  下半年計算機二級c語言基礎試題1

  一、選擇:

  1.給出以下定義:

  char acX[ ]= "abcdefg";

  char acY[ ]= {'a','b','c','d','e','f','g'};

  則正確的敘述為( )

  A) 數組acX和數組acY等價 B) 數組acX和數組acY的長度相同

  C) 數組acX的長度大于數組acY的長度 D) 數組acX的長度小于數組acY的長度

  答案:C

  2.

  void example(char acHello[])

  {

  printf("%d", sizeof(acHello));

  return;

  }

  void main()

  {

  char acHello[] = "hello";

  example(acHello);//數組名稱作參數,傳的是地址,一個地址占四個字節

  return;

  }

  的輸出是

  A 4 B 5 C 6 D不確定

  答案:A

  3. 有以下程序段

  char acArr[]= "ABCDE";

  char *pcPtr;

  for(pcPtr = acArr; pcPtr < acArr + 5; pcPtr++)

  {

  printf("%s/n", pcPtr);

  }

  return;

  輸出結果是( )

  A) ABCD B) A C) E D) ABCDE

  B D BCDE

  C C CDE

  D B DE

  E A E

  答案:D

  4.在中斷中,不能同步獲取信號量,但是可以釋放信號量。

  A.正確 B.錯誤

  答案:A

  5.以下敘述中不正確的是( )

  A) 在不同的函數中可以使用相同名字的變量

  B) 函數中的形式參數是局部變量

  C) 在一個函數內定義的變量只在本函數范圍內有效

  D) 在一個函數內的復合語句中定義的變量在本函數范圍內有效(復合語句指函數中的成對括號構成的代碼)

  答案:D

  6.設有如下定義:

  unsigned long pulArray[] = {6, 7, 8, 9, 10};

  unsigned long *pulPtr;

  則下列程序段的輸出結果為( )

  pulPtr = pulArray;

  *(pulPtr + 2) += 2;

  printf ("%d,%d/n", *pulPtr, *(pulPtr + 2));

  A)8,10 B)6,8 C)7,9 D)6,10

  答案:D

  7. 定義結構體時有下面幾種說法,請指出正確的(多選):______

  A、結構體中的每個部分,最好進行四字節對齊;

  B、結構體的'總長度最好是四字節對齊;

  C、結構中成員的存放不用考慮字節對齊情況;

  答案:A、B

  8.void example()

  {

  int i;

  char acNew[20];

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

  {

  acNew[i] = '0';

  }

  printf("%d/n", strlen(acNew));

  return;

  }

  的輸出為( )

  A 0 B 10 C 11 D不確定

  答案:D

  9.switch(c)中的c的數據類型可以是char、long、float、unsigned、bool. ( )

  A. 正確 B. 錯誤

  答案:B

  10. 網絡上傳輸的字節序默認是大字節的,如果主機是小字節序,在網絡通信時則須進行字節序轉換;如果主機是

  大字節序,為了程序的一致性及可移植性,最好也在程序中加上字節序轉換的操作(空操作)。

  A. 正確 B.錯誤

  答案:A

  二、 填空題

  1、 C語言函數返回類型的默認定義類型是

  2、 函數的實參傳遞到形參有兩種方式: 和

  3、在一個函數內部調用另一個函數的調用方式稱為 。在一個函數內部直接或間接調用該函數成為函數 的調用方式

  4、C語言變量按其作用域分為 和

  5、凡在函數中未指定存儲類別的局部變量,其默認的存儲類別為

  三、 看程序寫結果

  1、#include

  Int abc(int u,int v);

  Void main()

  {int a=24,b=16,c;

  c=abc(a,b);

  printf(“value=%d”,c);

  }

  Int abc(int u, int v)

  {int w;

  While(v)

  {w=u%v;

  u=v;

  v=w;

  }

  Return u;

  }

  2、#include

  int x1=30,x2=40;

  main()

  {int x3=10,x4=20;

  sub(x3,x4);

  sub(x2,x1);

  printf(“%d,%d,%d,%d ”,x3,x4,x1,x2);

  }

  sub(int x,int y)

  {x1=x;x=y;y=x1;}

  3、#include

  Main()

  {int i=5;

  Printf(“%d ”,sub(i));

  }

  sub(int n)

  {int a;

  If(n==1) return 1;

  a=n+sub(n-1);

  return (a);

  }

  4、#include

  Void fun()

  {static int m;

  m+=2;

  printf(“%d ”,m);

  }

  Main()

  {int a;

  For(a=1;a<=4;a++) fun();

  Printf(“ ”);

  }

  四、 編程題

  1、 編寫一個函數,判斷任一整數是否為素數,用main()函數調用并測試之。

  2、 用遞歸方法求n!

  3、 有一個一維數組,內放10個學生成績,寫一個函數,求出平均分,最高分和最低分

  下半年計算機二級c語言基礎試題2

  1.下列敘述中正確的是( )。

  A. 所有數據結構必須有根結點

  B. 所有數據結構必須有終端結點(即葉子結點)

  C. 只有一個根結點,且只有一個葉子結點的數據結構一定是線性結構

  D. 沒有根結點或沒有葉子結點的數據結構一定是非線性結構

  【答案】D

  【解析】D項正確,線性結構的特點是:

  ①集合中必存在“第一個元素"且惟一;

  ②集合中必存在“最后一個元素”且惟一;

  ③除最后一個元素外,其他數據元素均有惟一的“后繼;

  ④除第一個元素外,其他數據元素均有惟一的“前驅”。所以沒有根結點或沒有葉子結點的數據結構一定是非線性結構。AB兩項錯誤,不是所有數據結構都必須有根結點和葉子結點;C項錯誤,數據結構中若有中間結點不滿足只有一個前件或者后件的條件,就不是線性結構。答案選擇D選項。

  2. 以下敘述中錯誤的是( )。

  A. C語言中的每條可執行語句和非執行語句最終都將被轉換成二進制的機器指令

  B. C程序經過編譯、鏈接步驟之后才能形成一個真正可執行的二進制機器指令文件

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

  D. C語言源程序經編譯后生成后綴為.obj的目標程序

  【答案】A

  【解析】A項錯誤,注釋語句不會被翻譯成二進制的機器指令。C源程序經過C編譯程序編譯之后生成后綴為.obj的二進制文件(稱為目標文件),然后由“鏈接程序”(Link)的`軟件把.obj文件與各種庫函數連接起來生成一個后綴為.exe的可執行文件。答案選擇A選項。

  3. C語言主要是借助以下( )功能來實現程序模塊化的。

  A. 定義函數

  B. 定義常量和外部變量

  C. 三種基本結構語句

  D. 豐富的數據類型

  【答案】A

  【解析】C程序的模塊化主要通過函數來實現。C語言允許對函數單獨進行編譯,從而可以實現模塊化。答案選擇A選項。

  4. 有以下程序段:

  char ch;

  int k;

  ch='a';

  k=12;

  print("%c,%d,",h,ch,k);

  printf("k=%d ",k);

  已知字符a的ASCII碼十進制值為97,則執行上述程序段后輸出的結果是( )。

  A. 因變量類型與格式描述符的類型不匹配輸出無定值

  B. 輸出項與格式描述符個數不符,輸出為零值或不定值

  C.a,97,12k=12

  D. a,97,k=12

  【答案】D

  【解析】字符變量的值是該字符的ASCII碼值,可以參與整型變量所允許的任何運算。"ch='a",%c表示以字符格式輸出ch的值,所以輸出為a;%d表示以十進制代碼的形式輸出ch的值,為97;k沒有對應的輸出格式,不輸出。在第二個語句中,首先輸出"k=",然后以十進制代碼輸出k的值,為12。答案選擇D選項。

  5. 下列敘述中正確的是( )。

  A. 棧是“先進先出”的線性表

  B. 隊列是“先進后出"的線性表

  C. 循環隊列是非線性結構

  D. 有序線性表既可以采用順序存儲結構,也可以采用鏈式存儲結構

  【答案】D

  【解析】有序的線性表既可采用順序存儲結構,也可以采用鏈式存儲結構。A項錯誤,棧是“先進后出"的線性表B項錯誤,隊列是“先進先出"的線性表;C項錯誤,循環隊列是線性結構的,有序的線性表既可采用順序存儲結構,也可采用鏈式存儲結構。

  答案選擇D選項。

  6. 某二叉樹的中序序列為DCBAEFG,后序序列為DCBGFEA,則該二叉樹的深度(根結點在第1層)為( )。

  A. 5

  B. 40

  C.3

  D. 2

  【答案】B

  【解析】二叉樹的后序序列為DCBGFEA,則A為根結點。中序序列為DCBAEFG,則DCB為左子樹結點,EFG為右子樹結點。同理B為C父結點,C為D父結點。根據分析,可畫出左子樹,同理E為F父結點,F為G父結點。根據分析,可畫出右子樹,故二叉樹深度為4層。答案選擇B選項。

  7. 設有定義:struct{intn;floatx;}s[2],m[2]={{10,2.8},{0,0.0}};,則以下賦值語句中正確的是( )。

  A. s[0]=m[1];

  B. s=m;

  C.s.n=m.n;

  D. s[2].x=m[2].x;

  【答案】A

  【解析】定義了結構體類型數組s,長度為2,結構體類型數組m,長度為2,并對數組m進行了初始化。同類型的結構體可以直接用變量名實現賦值,A項正確;數組名為數組首地址,地址常量之間不可以相互賦值,B項錯誤;數組名為地址常量不是結構體變量,不能引用成員,C項錯誤;s[2]與m[2]數組越界,D項錯誤。答案選擇A選項。

  8. 關于C語言標識符,以下敘述錯誤的是( )。

  A. 標識符可全部由數字組成

  B. 標識符可全部由下劃線組成

  C. 標識符可全部由小寫字母組成

  D. 標識符可全部由大寫字母組成

  【答案】A

  【解析】C語言標識符只能由字母、數字、下劃線構成,且只能以字母、下劃線開頭,故答案選擇A選項。

  9. 以下程序段中的變量已定義為int類型,則

  sum=pAd=5;

  pAd=sum++,++pAd,pAd++;

  printf("%d ",pAd);

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

  A. 6

  B. 4

  C. 5

  D. 7

  【答案】D

  【解析】自增和自減運算符的兩種用法:前置運算,運算符放在變量之前,規則是先使變量的值增(或減)1,然后以變化后表達式的值參與其他運算;后置運算,運算符放在變量之后,規則是變量先參與其他運算,然后再使變量的值增(或減)1。執行pAd=sum++,sum++是后置自增,執行完后,pAd=5,sum=6。++pAd和pAd++語句中沒有其他運算,即效果相同,pAd分別加1,兩句執行完后,pAd7。答案選擇D選項。

【下半年計算機二級c語言基礎試題】相關文章:

2017年計算機二級C語言基礎考試試題10-05

計算機二級《C語言》模擬試題及答案07-31

計算機二級C語言沖刺試題及答案10-29

2016最新計算機二級C語言試題06-28

計算機二級C語言考試試題及答案10-09

計算機二級C語言預測試題10-25

2024最新計算機二級c語言試題及答案10-25

2017下半年計算機二級考試C語言考試試題06-04

2016下半年計算機C語言二級上級考試試題09-11

全國計算機二級c語言題庫試題及答案10-12

亚洲制服丝袜二区欧美精品,亚洲精品无码视频乱码,日韩av无码一区二区,国产人妖视频一区二区
亚洲精品在线网站 | 亚洲性爱免费视频网 | 最新先锋资源网站在线观看 | 尤物tv国产精品看片在线 | 思思热精品视频免费在线 | 亚洲欧美在线黑人 |