當前位置:文思屋>社會工作>求職指導>

中興軟體測試筆試題

文思屋 人氣:2.84W

一、公共部分(50 分)

中興軟體測試筆試題

1:作業排程程式從處於( )狀態的佇列中選擇適當的作業的作業投入執行。(3 分)

A 執行 B 提交 C 完成 D 後備

2:SQL 語言中,刪除一個表的命令是( )(3 分)

A CLEAR TABLE B DROP TABLE

C DELETE TABLE D REMOVE TABLE

3:ATM 採用的線路複用方式為( )(3 分)

A 頻分多路複用

B 同步時分多路複用

C 非同步時分多路複用

D 獨佔通道

4:資料庫中只存放檢視的( )(3 分)

A 操作

B 對應的資料

C 定義

D 限制

5:什麼是虛擬裝置?為什麼在作業系統中引入虛擬裝置?(10 分)

6:TCP 為何採用三次握手來建立連線,若採用二次握手可以嗎,請說明原因?(16 分)

7:什麼是分散式資料庫?(12 分)

C++部分(50 分)

1:設有“int w[3][4];”,pw 是與陣列名w 等價的陣列指標,則pw 的初始化語句

________________(3 分)

2:要使引用pr 代表變數“char *p”,則pr 的初始化語句為__________________(3 分)

3:“零值”可以是0,0.0,FALSE 或者“空指標”。例如int 變數n 與“零值”比較的if 語句為:

if(n==0),則BOLL flag 與“零值”比較的if 語句為______________;float x 與“零值”比較的if

語句為:______________。(6 分)

4:設有如下語句:(3 分)

int x;

()

*px=0;

則選擇以下哪條語句可將x 值置為0。

A int *px; B int const *px=&x;

C int const px=&x; D const int *px=&x;

5:設viod f1(int *m,long&n);int a;long b;則以下呼叫合法的是( )(3 分)

A f1(a,b) B f1(&a,b)

C f1(a,&b) D f1(&a,&b)

6:請寫出如下程式碼的執行結果(6 分)

int main()

{

int a,b,c,d;

a=0;

b=1;

c=2;

d=3;

printf(“%d”,a+++b+c+++d++);

}

7:寫出下面函式的功能(12 分)

Template

Void WE(Type a[],Type b[],int n)

