- 中興公司軟件工程筆試真題含答案 推薦度:
- 相關(guān)推薦
中興公司筆試真題(含答案)
在日復(fù)一日的學(xué)習(xí)、工作生活中,我們很多時候都不得不用到試題,借助試題可以對一個人進(jìn)行全方位的考核。什么類型的試題才能有效幫助到我們呢?下面是小編為大家整理的中興公司筆試真題(含答案),希望能夠幫助到大家。
中興公司筆試真題(含答案) 1
公共部分
1:作業(yè)調(diào)度程序從處于(B)狀態(tài)的隊列中選擇適當(dāng)?shù)淖鳂I(yè)的作業(yè)投入運行。(3分)
A 運行 B 提交 C 完成 D后備
2:SQL語言中,刪除一個表的命令是(B)(3分)
A CLEAR TABLE B DROP TABLE
C DELETE TABLE D REMOVE TABLE
3:ATM采用的線路復(fù)用方式為(C)(3分)
A 頻分多路復(fù)用
B 同步時分多路復(fù)用
C 異步時分多路復(fù)用
D 獨占信道
4:數(shù)據(jù)庫中只存放視圖的(C)(3分)
A操作
B 對應(yīng)的數(shù)據(jù)
C 定義
D 限制
5:什么是虛擬設(shè)備?為什么在操作系統(tǒng)中引入虛擬設(shè)備?(10分)
SPOOLing是Simultaneous Peripheral Operation On-Line (即外部設(shè)備聯(lián)機并行操作)的縮寫,它是關(guān)于慢速字符設(shè)備如何與計算機主機交換信息的一種技術(shù),通常稱為“假脫機技術(shù)”。
6:TCP為何采用三次握手來建立連接,若采用二次握手可以嗎,請說明原因?(16分)
三次握手是為了防止已失效的連接請求再次傳送到服務(wù)器端。
二次握手不可行,因為:如果由于網(wǎng)絡(luò)不穩(wěn)定,雖然客戶端以前發(fā)送的連接請求以到達(dá)服務(wù)方,但服務(wù)方的同意連接的應(yīng)答未能到達(dá)客戶端。則客戶方要重新發(fā)送連接請求,若采用二次握手,服務(wù)方收到重傳的請求連接后,會以為是新的請求,就會發(fā)送同意連接報文,并新開進(jìn)程提供服務(wù),這樣會造成服務(wù)方資源的無謂浪費。
7:什么是分布式數(shù)據(jù)庫?(12分)
分布式數(shù)據(jù)庫系統(tǒng)是在集中式數(shù)據(jù)庫系統(tǒng)成熟技術(shù)的基礎(chǔ)上發(fā)展起來的,但不是簡單地把集中式數(shù)據(jù)庫分散地實現(xiàn),它具有自己的性質(zhì)和特征。集中式數(shù)據(jù)庫系統(tǒng)的許多概念和技術(shù),如數(shù)據(jù)獨立性、數(shù)據(jù)共享和減少冗余度、并發(fā)控制、完整性、安全性和恢復(fù)等在分布式數(shù)據(jù)庫系統(tǒng)中都有了不同的、更加豐富的內(nèi)容。
(1)數(shù)據(jù)獨立性。數(shù)據(jù)獨立性是數(shù)據(jù)庫方法追求的主要目標(biāo)之一。在集中式數(shù)據(jù)庫中,數(shù)據(jù)獨立性包括兩方面:數(shù)據(jù)的邏輯獨立性和物理獨立性。其意義在于程序和數(shù)據(jù)的邏輯結(jié)構(gòu)和數(shù)據(jù)的存儲結(jié)構(gòu)無關(guān)。在分布式系統(tǒng)中,數(shù)據(jù)庫獨立性除了上面所說之外,還有數(shù)據(jù)分布獨立性亦稱分布透明性,即用戶不必關(guān)心數(shù)據(jù)的邏輯分片,不必關(guān)心數(shù)據(jù)的物理位置分布的細(xì)節(jié),也不必關(guān)心重復(fù)副本(冗余數(shù)據(jù))的一致性問題。有了分布透明性,用戶的應(yīng)用程序書寫起來就如同數(shù)據(jù)沒有分布一樣。在集中式數(shù)據(jù)庫中,數(shù)據(jù)的獨立性是通過系統(tǒng)的三級模式和它們之間的二級映象得到的。分布式數(shù)據(jù)庫,分布透明性是由于引入新的模式和模式之間的'映象得到的。
(2)集中與自治相結(jié)合的控制結(jié)構(gòu)。數(shù)據(jù)庫是供用戶共享的,在集中式數(shù)據(jù)庫中,為保證數(shù)據(jù)的安全性和完整性,對數(shù)據(jù)庫的控制是集中的。由數(shù)據(jù)庫管理員(DBA)負(fù)責(zé)監(jiān)督和維護(hù)系統(tǒng)的正常運行。
在分布式數(shù)據(jù)庫中,數(shù)據(jù)的共享有兩個層次:一是局部共享,即在局部場地上存儲局部用戶的共享數(shù)據(jù)。二是全局共享,即在分布式數(shù)據(jù)庫的各個場地也存儲可供網(wǎng)絡(luò)中其他場地的用戶共享的數(shù)據(jù),支持全局引用。因此,相應(yīng)的控制結(jié)構(gòu)也具有兩個層次:集中和自治。各局部的DBMS可以獨立地管理局部數(shù)據(jù)庫,具有自治的功能。同時,系統(tǒng)又設(shè)有集中控制機制,協(xié)調(diào)各局部DBMS的工作,執(zhí)行全局應(yīng)用。
(3)適當(dāng)增加數(shù)據(jù)冗余度。在集中式數(shù)據(jù)庫中,盡量減少冗余度是系統(tǒng)目標(biāo)之一。其原因是,冗余數(shù)據(jù)浪費存儲空間,而且容易造成個副本之間的不一致性。減少冗余度的目標(biāo)是用數(shù)據(jù)共享來達(dá)到的。而在分布式系統(tǒng)中卻希望增加冗余數(shù)據(jù),在不同的場地存儲同一數(shù)據(jù)的多個副本。其原因是提高系統(tǒng)的可靠性和性能,當(dāng)某一場地出現(xiàn)故障,系統(tǒng)可以對另一場地上的相同副本進(jìn)行操作,不會造成系統(tǒng)的癱瘓。系統(tǒng)可以根據(jù)距離選擇離用戶最近的數(shù)據(jù)副本進(jìn)行操作,減少通信代價。但是增加冗余會碰到集中式數(shù)據(jù)庫同樣的問題,即不利于更新,增加了系統(tǒng)維護(hù)代價,需要在這些方面作出權(quán)衡。
(4)全局的一致性、可串行性和可恢復(fù)性。分布式數(shù)據(jù)庫中各局部數(shù)據(jù)庫應(yīng)滿足集中式數(shù)據(jù)庫的一致性、可串行性和可恢復(fù)性。除此以外,還要保證數(shù)據(jù)庫的全局一致性、可串行性和可恢復(fù)性。例如,在前面提到的銀行轉(zhuǎn)帳事務(wù)中,包括兩個節(jié)點上的更新操作,當(dāng)其中一個節(jié)點出現(xiàn)故障,應(yīng)使全局事務(wù)回滾,在一個節(jié)點撤銷已經(jīng)執(zhí)行的操作等。
C++部分(50分)
1:設(shè)有“int w[3][4];”,pw是與數(shù)組名w等價的數(shù)組指針,則pw的初始化語句為int (*pw)[4] = w;(3分)
2:要使引用pr代表變量“char *p”,則pr的初始化語句為char * &pr = p;(3分)
3:“零值”可以是0,0.0,F(xiàn)ALSE或者“空指針”。例如int變量n與“零值”比較的if語句為:if(n==0),則BOOL flag與“零值”比較的if語句為 if(!a) ;float x與“零值”比較的if語句為:const float EPSINON = 0.00001; if ((x >= - EPSINON) && (x <= EPSINON)。(6分)
4:設(shè)有如下語句:(3分)
Int x;
(C)
*px=0;
則選擇以下哪條語句可將x值置為0。
A int *px; B int const *px=&x;
C int *const px=&x; D const int *px=&x;
5:設(shè)void f1(int *m,long &n);int a;long b;則以下調(diào)用合法的是(B)(3分)
A f1(a,b) B f1(&a,b)
C f1(a,&b) D f1(&a,&b)
6:請寫出如下代碼的運行結(jié)果(6分)6
Int main()
{int a,b,c,d;
a=0;
b=1;
c=2;
d=3;
printf(“%d”,a+++b+c+++d++);
}
7:寫出下面函數(shù)的功能(12分)將數(shù)組a中的元素(如果為類類型,調(diào)用拷貝賦值算符)逆序放置到數(shù)組b中
Template
void WE(Type a[],Type b[],int n){
for(int i=0;i
8寫一段代碼判斷一個單向鏈表中是否有環(huán)。(14分)
給出如下結(jié)構(gòu)
Struct node
{steuct *next;
};
Typedef stuct node Node;
答:
#include
struct listtype
{
int data;
struct listtype * next;
};
typedef struct listtype * list;
/* Check that whether there is loop in the singly linked list sll or not. */
int find_circle(list sll)
{
list fast = sll;
list slow = sll;
if (NULL == fast)
{
return -1;
}
while (fast && fast->next)
{
fast = fast->next->next;
slow = slow->next;
if (fast == slow)
{
return 1;
}
}
return 0;
}
JAVA部分(50分)
1:判斷下列對的是哪個(B)(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程序執(zhí)行的入口點,關(guān)于main方法的方法頭以下哪項是合法的(C)(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:設(shè)float x=1,y=2,z=3,則表達(dá)式y(tǒng)+=z--/++x的值是(A)(3分)
A 3.5 B 3
C 4 D 5
4:Math.round(11.5)=12
Math.round(-11.5)=-11(4分)
5:假設(shè)x=10,y=20,z=30;計算下列表達(dá)式的值(6分)
A x<10||x>10_________false
B !(x<=20)___________false
C z-y==x&&Math.abs(y-z)!=x_____________false
6:方法重建Overload和方法的重寫Overriding的區(qū)別。Overload的方法是否可以改變返回值的類型?(10分)
方法的重寫Overriding和重載Overloading是Java多態(tài)性的不同表現(xiàn)。重寫Overriding是父類與子類之間多態(tài)性的一種表現(xiàn),重載Overloading是一個類中多態(tài)性的一種表現(xiàn)。如果在子類中定義某方法與其父類有相同的名稱和參數(shù),我們說該方法被重寫(Overriding)。子類的對象使用這個方法時,將調(diào)用子類中的定義,對它而言,父類中的定義如同被“屏蔽”了。如果在一個類中定義了多個同名的方法,它們或有不同的參數(shù)個數(shù)或有不同的參數(shù)類型,則稱為方法的重載(Overloading)。 Overloaded的方法是可以改變返回值的類型。
7:談?wù)凥ashMap和Hashtable的區(qū)別(6分)
答:1.Hashtable是Dictionary的子類,HashMap是Map接口的一個實現(xiàn)類;
2.Hashtable中的方法是同步的,而HashMap中的方法在缺省情況下是非同步的。即是說,在多線程應(yīng)用程序中,不用專門的操作就安全地可以使用Hashtable了;而對于HashMap,則需要額外的同步機制。但HashMap的同步問題可通過Collections的一個靜態(tài)方法得到解決:
Map Collections.synchronizedMap(Map m)
這個方法返回一個同步的Map,這個Map封裝了底層的HashMap的所有方法,使得底層的HashMap即使是在多線程的環(huán)境中也是安全的。
3. 在HashMap中,null可以作為鍵,這樣的鍵只有一個;可以有一個或多個鍵所對應(yīng)的值為null。當(dāng)get()方法返回null值時,即可以表示 HashMap中沒有該鍵,也可以表示該鍵所對應(yīng)的值為null。HashMap中是否存在某個鍵,而應(yīng)該用containsKey()方法來判斷。
4.其底層的實現(xiàn)機制不同,hashmap的訪問速度要快于hashtable,因為它不需要進(jìn)行同步檢驗,建議在非多線程環(huán)境中使用hashmap代替hashtable .
8:構(gòu)造一個類來描述屏幕上的一個點,該類的構(gòu)成包括點x和y兩個坐標(biāo),以及一些對點進(jìn)行的操作,包括:取得點的坐標(biāo)值,對點的坐標(biāo)進(jìn)行賦值,編寫應(yīng)用程序生成該類的對象并對其進(jìn)行操作。(15分)
class Point{
private int x;
private int y;
public int getX() {
return x;
}
public int getY() {
return y;
}
public void setX(int x) {
this.x = x;
}
public void setY(int y) {
this.y = y;
}
}
數(shù)據(jù)結(jié)構(gòu)和算法
1. 假設(shè)執(zhí)行語句S的時間為O(1),則執(zhí)行下列程序短的時間為(B)
for(i=1;i<=n;i++)
for(j=i;j<=n;j++)
S;
A. O(n)
B. O(n2)
C. O(n*i)
D. O(n+1)
2. 二位數(shù)組A[10…20,5…10]采用行序為主序方式存儲,每個數(shù)據(jù)元素占4個存儲單元,且A[10][5]的存儲地址是1000,則A[18][9]的地址是(A)
A. 1208
B. 1212
C. 1368
D. 1364
3. 設(shè)棧最大長度為3,入棧序列為1,2,3,4,5,6,則不可能得出棧序列是(D)
A. 1,2,3,4,5,6
B. 2,1,3,4,5,6
C. 3,4,2,1,5,6
D. 4,3,2,1,5,6
4. 設(shè)有98個已排序列元素,采用二分法查找時,最大比較次數(shù)是(D)
A. 49
B. 15
C. 20
D. 7
5. Hash表示用于數(shù)據(jù)存儲的一種有效的數(shù)據(jù)結(jié)構(gòu),Hash表等查找復(fù)雜度依賴于Hash值算法的有效性,在最好的情況下,Hash表的查找復(fù)雜度為(A)
A. O(1)
B. O(logn)
C. O(n)
D. O(nlogn)
中興公司筆試真題(含答案) 2
一、單項選擇題(共10題,每題2分,共20分)
1. 下列說法哪一個是正確的。( B )
A.Java程序經(jīng)編譯后會產(chǎn)生machine code
B.Java程序經(jīng)編譯后會產(chǎn)生byte code
C.Java程序經(jīng)編譯后會產(chǎn)生DLL
D.以上都不正確
2. 提供Java存取數(shù)據(jù)庫能力的包是。( A )
A.java.sql B.java.awt C.java.lang D.java.swing
3. 執(zhí)行如下程序代碼后,C的值是。( C )
a=0;c=0;
do{
--c;
a=a-1;
}while(a>0);
A.0 B.1 C.-1 D.死循環(huán)
4. 下面的語句中正確的表達(dá)式為。( C )
A.byte b = 128;
B.boolean n = null;
C.double d = 0.9239d;
D.float f = 0.9239;
5. 將一個十六進(jìn)制值賦給一個long型變量的正確寫法為。( D )
A.long number = 345L;
B.long number = 0345;
C.long number = 0345L;
D.long number = 0x345L;
6. 以下程序代碼的輸出是。( B )
public class test (
public static void main (String args[]) (
System.out.printIn (6 ^ 3);
)
)
A.3 B.5 C.6 D.11
7. 以下程序代碼的輸出是。(E )
public class test (
private static int j = 0;
private static boolean methodB(int k) (
j += k;
return true;
)
public static void methodA(int i) {
boolean b:
b = i < 10 | methodB (4);
b = i < 10 || methodB (8);
)
public static void main (String args[] } (
methodA (0);
system.out.printIn(j);
)
)
A.0 B.4 C.8 D.12 E.不能編譯通過
8. 以下程序代碼的輸出是。( A)
public class test {
public static void add3 (Integer i) }
int val = i.intValue ( );
val += 3;
i = new Integer (val);
}
public static void main (String args [ ] ) {
Integer i = new Integer (0);
add3 (i);
system.out.printIn (i.intValue ( ) );
}
)
A.編譯失敗 B.編譯成功但在第三行會出現(xiàn)異常 C.0 D.3
9. 以下程序代碼執(zhí)行后,哪個說法正確?( B )
int index = 1;
boolean[] test = new Boolean[3];
boolean foo= test [index];
A.有異常拋出。
B.無法編譯。
C.foo的值是0。
D.foo的值是null。
E.foo的值是true。
F.foo的值是false。
10. 以下哪個類是swt包中的。( D )
A.MessageBox B.MessageDialog C.JDialog D.DisplayMode
二、多項選擇題(共5題,每題4分,共20分)
1. 在下面的選項中合法的標(biāo)識符有。( ADEF )
A._ok
B.*point
C.this
D.$byte
E.const
F.ILikeJLCSS
2. 下面的選項中哪些不是java的關(guān)鍵字。( AB D )
A.TRUE
B.sizeof
C.goto
D.const
E.super
F.void
3. 下面的敘述中正確的有。( AC )
A. 環(huán)境變量可在編譯source code時指定。
B. 在編譯程序時,所能指定的環(huán)境變量不包括class path。
C. javac一次可同時編譯數(shù)個Java源文件。
D. javac.exe能指定編譯結(jié)果要置于哪個目錄(directory)。
4. 下面的敘述中正確的有。( C )
A.equals()方法判定引用值是否指向同一對象。
B.= = 操作符判定兩個分立的對象的內(nèi)容和類型是否一致。
C.equals()方法只有在兩個對象的內(nèi)容一致時返回true。
D.類File重寫方法equals()在兩個分立的對象的內(nèi)容和類型一致時返回true。
5. 下面有關(guān)變量及其作用域的陳述哪些是對的。( A C )
A. 在方法里面定義的局部變量在方法退出的時候被撤銷。
B. 局部變量也叫自動變量。
C. 在方法外面定義的變量(譯注:即實例變量)在對象被構(gòu)造時創(chuàng)建。
D. 在方法中定義的方法的參變量只要該對象被需要就一直存在。
三、簡答題(共7題,共40分)
1. 請寫出一個輸出“Hello World!” 的程序。(3分)
答:public Class Hello World
{
Public static void main(String[]args)
{
System.out.println(“HELLO WOTLD”);
}
}
2. char型變量中能不能存貯一個中文漢字? 為什么? (3分)
答:能存儲一個漢字;因為它能存儲四個字節(jié)而每個漢字只占兩個字節(jié)。
3. 常見的兩種xml解析技術(shù)是什么? 區(qū)別是什么? (4分)
答:常見的兩種有:SAX和DOM。
區(qū)別:SAX 是一種事件驅(qū)動的xml解析方式。每次訪問一個xml文件中的某個節(jié)點的時候,sax就會搜索一遍xml文件,在找到相應(yīng)的節(jié)點后就會觸發(fā)一個事件來處理請求。只讀
DOM是一種基于樹狀的查找方式。DOM會將xml解析成一棵樹,存在內(nèi)存中。開發(fā)者可以通過查找樹的節(jié)點來取得文件的內(nèi)容或者修改內(nèi)容。可讀寫
4. MVC是什么,如何實現(xiàn)? (5分)
答:MVC是一個是一個設(shè)計模式,它強制性的使應(yīng)用程序的輸入,處理和輸出分開。使用MVC應(yīng)用程序被分為三個核心部件:M----------MODO模型,V ----------VIEW 試圖,C --------- Contral控制
實現(xiàn):首先有頁面(jsp)發(fā)送請求給控制器(servlet),然后由控制器接收用戶的請求,并決定應(yīng)該調(diào)用哪個模型(javabean)來進(jìn)行處理,然后模型用業(yè)務(wù)邏輯來處理用戶的請求并返回數(shù)據(jù),最后控制器用相應(yīng)的視圖格式化模型返回的數(shù)據(jù),并通過表示層顯示給用戶。
5. .J2EE是什么?(6分)
答:J2EE 是Sun公司提出的多層(multi-diered),分布式(distributed),基于組件(component-base)的企業(yè)級應(yīng)用模型 (enterpriese application model).在這樣的'一個應(yīng)用系統(tǒng)中,可按照功能劃分為不同的組件,這些組件又可在不同計算機上,并且處于相應(yīng)的層次(tier)中。所屬層次包括客戶層(clietn tier)組件,web層和組件,Business層和組件,企業(yè)信息系統(tǒng)(EIS)層。
6. jsp有哪些內(nèi)置對象?作用分別是什么? (9分)
答:1.request 用戶端請求,此請求會包含來自GET/POST請求的參數(shù);2.response 網(wǎng)頁傳回用戶端的回應(yīng);3.pageContext 網(wǎng)頁的屬性是在這里管理;4.session 與請求有關(guān)的會話期;5.application servlet 正在執(zhí)行的內(nèi)容;6.out 用來傳送回應(yīng)的輸出;7.config servlet的構(gòu)架部件;8.page JSP網(wǎng)頁本身;9.exception 針對錯誤網(wǎng)頁,未捕捉的例外
7. 作用域public,private,protected,以及不寫時的區(qū)別 ?(10分)
答:作用域 當(dāng)前類 同一package 子孫類 其他package
public √ √ √ √
protected √ √ √ ×
friendly √ √ × ×
private √ × × ×
不寫時默認(rèn)為friendly
四、編碼及論述題(共2題,每題10分,共20分)
1. 什么是Singleton,它的作用是什么,它有幾種形式?請用代碼寫出一個Singleton類。
答:Java Singleton 模式用來保證在運行的應(yīng)用程序中,一個Class只是實例化一次,也就是只有一個相應(yīng)的對象存在。
它有三種形式
public class Singleton
{
private static Singleton instance = null;
public static synchronized Singleton getInstance()
{
if (instance==null)
instance=new Singleton();
return instance;
}
}
2. 在Struts + Spring + Hibernate的組合框架模式中,三者各自的特點都是什么?
答:Strtus WEB層 Spring是業(yè)務(wù)層 Hiebenate是持久化層
【中興公司筆試真題(含答案)】相關(guān)文章:
中興公司軟件工程筆試真題(含答案)03-17
最新中興Java語言筆試真題及答案03-07
最新NIIT.Net筆試真題03-08
2017年跟單員考試模擬真題(含答案)03-08
2016年《現(xiàn)代咨詢方法與實務(wù)》真題(含答案)03-08
深圳MTK公司嵌入式軟件工程師筆試真題02-28