當前位置:才華齋>IT認證>計算機等級>

計算機二級考試C語言歷年真題及答案解析

計算機等級 閱讀(3.01W)

C語言計算機二級考試的科目之一,為了方便考生更好的複習C語言考試。下面是yjbys小編為大家帶來的二級C語言歷年真題及答案解析。歡迎閱讀。

計算機二級考試C語言歷年真題及答案解析

  C語言歷年真題及答案解析

(1)為了避免流程圖在描述程式邏輯時的靈活性,提出了用方框圖來代替傳統的程式流程圖,通常也把這種圖稱為

A)PAD圖B)N-S圖 C)結構圖 D)資料流圖

(2)結構化程式設計主要強調的是

A)程式的規模 B)程式的效率 C)程式設計語言的先進性 D)程式易讀性

(3)為了使模組儘可能獨立,要求

A)模組的內聚程度要儘量高,且各模組間的耦合程度要儘量強

B)模組的內聚程度要儘量高,且各模組間的耦合程度要儘量弱

C)模組的內聚程度要儘量低,且各模組間的耦合程度要儘量弱

D)模組的內聚程度要儘量低,且各模組間的耦合程度要儘量強

(4)需求分析階段的任務是確定

A)軟體開發方法 B)軟體開發工具 C)軟體開發費用 D)軟體系統功能

(5)演算法的有窮性是指

A)演算法程式的執行時間是有限的

B)演算法程式所處理的資料量是有限的

C)演算法程式的長度是有限的

D)演算法只能被有限的使用者使用

(6)對長度為n的線性表排序,在最壞情況下,比較次數不是n(n-1)/2的排序方法是

A)快速排序 B)氣泡排序 C)直接插入排序 D)堆排序

(7)如果進棧序列為e1,e2,e3,e4,則可能的出棧序列是

A)e3,e1,e4,e2 B)e2,e4,e3,e1

C)e3,e4,e1,e2 D) 任意順序

(8)將E-R圖轉換到關係模式時,實體與聯絡都可以表示成

A)屬性 B)關係 C)鍵 D)域

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

R

B C D

a 0 k1

b 1 n1

S

B C D

f 3 h2

a 0 k1

n 2 x1

T

BCD

a0k1

由關係R和S通過運算得到關係T,則所使用的運算為

A)並 B)自然連線 C)笛卡爾積 D)交

(10)下列有關資料庫的描述,正確的是

A)資料處理是將資訊轉化為資料的過程

B)資料的物理獨立性是指當資料的邏輯結構改變時,資料的儲存結構不變

C)關係中的每一列稱為元組,一個元組就是一個欄位

D)如果一個關係中的屬性或屬性組並非該關係的關鍵字,但它是另一個關係的關鍵字,則稱其為本關係的外關鍵字

(11)以下敘述中正確的是

A)用C程式實現的演算法必須要有輸入和輸出操作

B)用C程式實現的演算法可以沒有輸出但必須要有輸入

C)用C程式實現的演算法可以沒有輸入但必須要有輸出

D)用C程式實現的演算法可以既沒有輸入也沒有輸出

(12)下列可用於C語言使用者識別符號的一組是

A)void, define, WORD B)a3_3,_123,Car C)For, -abc, IF Case D)2a, DO, sizeof

(13)以下選項中可作為C語言合法常量的是

A)-80 B)-080 C)-8e1.0 D)-80.0e

(14)若有語句:char *line[5];,以下敘述中正確的是

A) 定義line是一個數組,每個陣列元素是一個基型別為char為指標變數

B) 定義line是一個指標變數,該變數可以指向一個長度為5的字元型陣列

C) 定義line是一個指標陣列,語句中的*號稱為間址運算子

D) 定義line是一個指向字元型函式的指標

(15)以下定義語句中正確的是

A)int a=b=0; B)char A=65+1,b=′b′; C)float a=1,*b=&a,*c=&b; D)double a=0?0;b=1.1;

(16)有以下程式段

char ch; int k;

ch=′a′;

k=12;

printf("%c,%d,",ch,ch,k); printf("k=%d n",k);

已知字元a的ASCII碼值為97,則執行上述程式段後輸出結果是

A)因變數型別與格式描述符的型別不匹配輸出無定值

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

C)a,97,12k=12

D)a,97,k=12

(17)有以下程式

main()

{ int i,s=1;

for (i=1;i<50;i++)

if(!(i%5)&&!(i%3)) s+=i;

printf("%dn",s);}

程式的輸出結果是

A)409 B)277 C)1 D)91

(18)當變數c的值不為2、4、6時,值也為"真"的表示式是

A)(c==2)||(c==4)||(c==6)

B)(c>=2&& c<=6)||(c!=3)||(c!=5)

C)(c>=2&&c<=6)&&!(c%2)

D)(c>=2&& c<=6)&&(c%2!=1)

(19)若變數已正確定義,有以下程式段

int a=3,b=5,c=7;

if(a>b)a=b; c=a;

if(c!=a)c=b;

printf("%d,%d,%dn",a,b,c);

其輸出結果是

A)程式段有語法錯 B)3,5,3 C)3,5,5 D)3,5,7

(20)有以下程式

#include

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=%dn",a,b);

}

程式的執行結果是

A)a=1,b=0 B)a=2,b=2 C)a=1,b=1 D)a=2,b=1