{

for(int i=0;i

b[n-i-1]=a;

}

8 寫一段程式碼判斷一個單向連結串列中是否有環。(14 分)

給出如下結構

Struct node

{steuct *next;

};

Typedef stuct node Node;

JAVA 部分(50 分)

1:判斷下列對的是哪個( )(3 分)

A short s1=1;s1=s1+1

B short s1=1;s1+=1

C short s1=1;s1=s1-1

D short s1=1;s1=s1*1

2:main 方法是Java Application 程式執行的入口點,關於main 方法的方法頭以下哪項是合法的

( )(3 分)

A public static void main ()

B public static void main (String args)

C public static int main (String []arg)

D public void main (String args)

3:設float x=1,y=2,z=3,則表示式y+=z--/++x 的值是( )(3 分)

A 3.5 B 3

C 4 D 5

4:d(11.5)=_______

d(-11.5)=_______(4 分)

5:假設x=10,y=20,z=30;計算下列表達式的值(6 分)

A x<10||x>10__________

B !(x

C z-y==x&&(y-z)!=x_____________

6:方法重建Overload 和方法的重寫Overriding 的區別。Overload 的方法是否可以改變返回值

的型別?(10 分)

7:談談HashMap 和Hashtable 的區別(6 分)

8:構造一個類來描述螢幕上的一個點,該類的構成包括點x 和y 兩個座標,以及一些對點進行

的操作,包括:取得點的座標值,對點的座標進行賦值,編寫應用程式生成該類的物件並對其進行

操作。(15 分)

資料結構

(其實這些大公司的筆試不難,也不就是如此,只要學一下資料結構就可以搞定!)

排序及查詢方法

#include

#include

#define N 11

int search(int array[],int n,int k)

{

int i;

i=n-1;

array[0]=k;

while(array!=k) i--;

return(i);

}

int halfsearch(int array[],int n,int k)

{int i,j,mid;

i=1;j=n;

while(i<=j)

{mid=(i+j)/2;

if(k==array[mid]) return(mid);

else if(k

else i=mid+1;

}

return(0);

}

void mpsort(int array[])

{int i,j,a;

a=0;

for(i=1;i

for(j=i+1;j

if(array>array[j])

{a=array;

array=array[j];

array[j]=a;}

}

void sort(int array[])

{int i,j;

for(i=2;i

{array[0]=array;

j=i-1;

while(array[0]

{array[j+1]=array[j--];

array[j+1]=array[0];

}

}

}

void creat(int array[])

{int i;

printf("enter the array:n");

for(i=1;i

scanf("%d",&array);

}

void print(int array[])

{int i;

printf("The numbers after sort is:n");

for(i=1;i

printf("%d ",array);

printf("n");

}

main()

{int a[11],i,x,chang;

aga:

printf("nchang:1: use watching method findingn 2:use half method findingn 3: use

directness intsert method sortn 4:use bubble up method sortn 5:exitn");

scanf("%d",&chang);

switch (chang)

{case 1:

{creat(a);

printf("Please int the search number:n");

scanf("%d",&x);

printf("The number station is:%dn",search(a,N,x));

goto aga;

}

case 2:

{ creat(a);

sort(a);

print(a);

printf("Please int the search number:n");

scanf("%d",&x);

printf("The number station is:%dn",halfsearch(a,N,x));

goto aga;

}

case 3:

{creat(a);

sort(a);

print(a);

goto aga;

}

case 4:

{creat(a);

mpsort(a);

print(a);

goto aga;

}

case 5:{ printf("exit!n");break;}

default:{printf("Error!n"); goto aga;}

}

}

二、線性連結串列的.儲存實現

struct LNODE{

ElemType data;

struct LNODE *next;

};

typedef struct LNODE LNode;

typedef struct LNODE * LinkList;

1 初始化操作

Status Init_L(LinkList L){

if (L=(LinkList *)malloc(sizeof(LNode)))

{L->next=NULL;return 1;}

else return 0;

}

2 插入操作

Status ListInsert_L(LinkList &L,int i,ElemType e){

p=L,j=0;

while(p&&jnext;++j;}

if(!p||j>i-1) return ERROR;

s=(LinkList)malloc(sizeof(LNode));

s->data=e;s->next=p->next;

p->next=s;

return OK;

}//ListInsert_L

3 刪除操作

Status ListDelete_L(LinkList &L,int i,ElemType &e){

p=L,j=0;

while(p&&jnext;++j;}

if(!p->next||j>i-1) return ERROR;

q=p->next;p->next=q->next;

e=q->data;free(q);

return OK;

}//ListDelete_L

4 取某序號元素的操作

Status GetElem_L(LinkList &L,int i,ElemType &e){

p=L->next,j=1;

while(p&&jnext;++j;}

if(!p||j>i) return ERROR;

e=p->data;

return OK;

}//GetElem_L

5 歸併兩個單鏈表的演算法

void MergeList_L(LinkList &La,LinkList &Lb,LinkList &Lc){

//已知單鏈線性表La 和Lb 的元素按值非遞減排列

//歸併後得到新的單鏈線性表Lc,元素也按值非遞減排列

pa=La->next;pb=Lb->next;

Lc=pc=La;

while(pa&&pb){

if(pa->data<=pb->data){

pc->next=pa;pc=pa;pa=pa->next;

}else{pc->next=pb;pc=pb;pb=pb->next;}

}

pc->next=pa?pa:pb;

free(Lb);

}//MergeList_L

頭指標與頭結點的區別:

頭指標只相當於結點的指標域,頭結點即整個線性連結串列的第一個結點,它的資料域可以放資料元素,

也可以放線性表的長度等附加資訊,也可以不儲存任何資訊。