當前位置:才華齋>計算機>計算機二級>

2011下半年全國計算機二級C語言考試真題

計算機二級 閱讀(1.99W)

  一、選擇題((1)-(10)、(21)-(40)每題2分,(11)-(20)每題1分,共70分)下列各題A)、B)、C)、D)四個選項中,只有一個選項是正確的。請將正確選項填塗在答題卡相應位置上答在試卷上不得分。

2011下半年全國計算機二級C語言考試真題

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

A)演算法就是程式

B)設計演算法時只需要考慮資料結構的設計

C)設計演算法時只需要考慮結果的可靠性

D)以上三種說法都不對

(2)下列關於線性連結串列的敘述中,正確的是( )。

A)各資料結點的儲存空間可以不連續,但它們的儲存順序與邏輯順序必須一致

B)各資料結點的儲存順序與邏輯順序可以不一致,但它們的儲存空間必須連續

C)進行插入與刪除時,不需要移動表中的元素

D)以上三種說法都不對

(3)下列關於二叉樹的敘述中,正確的是( )。

A)葉子結點總是比度為2的結點少一個

B)葉子結點總是比度為2的結點多一個

c)葉子結點數是度為2的結點數的兩倍

D)度為2的結點數是度為1的結點數的兩倍

(4)軟體按功能可以分為應用軟體、系統軟體和支撐軟體(或工具軟體)。下面屬於應用軟體的是( )。

A)學生成績管理系統

B)C語言編譯程式

C)UNIX作業系統

D)資料庫管理系統

(5)某系統總體結構圖如下圖所示:

該系統總體結構圖的深度是( )。

A)7

B)6

C)3

D)2

(6)程式除錯的任務是( )。

A)設計測試用例

B)驗證程式的正確性

C)發現程式中的錯誤

D)診斷和改正程式中的錯誤

(7)下列關於資料庫設計的敘述中,正確的是( )。

A)在需求分析階段建立資料字典

B)在概念設計階段建立資料字典

C)在邏輯設計階段建立資料字典

D)在物理設計階段建立資料字

(8)資料庫系統的三級模式不包括( )。

A)概念模式

B)內模式

C)外模式

D)資料模式

(9)有三個關係R、S利T如下:

則由關係R和s得到關係T的操作是( )。

A)自然連線

B)差

C)交

D)並

(10)下列選項中屬於面向物件設計方法主要特徵的是( )。

A)繼承

B)自頂向下

C)模組化

D)逐步求精

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

A)C語言編寫的函式源程式,其檔名字尾可以是.C

B)C語言編寫的函式都可以作為一個獨立的源程式檔案

C)C語言編寫的每個函式都可以進行獨立的編譯並執行

D)一個C語言程式只能有一個主函式

(12)以下選項中關於程式模組化的敘述錯誤的是( )。

A)把程式分成若干相對獨立的模組,可便於編碼和除錯

B)把程式分成若干相對獨立、功能單一的模組,可便於重複使用這些模組

c)可採用自底向上、逐步細化的`設計方法把若干獨立模組組裝成所要求的程式

D)可採用自項向下、逐步細化的設計方法把若干獨立模組組裝成所要求的程式

(13)以下選項中關於c語言常量的敘述錯誤的是( )。

A)所謂常量,是指在程式執行過程中,其值不能被改變的量

B)常量分為整型常量、實型常量、字元常量和字串常量

c)常量可分為數值型常量和非數值型常量

D)經常被使用的變數可以定義成常量

(14)若有定義語句:int a=10;double b=3.14;,則表示式'A'+a+b值的型別是( )。

A)char

B)int

C)double

D)float

(15)若有定義語句:int x=12,3=8,z;,在其後執行語句z=0.9+x/y;,則Z的值為( )。

A)1.9

B)1

C)2

D)2.4

(16)若有定義:int a,b;,通過語句scanf("%d;%d",&a,&b);,能把整數3賦給變數a,5賦給變數b的輸入資料是( )。

A)3 5

B)3,5

C)3;5

D)35

(17)若有定義語句:intk1=10,k2=20;,執行表示式(k1=k1>k2)&&(k2=k2>k1)後,k1和k2的值分別為( )。

A)0和1

B)0和20

C)10和1

D)10和20

(18)有以下程式

#include

main()

{int a=1,b=0;

if(-a) b++;

else if(a=0)b+=2:

else b+=3:

printf("%dn",b);

)

程式執行後的輸出結果是( )。

A)0

B)1

C)2

D)3

(19)下列條件語句中,輸出結果與其他語句不同的是( )。

A)if(a)printf("%d-n",x); else printf("%dn",y);

B)if(a—0)printf("%dn",y); else printf("%dn",x);

C)if(a!=0)p由tf("%dn",x); else printf("%dn",y);

D)if(a=0)printf("%dn",x); else printf("%dn",y);

(20)有以下程式

#include

main()

{int a=7;

while(a--);

printf("%dn",a);

)

程式執行後的輸出結果是( )。

A)-1

B)0

C)1

D)7

(21)以下不能輸出字元A的語句是(注:字元A的ASCIl碼值為65,字元a的ASCIl碼值為97)

A)printf("%cn",'a'-32);

B)printf("%dn",'A');

c)printf("%cn",65);

D)print-f("%cn",'B'-1);

(22)有以下程式(注:字元a的ASCIl碼值為97)

#include

main()

{char*s={"abe");

do

{printf(”%d”,+s%10);++s;)

while(+s);

)

程式執行後的輸出結果是( )。

A)abc

B)789

C)7890

D)979899

(23)若有定義語句:double a,+p=&a;以下敘述中錯誤的是( )。

A)定義語句中的*號是一個間址運算子

B)定義語句中的*號只是一個說明符

C)定義語句中的P只能存放double型別變數的地址

D)定義語句中,*p=&a把變數a的地址作為初值賦給指標變數P

(24)有以下程式

#include

double f(double x);

main()

{doublea_0;inti;

for(i=0;i<30;i+=10)a+--f((double)i);

printf("%5.0fn",a);

}

double f(double x)

(return X+x+1;)

程式執行後的輸出結果是( )。

A)503

B)401

C)500

D)1404