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

最新全國計算機考試二級試題及答案

計算機二級 閱讀(4.06K)
  在離2016年上半年計算機等級考試越來越近,本站小編在此為大家整理了二級計算機考試題及答案,希望能幫助大家提高二級成績!

  一、選擇題(每題2分,共計70分)

最新全國計算機考試二級試題及答案

1.棧和佇列的共同特點是

A)都是先進先出

B)都是先進後出

C)只允許在端點處插入和刪除元素

D)沒有共同點

2.已知二叉樹後序遍歷序列是dabec,中序遍歷序列是debac,它的前序遍歷序列是

A)acbed

B)decab

C)deabc

D)cedba

3.連結串列不具有的特點是

A)不必事先估計儲存空間

B)可隨機訪問任一元素

C)插入刪除不需要移動元素

D)所需空間與線性表長度成正比

4.結構化程式設計的3種結構是

A)順序結構、選擇結構、轉移結構

B)分支結構、等價結構、迴圈結構

C)多分支結構、賦值結構、等價結構

D)順序結構、選擇結構、迴圈結構

5.為了提高測試的效率,應該

A)隨機選取測試資料

B)取一切可能的輸入資料作為測試資料

C)在完成編碼以後制定軟體的測試計劃

D)集中對付那些錯誤群集的程式

6.演算法的時間複雜度是指

A)執行演算法程式所需要的時間

B)演算法程式的長度

C)演算法執行過程中所需要的基本運算次數

D)演算法程式中的指令條數

7.軟體生命週期中所花費用最多的階段是

A)詳細設計

B)軟體編碼

C)軟體測試

D)軟體維護

8.資料庫管理系統DBMS中用來定義模式、內模式和外模式的語言為

A)C

B)Basic

C)DDL

D)DML

9.下列有關資料庫的描述,正確的是

A)資料庫是一個DBF檔案

B)資料庫是一個關係

C)資料庫是一個結構化的資料集合

D)資料庫是一組檔案

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

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

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

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

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

11.以下敘述中正確的是

A)C語言比其他語言高階

B)C語言可以不用編譯就能被計算機識別執行

C)C語言以接近英語國家的自然語言和數學語言作為語言的表達形式

D)C語言出現的最晚,具有其他語言的一切優點

12.C語言中用於結構化程式設計的3種基本結構是

A)順序結構、選擇結構、迴圈結構

B)if,switch,break

C)for,while,do-while

D)if,for,continue

13.C語言中最簡單的資料型別包括

A)整型、實型、邏輯型

B)整型、實型、字元型

C)整型、字元型、邏輯型

D)字元型、實型、邏輯型

14.若變數已正確定義並賦值,以下符合C語言語法的表示式是

A)a:=b+1

B)a=b=c+2

C)int 18.5%3

D)a=a+7=c+b

15.下列可用於C語言使用者識別符號的一組是

A)voiddefineWORD

B)a3_b3_123Car

C)For-abcIFCase

D)2aDOsizeof

16.若變數a,i已正確定義,且i已正確賦值,合法的語句是

A)a==1

B)++i;

C)a=a++=5;

D)a=int(i);

17.已知

int t=0;

while (t=1)

{...}

則以下敘述正確的是

A)迴圈控制表示式的值為0

B)迴圈控制表示式的值為1

C)迴圈控制表示式不合法

D)以上說法都不對

18.有如下程式

main()

{

int x=1,a=0,b=0;

switch(x)

{

case 0: b++;

case 1: a++;

case 2: a++;b++;

}

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

}

該程式的輸出結果是

A)a=2,b=1

B)a=1,b=1

C)a=1,b=0

D)a=2,b=2

19.有以下程式

main()

{ int i=1,j=1,k=2;

if((j++||k++)&& i++)

printf("%d,%d,%dn",i,j,k);

}

執行後輸出結果是

A)1,1,2

B)2,2,1

C)2,2,2

D)2,2,3

20.有如下程式

main()

{ int n=9;

while(n>6){n--; printf("%d",n);}

}

該程式的輸出結果是

A)987

B)876

C)8765

D)9876

21.在下列選項中,沒有構成死迴圈的是

A)int i=100;

while(1)

{ i=i0+1;

if(i>100)break;

}

B)for(;;);

C)int k=10000;

do{ k++; }while(k>10000);

D)int s=36;

while(s)--s;

22.若已定義的函式有返回值,則以下關於該函式呼叫的敘述中錯誤的是

A)函式呼叫可以作為獨立的語句存在

