嵌入式培訓完結,給自己來個測試吧!該套測試題不僅能測試你嵌入式的基本功,你還能從中查漏補缺。祝工程師們嵌入式職業生涯越來越好!
1、雙向鏈表中有兩個指針域,llink和rlink,分別指回前驅和后繼,設p指向鏈表中的一個結點,q指向一待插入結點,現要求在p前插入q,則正確的插入為()
A.p->llink->rlink=q;q->rlink=p;q->llink=p->llink;p->llink=q;
B.q->llink=p->llink;p->llink->rlink=q;q->rlink=p;p->llink=q->rlink;
C.q->rlink=p;p->rlink:=q;p->llink->rlink=q;q->rlink=p;
D.p->llink=q;q->rlink=p;p->llink->rlink=q;q->llink:=p->llink;
2、如何放掉一個指定占據的內存空間?()
A.調用free()方法
B.代用system.gc()方法
C.賦值給該項對象的引用為null
D.程序員無法明確強制垃圾回收器運行
3、一個長度為100的循環鏈表,指針A和指針B都指向了鏈表中的同一個節點,A以步長為1向前移動,B以步長為3向前移動,一共需要同時移動多少步A和B才能再次指向同一個節點____。
A.49
B.50
C.99
D.100
4、class ClassA
{
public:
virtual ~ ClassA(){};
virtual void FunctionA(){};
};
class ClassB
{
public:
virtual void FunctionB(){};
};
class ClassC : public ClassA,public ClassB
{
public:
};
ClassC aObject;
ClassA* pA=&aObject;
ClassB* pB=&aObject;
ClassC* pC=&aObject;
關于pA,pB,pC的取值,下面的描述中正確的是:
A.pA,pB,pC的取值相同.
B.pC=pA+pB
C.pA和pB不相同
D.pC不等于pA也不等于pB
5、在有向圖的鄰接表存儲結構中,頂點v在鏈表中出現的次數是()
A.頂點v的度
B.頂點v的出度
C.頂點v的入度
D.依附于頂點v的邊數
6、操作系統采用緩沖技術,通過減少對CPU的()次數,提高資源的利用率。
A.中斷
B.訪問
C.控制
D.依賴
7、在Linux系統中哪個文件定義了服務搜索順序?
A./etc/services
B./etc/nsorder
C./etc/nsswitch.conf
D./etc/hosts
8、下列關于B/S架構軟件與C/S架構軟件的區別描述錯誤的是?
A.B/S屬于C/S,瀏覽器只是特殊的客戶端;
B.C/S可以使用任何通信協議,而B/S這個特殊的C/S架構規定必須實現HTTP協議;
C.C/S架構的劣勢還有高昂的維護成本且投資大
D.C/S架構維護和升級方式簡單
9、下列程序的運行結果為:
#include
using namespace std;
void main() {
int a = 2;
int b = ++a;
cout << a / 6 << endl;
}
A.0.5
B.0
C.0.7
D.0.6666666-
10、在TCP/IP建立連接過程中,客戶端或服務器的狀態轉移說法錯誤的是?
A.經歷SYN_RECV狀態
B.經歷ESTABLISHED狀態
C.經歷TIME_WAIT狀態
D服務器在收到syn包時將加入半連接隊列
11、在32位機器上
設有以下說明和定義:
typedef union {
long i;
int k[5];
char c;
} DATE;
struct data {
int cat;
DATE cow;
double dog;
} too;
DATE max;
則語句 printf("%d",sizeof(struct data)+sizeof(max));的執行結果是:
12、請寫出下列代碼的輸出內容
int main() {
int a, b, c, d;
a = 10;
b = a++;
c = ++a;
d = 10 * a++;
printf("b,c,d:%d,%d,%d",b,c,d);
return 0;
}
13、在一個容量為25的循環隊列中,若頭指針front=18,尾指針rear=9,則該循環隊列中共有 1 個元素。
參考答案:
1~5:ADBCC 6~10:ACDBC
11:52
12:10,12,120
13:16