通過程序員考試已成為諸多從事軟件開發(fā)的技術(shù)人員獲得職稱晉升和能力水平認(rèn)定的一個(gè)重要途徑,然而程序員考試的知識點(diǎn)繁多,通過考試有一定的難度。本書總結(jié)了作者多年來的軟考備考經(jīng)驗(yàn)和方法,并對程序員考試的試題進(jìn)行了分析、歸類和整理。
全書通過思維導(dǎo)圖描述了整個(gè)程序員考試的知識體系,以典型題目帶動知識點(diǎn)的復(fù)習(xí)并闡述解題的方法和技巧,通過對題目的選擇和分析來覆蓋考試中的重點(diǎn)、難點(diǎn)及疑點(diǎn)。
本書可作為參加程序員考試考生的自學(xué)用書,也可作為軟考培訓(xùn)班的教材和從事軟件開發(fā)相關(guān)的專業(yè)人員的參考用書。
本書屬于攻克要塞兩大系列教學(xué)輔導(dǎo)書中的100題系列。該系列的核心理念是通過關(guān)鍵題目來攻克知識點(diǎn),力求考生用較少的時(shí)間順利通過考試。因此,本書的編寫目的是能快速、準(zhǔn)確地反映最新的考試趨勢,能讓讀者看到最新的考點(diǎn)、最新的知識考查方式。本書內(nèi)容是攻克要塞軟考團(tuán)隊(duì)精心總結(jié)的多次考試中的重點(diǎn)、難點(diǎn),可以幫助讀者高效準(zhǔn)備考試。
攻克要塞軟考團(tuán)隊(duì)始終堅(jiān)持認(rèn)為,大部分考生是沒有足夠的時(shí)間去反復(fù)閱讀教材的,也沒有足夠的時(shí)間和精力耗費(fèi)在曠日持久的復(fù)習(xí)上,因此,“邊學(xué)習(xí)邊練習(xí),邊練習(xí)邊學(xué)習(xí)”必然是節(jié)約復(fù)習(xí)時(shí)間、提高復(fù)習(xí)效率的關(guān)鍵。本書具有以下特色:
(1)與《程序員5天修煉》(施游、鄒月平、曾哲軍編著,中國水利水電出版社2021年版)一書的知識結(jié)構(gòu)完全一致,并根據(jù)該知識結(jié)構(gòu)組織對應(yīng)的題目。
(2)按照考試趨勢和偏好,組織題目。
(3)選擇重點(diǎn)、難點(diǎn)、考核頻率高的題目。
(4)不選不具備代表性、沒有規(guī)律和技巧可言的題目。
(5)重點(diǎn)、詳細(xì)講解C語言案例題、Java案例題、流程圖案例題,力求達(dá)到舉一反三的效果。
(6)注重知識的練習(xí)與鞏固,結(jié)合《程序員5天修煉》一起學(xué)習(xí)可以達(dá)到邊學(xué)邊練的效果。
本書第1~10章由曾哲軍編寫,第11~20章由黃少年編寫,第21章由李竹村編寫,李竹村負(fù)責(zé)審核全書。北京國軟工程咨詢有限公司的鄒月平老師、西安電子科技大學(xué)黃伯虎老師、西北大學(xué)何路老師對本書提出了大量寶貴的建議。本書在編寫過程中參考了許多專業(yè)書籍和資料,在此對這些參考文獻(xiàn)的作者表示感謝。
感謝讀者在學(xué)習(xí)過程中給予的反饋,感謝培訓(xùn)合作機(jī)構(gòu)給予的支持,感謝中國水利水電出版社在此書上的盡心盡力。
我們自知本書并不完美,我們的研發(fā)團(tuán)隊(duì)也必然會持續(xù)完善本書。在閱讀過程中,如果您有任何想法和意見,歡迎關(guān)注“攻克要塞”公眾號,與我們交流。
前言
打好基礎(chǔ)
第1章 計(jì)算機(jī)科學(xué)基礎(chǔ) 2
1.1 數(shù)制及其轉(zhuǎn)換 2
1.2 計(jì)算機(jī)內(nèi)數(shù)據(jù)的表示 4
1.3 算術(shù)運(yùn)算和邏輯運(yùn)算 7
1.4 編碼基礎(chǔ) 9
第2章 計(jì)算機(jī)硬件基礎(chǔ)知識 13
2.1 計(jì)算機(jī)系統(tǒng)體系結(jié)構(gòu) 14
2.2 存儲系統(tǒng) 17
2.3 硬盤存儲器 19
2.4 可靠性與系統(tǒng)性能評測基礎(chǔ) 20
2.5 輸入/輸出技術(shù) 20
2.6 總線結(jié)構(gòu) 22
第3章 數(shù)據(jù)結(jié)構(gòu)知識 25
3.1 概念 26
3.2 線性表 26
3.3 隊(duì)列和棧 29
3.4 樹 31
3.5 圖 35
3.6 哈希表 39
3.7 查找 41
3.8 排序 43
3.9 算法描述和分析 46
第4章 操作系統(tǒng)知識 47
4.1 操作系統(tǒng)概述 48
4.2 處理機(jī)管理 49
4.3 存儲管理 53
4.4 文件管理 54
4.5 作業(yè)管理 56
4.6 設(shè)備管理 57
第5章 程序設(shè)計(jì)語言和語言處理程序知識 58
5.1 程序設(shè)計(jì)語言基礎(chǔ)知識 58
5.2 語言處理程序基礎(chǔ)知識 63
夯實(shí)基礎(chǔ)
第6章 數(shù)據(jù)庫知識 70
6.1 數(shù)據(jù)庫三級模式結(jié)構(gòu) 71
6.2 數(shù)據(jù)模型 72
6.3 數(shù)據(jù)依賴與函數(shù)依賴 74
6.4 關(guān)系代數(shù) 75
6.5 關(guān)系數(shù)據(jù)庫標(biāo)準(zhǔn)語言 76
6.6 規(guī)范化 78
6.7 數(shù)據(jù)庫的控制功能 79
6.8 數(shù)據(jù)倉庫基礎(chǔ) 80
6.9 分布式數(shù)據(jù)庫基礎(chǔ) 81
6.10 數(shù)據(jù)庫設(shè)計(jì) 81
第7章 計(jì)算機(jī)網(wǎng)絡(luò) 83
7.1 計(jì)算機(jī)網(wǎng)絡(luò)概述 84
7.2 網(wǎng)絡(luò)體系結(jié)構(gòu) 84
7.3 物理層 85
7.4 數(shù)據(jù)鏈路層 85
7.5 網(wǎng)絡(luò)層 86
7.6 傳輸層 87
7.7 應(yīng)用層 88
7.8 交換與路由 90
7.9 網(wǎng)站建設(shè) 91
第8章 多媒體基礎(chǔ) 93
8.1 多媒體基礎(chǔ)概念 93
8.2 聲音處理 94
8.3 圖形和圖像處理 95
第9章 軟件工程與系統(tǒng)開發(fā)基礎(chǔ) 98
9.1 軟件工程概述 99
9.2 軟件生存周期與軟件生存周期模型 100
9.3 軟件項(xiàng)目管理 101
9.4 軟件項(xiàng)目度量 102
9.5 系統(tǒng)分析與需求分析 103
9.6 系統(tǒng)設(shè)計(jì) 103
9.7 軟件測試 106
9.8 系統(tǒng)維護(hù) 110
9.9 軟件體系結(jié)構(gòu) 111
第10章 面向?qū)ο? 112
10.1 面向?qū)ο蠡A(chǔ) 112
10.2 UML 115
10.3 設(shè)計(jì)模式 117
深入學(xué)習(xí)
第11章 信息安全 120
11.1 信息安全基礎(chǔ) 121
11.2 信息安全基本要素 122
11.3 防火墻與入侵檢測 123
11.4 常見的網(wǎng)絡(luò)安全威脅 124
11.5 惡意代碼 125
11.6 網(wǎng)絡(luò)安全協(xié)議 126
11.7 加密算法與信息摘要 127
第12章 信息化基礎(chǔ) 129
12.1 信息與信息化 129
12.2 電子政務(wù) 130
12.3 企業(yè)信息化 131
12.4 電子商務(wù) 133
12.5 新一代信息技術(shù) 133
第13章 知識產(chǎn)權(quán)相關(guān)法規(guī) 136
13.1 著作權(quán)法 136
13.2 專利法 138
13.3 商標(biāo)法 138
13.4 計(jì)算機(jī)軟件保護(hù)條例 139
第14章 標(biāo)準(zhǔn)化 141
第15章 數(shù)學(xué)基礎(chǔ) 143
第16章 Excel基礎(chǔ) 150
第17章 Windows基礎(chǔ) 154
擴(kuò)展實(shí)踐
第18章 C語言案例題 159
案例1:車牌號限行 159
案例2:表達(dá)式計(jì)算 161
案例3:字符串計(jì)算 163
案例4:冒泡排序 166
案例5:回文數(shù)、switch分支語句 167
案例6:階梯電價(jià) 169
案例7:插入排序1 171
案例8:插入排序2 172
案例9:調(diào)薪 174
案例10:IP地址合法性檢查 176
案例11:字符子串查找和刪除 178
案例12:單向循環(huán)鏈表表示隊(duì)列 181
案例13:簡單選擇排序 184
案例14:折半查找(二分查找) 186
案例15:二叉排序樹(二叉查找樹) 188
第19章 Java語言案例題 191
案例1:賬單支付 191
案例2:簡單客戶關(guān)系管理 193
案例3:簡單訂票 196
案例4:繪制圓形 198
案例5:簡單樂器系統(tǒng) 200
案例6:簡單銷售系統(tǒng) 202
第20章 流程圖案例題 206
案例1:回文數(shù) 206
案例2:有序區(qū)間集 208
案例3:完美數(shù) 210
案例4:二維整數(shù)數(shù)組查找 211
案例5:多項(xiàng)式展開 213
案例6:雜湊法 214
案例7:連續(xù)數(shù)組元素求和 216
案例8:數(shù)組元素查缺查重 218
第21章 專業(yè)英語 220
模擬測試 224
程序員上午試卷 224
程序員下午試卷 232
程序員上午試卷解析與參考答案 238
程序員下午試卷解析與參考答案 244
參考文獻(xiàn) 248