B)函式呼叫可以作為一個函式的實參

C)函式呼叫可以出現在表示式中

D)函式呼叫可以作為一個函式的形參

23.有以下程式

float fun(int x,int y)

{ return(x+y);}

main()

{ int a=2,b=5,c=8;

printf("%3.0fn",fun((int)fun(a+c,b),a-c));

}

程式執行後的輸出結果是

A)編譯出錯

B)9

C)21

D)9.0

24.若有以下呼叫語句,則不正確的fun函式的首部是

main()

{ …

int a[50],n;

fun(n, &a[9]);

}

A)void fun(int m, int x[])

B)void fun(int s, int h[41])

C)void fun(int p, int *s)

D)void fun(int n, int a)

25.設有以下說明語句

struct stu

{ int a;

float b;

} stutype;

則下面的敘述不正確的是

A)struct是結構體型別的關鍵字

B)struct stu是使用者定義的結構體型別

C)stutype是使用者定義的結構體型別名

D)a和b都是結構體成員名

26.若執行時給變數x輸入12,則以下程式的執行結果是

main()

{ int x,y;

scanf("%d",&x);

y=x>12?x+10:x-12;

printf("%dn",y);

}

A)0

B)22

C)12

D)10

27.以下說法正確的是

A)C語言程式總是從第一個的函式開始執行

B)在C語言程式中,要呼叫函式必須在main()函式中定義

C)C語言程式總是從main()函式開始執行

D)C語言程式中的main()函式必須放在程式的開始部分

28.有以下程式

#define F(X,Y)(X)*(Y)

main()

{ int a=3, b=4;

printf("%dn", F(a++, b++));

}

程式執行後的輸出結果是

A)12

B)15

C)16

D)20

29.下列程式執行後的輸出結果是

void func(int *a,int b[])

{ b[0]=*a+6; }

main()

{ int a,b[5]={0};

a=0; b[0]=3;

func(&a,b); printf("%dn",b[0]);

}

A)6

B)7

C)8

D)9

30.若有下面的程式段

char s[]="china";char *p; p=s;

則下列敘述正確的是

A)s和p完全相同

B)陣列s中的內容和指標變數p中的內容相等

