中興公司筆試真題(含答案)
中興是全球領先的綜合通信解決方案提供商,全球第四大手機生產製造商,想去中興工作的同學們,不妨來看一下小編為你準備的中興筆試真題。
公共部分
1:作業調度程序從處於(B)狀態的隊列中選擇適當的作業的作業投入運行。(3分)
A 運行 B 提交 C 完成 D後備
2:SQL語言中,刪除一個表的命令是(B)(3分)
A CLEAR TABLE B DROP TABLE
C DELETE TABLE D REMOVE TABLE
3:ATM採用的線路複用方式為(C)(3分)
A 頻分多路複用
B 同步時分多路複用
C 異步時分多路複用
D 獨佔信道
4:數據庫中只存放視圖的(C)(3分)
A操作
B 對應的數據
C 定義
D 限制
5:什麼是虛擬設備?為什麼在操作系統中引入虛擬設備?(10分)
SPOOLing是Simultaneous Peripheral Operation On-Line (即外部設備聯機並行操作)的縮寫,它是關於慢速字符設備如何與計算機主機交換信息的一種技術,通常稱為“假脱機技術”。
6:TCP為何採用三次握手來建立連接,若採用二次握手可以嗎,請説明原因?(16分)
三次握手是為了防止已失效的連接請求再次傳送到服務器端。
二次握手不可行,因為:如果由於網絡不穩定,雖然客户端以前發送的連接請求以到達服務方,但服務方的同意連接的應答未能到達客户端。則客户方要重新發送連接請求,若採用二次握手,服務方收到重傳的請求連接後,會以為是新的請求,就會發送同意連接報文,並新開進程提供服務,這樣會造成服務方資源的無謂浪費。
7:什麼是分佈式數據庫?(12分)
分佈式數據庫系統是在集中式數據庫系統成熟技術的基礎上發展起來的,但不是簡單地把集中式數據庫分散地實現,它具有自己的性質和特徵。集中式數據庫系統的許多概念和技術,如數據獨立性、數據共享和減少宂餘度、併發控制、完整性、安全性和恢復等在分佈式數據庫系統中都有了不同的、更加豐富的內容。
(1)數據獨立性。數據獨立性是數據庫方法追求的主要目標之一。在集中式數據庫中,數據獨立性包括兩方面:數據的邏輯獨立性和物理獨立性。其意義在於程序和數據的邏輯結構和數據的存儲結構無關。在分佈式系統中,數據庫獨立性除了上面所説之外,還有數據分佈獨立性亦稱分佈透明性,即用户不必關心數據的邏輯分片,不必關心數據的物理位置分佈的細節,也不必關心重複副本(宂餘數據)的一致性問題。有了分佈透明性,用户的應用程序書寫起來就如同數據沒有分佈一樣。在集中式數據庫中,數據的獨立性是通過系統的三級模式和它們之間的二級映象得到的。分佈式數據庫,分佈透明性是由於引入新的'模式和模式之間的映象得到的。
(2)集中與自治相結合的控制結構。數據庫是供用户共享的,在集中式數據庫中,為保證數據的安全性和完整性,對數據庫的控制是集中的。由數據庫管理員(DBA)負責監督和維護系統的正常運行。
在分佈式數據庫中,數據的共享有兩個層次:一是局部共享,即在局部場地上存儲局部用户的共享數據。二是全局共享,即在分佈式數據庫的各個場地也存儲可供網絡中其他場地的用户共享的數據,支持全局引用。因此,相應的控制結構也具有兩個層次:集中和自治。各局部的DBMS可以獨立地管理局部數據庫,具有自治的功能。同時,系統又設有集中控制機制,協調各局部DBMS的工作,執行全局應用。
(3)適當增加數據宂餘度。在集中式數據庫中,儘量減少宂餘度是系統目標之一。其原因是,宂餘數據浪費存儲空間,而且容易造成個副本之間的不一致性。減少宂餘度的目標是用數據共享來達到的。而在分佈式系統中卻希望增加宂餘數據,在不同的場地存儲同一數據的多個副本。其原因是提高系統的可靠性和性能,當某一場地出現故障,系統可以對另一場地上的相同副本進行操作,不會造成系統的癱瘓。系統可以根據距離選擇離用户最近的數據副本進行操作,減少通信代價。但是增加宂餘會碰到集中式數據庫同樣的問題,即不利於更新,增加了系統維護代價,需要在這些方面作出權衡。
(4)全局的一致性、可串行性和可恢復性。分佈式數據庫中各局部數據庫應滿足集中式數據庫的一致性、可串行性和可恢復性。除此以外,還要保證數據庫的全局一致性、可串行性和可恢復性。例如,在前面提到的銀行轉帳事務中,包括兩個節點上的更新操作,當其中一個節點出現故障,應使全局事務回滾,在一個節點撤銷已經執行的操作等。
C++部分(50分)
1:設有“int w[3][4];”,pw是與數組名w等價的數組指針,則pw的初始化語句為int (*pw)[4] = w;(3分)
2:要使引用pr代表變量“char *p”,則pr的初始化語句為char * &pr = p;(3分)
3:“零值”可以是0,0.0,FALSE或者“空指針”。例如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:設有如下語句:(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:設void f1(int *m,long &n);int a;long b;則以下調用合法的是(B)(3分)
A f1(a,b) B f1(&a,b)
C f1(a,&b) D f1(&a,&b)
6:請寫出如下代碼的運行結果(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分)將數組a中的元素(如果為類類型,調用拷貝賦值算符)逆序放置到數組b中
Template
void WE(Type a[],Type b[],int n){
for(int i=0;i
8寫一段代碼判斷一個單向鏈表中是否有環。(14分)
給出如下結構
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;
}