C)s陣列長度和p所指向的`字串長度相等

D)*p與s[0]相等 26.若執行時給變數x輸入12,則以下程式的執行結果是

main()

{ int x,y;

scanf("%d",&x);

y=x>12?x+10:x-12;

printf("%dn",y);

}

A)0

B)22

C)12

D)10

27.以下說法正確的是

A)C語言程式總是從第一個的函式開始執行

B)在C語言程式中,要呼叫函式必須在main()函式中定義

C)C語言程式總是從main()函式開始執行

D)C語言程式中的main()函式必須放在程式的開始部分

28.有以下程式

#define F(X,Y)(X)*(Y)

main()

{ int a=3, b=4;

printf("%dn", F(a++, b++));

}

程式執行後的輸出結果是

A)12

B)15

C)16

D)20

29.下列程式執行後的輸出結果是

void func(int *a,int b[])

{ b[0]=*a+6; }

main()

{ int a,b[5]={0};

a=0; b[0]=3;

func(&a,b); printf("%dn",b[0]);

}

A)6

B)7

C)8

D)9

30.若有下面的程式段

char s[]="china";char *p; p=s;

則下列敘述正確的是

A)s和p完全相同

B)陣列s中的內容和指標變數p中的內容相等

C)s陣列長度和p所指向的字串長度相等

D)*p與s[0]相等

31.以下程式中函式sort的功能是對a陣列中的資料進行由大到小的排序

void sort(int a[],int n)

{ int i,j,t;

for(i=0;ifor(j=i+1;jif(a[i]}

main()

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

sort(&aa[3],5);

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

printf("n");

}

程式執行後的輸出結果是

A)1,2,3,4,5,6,7,8,9,10,

B)10,9,8,7,6,5,4,3,2,1,

C)1,2,3,8,7,6,5,4,9,10,

D)1,2,10,9,8,7,6,5,4,3,

32.以下程式的執行結果是

#include "stdio.h"

main()

{ struct date

{ int year,month,day;}today;

printf("%dn",sizeof(struct date));

}

A)6

B)8

C)10

D)12

33.若執行下述程式時,若從鍵盤輸入6和8時,結果為

main()

{ int a,b,s;

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

s=a;

if(as=b;

s*=s;

printf("%d",s);

}

A)36

B)64

C)48

D)以上都不對

34.下列關於C語言資料檔案的敘述中正確的是

A)檔案由ASCII碼字元序列組成,C語言只能讀寫文字檔案

B)檔案由二進位制資料序列組成,C語言只能讀寫二進位制檔案

C)檔案由記錄序列組成,可按資料的存放形式分為二進位制檔案和文字檔案

D)檔案由資料流形式組成,可按資料的存放形式分為二進位制檔案和文字檔案

35.有以下程式

void ss(char *s,char t)

{ while(*s)

{ if(*s==t)*s=t-′a′+′A′;

s++;

}

}

main()

{ char str1[100]="abcddfefdbd",c=′d′;

ss(str1,c); printf("%sn",str1);

}

程式執行後的輸出結果是

A)ABCDDEFEDBD

B)abcDDfefDbD

C)abcAAfefAbA

D)Abcddfefdbd

  二、填空題(每空2分,共計30分)

1.演算法的基本特徵是可行性、確定性、 【1】 和擁有足夠的情報。

2.在長度為n的有序線性表中進行二分查詢。最壞的情況下,需要的比較次數為 【2】 。

3.在面向物件的程式設計中,類描述的是具有相似性質的一組 【3】 。

4.通常,將軟體產品從提出、實現、使用維護到停止使用退役的過程稱為 【4】 。

5.資料庫管理系統常見的資料模型有層次模型、網狀模型和 【5】 3種。

6.下列程式的輸出結果是 【6】 。

maim ()

{ char b[]="Hello you";

b[5]=0;

printf ("%sn",b);

}

7.以下程式的輸出結果是 【7】 。

main()

{ int a=0;

a+=(a=8);

printf("%dn",a);

}

8.函式 void fun(float *sn, int n)的功能是根據以下公式計算S,計算結果通過形參指標sn傳回;n通過形參傳入,n的值大於等於0。請填空。

void fun( float *sn, int n)

{ float s=0.0, w, f=-1.0;

int i=0;

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

{ f= 【8】 * f;

w=f/(2*i+1);

s+=w;

}

【9】=s;

}

9.函式fun的功能是根據以下公式求p的值,結果由函式值返回。m與n為兩個正數且要求m>n。

例如:m=12,n=8時,執行結果應該是495.000000。請在題目的空白處填寫適當的程式語句,將該程式補充完整。

#include

#include

float fun (int m, int n)

{ int i;

double p=1.0;

for(i=1;i<=m;i++) 【10】 ;

for(i=1;i<=n;i++) 【11】 ;

for(i=1;i<=m-n;i++)p=p/i;

return p;

}

main ()

{ clrscr();

printf ("p=%fn",fun (12,8));

}

10.該程式執行的結果是 【12】 。

#include

#include

#define M 100

void fun(int m, int *a, int *n)

{ int i,j=0;

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

if(i%7==0||i==0)

a[j++]=i;

*n=j;

}

main()

{ int aa[M],n,k;

clrscr();

fun(10,aa,&n);

for(k=0;k if((k+1) ==0)printf("n");

else printf("M",aa[k]);

printf("n");

}

11.下列程式的功能是求出ss所指字串中指定字元的個數,並返回此值。

例如,若輸入字串123412132,輸入字元1,則輸出3,請填空。

#include

#include

#define M 81

int fun(char *ss, char c)

{ int i=0;

for(; 【13】 ;ss++)

if(*ss==c)i++;

return i;

}

main()

{ char a[M], ch;

clrscr();

printf("nPlease enter a string: "); gets(a);

printf("nPlease enter a char: "); ch=getchar();

printf("nThe number of the char is: %dn", fun(a,ch));

}

12.下面程式把從終端讀入的文字(用@作為文字結束標誌)輸出到一個名為的新檔案中,請填空。

#include "stdio.h"

FILE *fp;

{ char ch;

if((fp=fopen( 【14】 ))==NULL)exit(0);

while((ch=getchar( ))!=′@′)fputc (ch,fp);

fclose(fp);

}

13.設有如下巨集定義

#define MYSWAP(z,x,y)

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

以下程式段通過巨集呼叫實現變數a,b內容交換,請填空。

float a=5,b=16,c;

MYSWAP( 【15】 ,a,b);

  答案:

選 擇 題

1 -10 C D B D D C D C C D

11-20 C A B B B B B A C B

21 -30 D D B D C A C A A D

31-40 C A B D B

填 空 題

1-5 正確答案 有窮性 log2n 物件 軟體生命週期 關係模型

6-10 Hello 16 -1 *sn p=p*i p=p/i 7

11-15 *ss!='