關(guān)于我們
書單推薦
新書推薦
|
C++趣味編程及算法入門 讀者對象:普通讀者
本書是一本專門為中小學(xué)生編寫的C++編程及算法入門教材。本書由淺入深地講解了C++語言基礎(chǔ)知識,以及編程解題常用的方法和基礎(chǔ)算法。每章都是由一個小故事來引出編程思維。書中的案例和練習(xí)均由作者精心設(shè)計,并與生活和學(xué)習(xí)緊密結(jié)合。本書也介紹了各種有趣的計算機知識,并涵蓋了全國青少年軟件編程等級考試(C語言)一級和二級考試的知識點。本書配備了完善的題庫、課件、教學(xué)視頻等資源,可以作為中小學(xué)編程社團的教材,也可以作為少兒編程培訓(xùn)機構(gòu)的培訓(xùn)教材,還可以作為GESP等級考試和各類編程競賽的入門教材。
王桂平 等【編著】【中國】【現(xiàn)當(dāng)代】
————————————————————
王桂平,重慶交通大學(xué)計算機科學(xué)與技術(shù)專業(yè)副教授/碩導(dǎo),本、碩、博均畢業(yè)于重慶大學(xué),曾先后擔(dān)任重慶交通大學(xué)計算機系、大數(shù)據(jù)與AI系的副系主任。2003年在浙江財經(jīng)大學(xué)開始從事大學(xué)生程序設(shè)計競賽指導(dǎo)工作,是國內(nèi)最早從事大學(xué)生程序設(shè)計競賽指導(dǎo)的一批教練。
帶隊參加過浙江省、重慶市、四川省、廣東省大學(xué)生程序設(shè)計大賽、中國大學(xué)生程序設(shè)計大賽、國際大學(xué)生程序設(shè)計大賽、中國高校計算機大賽-團體程序設(shè)計天梯賽、藍橋杯大賽等各類程序與算法設(shè)計類大賽,指導(dǎo)的學(xué)生獲得國家級獎項80余項,省級獎項600余項。連續(xù)7年獲得藍橋杯大賽優(yōu)秀指導(dǎo)教師。出版了《圖論算法理論、實現(xiàn)及應(yīng)用》《程序設(shè)計方法及算法導(dǎo)引》《程序設(shè)計方法及在線實踐指導(dǎo)》等6本著作;主持省部級教學(xué)研究項目5項(含重大項目1項),主持重慶市一流課程一門、重慶交通大學(xué)校級一流課程一門;以第一作者發(fā)表教學(xué)研究論文近20篇。以第一作者發(fā)表科學(xué)研究論文30余篇,其中SCI論文9篇,EI論文11篇,主持省部級科研項目3項,主研國家級科研項目3項(均排名第2)。
藍橋杯大賽特邀專家,錄制了多屆省賽和全國總決賽真題講解視頻,開設(shè)了多期直播課,并在藍橋云課平臺上開設(shè)《離散數(shù)學(xué)及其應(yīng)用》《圖論算法理論、實現(xiàn)及應(yīng)用》《程序設(shè)計方法及算法導(dǎo)引》等在線課程。多所中小學(xué)信息學(xué)奧賽(NOI)兼職教練。
針對少兒編程、信息學(xué)奧賽,自主研發(fā)了完善的課程體系,編寫了“Python少兒編程(算法入門篇)”“小學(xué)生C++編程及算法入門”“信息學(xué)奧賽入門到進階(初級篇)”“信息學(xué)奧賽入門到進階(中級篇)”,在多次試用中獲得了大量的學(xué)生好評。
目 錄
第1章 什么是程序?
1.1 從生活中的場景說起
1.2 編寫程序的工具
1.3 程序的編寫、編譯和運行
1.4 在線評測系統(tǒng)
1.5 案例1:Hello world!
1.6 案例2:時間換算(1)
1.7 案例3:輸出楊輝三角(1)
1.8 練習(xí)1:用cout語句輸出星號菱形
1.9 練習(xí)2:小學(xué)比幼兒園遠多少米
1.10 練習(xí)3:輸出數(shù)字螺旋矩陣(1)
1.11 拓展閱讀:C++關(guān)鍵字
1.12 計算機小知識:Hello world程序
1.13 總結(jié)
第2章 變量是一個魔法盒
2.1 記錄身高和體重
2.2 用字母代表人、物或數(shù)據(jù)
2.3 常量和變量
2.4 數(shù)據(jù)類型
2.5 案例1:求矩形的面積和周長(1)
2.6 案例2:超市購物
2.7 案例3:變量是一個魔法盒
2.8 練習(xí)1:長身高
2.9 練習(xí)2:剩余座位
2.10 練習(xí)3:需要多少塊磚
2.11 拓展閱讀:基本的數(shù)據(jù)類型
2.12 計算機小知識:“缺斤少兩”的U盤
2.13 總結(jié)
第3章 數(shù)據(jù)從何而來——輸入
3.1 更強大的程序
3.2 案例1:求女生的人數(shù)
3.3 案例2:時間換算(2)
3.4 案例3:交換兩個變量的值(1)
3.5 練習(xí)1:交換兩個變量的值(2)
3.6 練習(xí)2:求矩形的面積和周長(2)
3.7 練習(xí)3:速度單位換算(1)
3.8 拓展閱讀:在線評測系統(tǒng)的工作原理
3.9 計算機小知識:人和計算機是怎么交互的
3.10 總結(jié)
第4章 讓計算機幫我們做算術(shù)題
4.1 從買酸奶說起
4.2 運算、運算符和表達式
4.3 算術(shù)運算符和算術(shù)表達式
4.4 商和余數(shù)
4.5 除以10、對10取余
4.6 案例1:時間換算(3)
4.7 案例2:賦值運算符練習(xí)
4.8 案例3:報數(shù)游戲
4.9 練習(xí)1:小實驗——前置++和后置++
4.10 練習(xí)2:數(shù)字魔術(shù)——三位數(shù)還原
4.11 練習(xí)3:三位數(shù)的數(shù)字之和
4.12 拓展閱讀:運算符的優(yōu)先級和結(jié)合性
4.13 計算機小知識:C、C++名稱的由來
4.14 總結(jié)
第5章 精確到小數(shù)的運算
5.1 從“打折”說起
5.2 圓的周長及圓周率
5.3 案例1:速度單位換算(2)
5.4 案例2:折扣
5.5 案例3:求長方體的表面積和體積
5.6 練習(xí)1:分數(shù)→無限循環(huán)小數(shù)
5.7 練習(xí)2:求正方形和圓的面積(1)
5.8 練習(xí)3:計算球的表面積和體積
5.9 拓展閱讀:自動類型轉(zhuǎn)換和強制類型轉(zhuǎn)換
5.10 計算機小知識:實數(shù)與浮點數(shù)
5.11 總結(jié)
第6章 拿來主義——數(shù)學(xué)函數(shù)的使用
6.1 從工具箱玩具說起
6.2 平方和平方根、立方和立方根
6.3 案例1:勾股定理(1)
6.4 案例2:2的n次方
6.5 案例3:立方體邊長和球體直徑
6.6 練習(xí)1:求正方形和圓的面積(2)
6.7 練習(xí)2:浮點數(shù)不能精確表示
6.8 練習(xí)3:浮點數(shù)的整數(shù)商和余數(shù)
6.9 計算機小知識:復(fù)制粘貼是由誰提出來的?
6.10 總結(jié)
第7章 一路前行——順序結(jié)構(gòu)
7.1 從“把大象放進冰箱”說起
7.2 算法就是求解問題的步驟
7.3 程序控制結(jié)構(gòu)
7.4 案例1:三角形的面積
7.5 案例2:雞兔同籠問題(1)
7.6 案例3:獲獎比例
7.7 練習(xí)1:預(yù)測孩子的身高
7.8 練習(xí)2:華氏溫度轉(zhuǎn)攝氏溫度
7.9 練習(xí)3:比賽成績
7.10 計算機小知識:三種基本的程序控制結(jié)構(gòu)
7.11 總結(jié)
第8章 分支結(jié)構(gòu)——if語句
8.1 抱一和媽媽談“條件”
8.2 條件判斷和分支結(jié)構(gòu)
8.3 C++語言中的分支結(jié)構(gòu)
8.4 案例1:加分
8.5 案例2:求三個數(shù)的最大值
8.6 案例3:四邊形的判斷(方法1)
8.7 練習(xí)1:3的倍數(shù)(方法1,取余運算符)
8.8 練習(xí)2:找座位
8.9 練習(xí)3:要不要開空調(diào)
8.10 總結(jié)
第9章 條件怎么形成——關(guān)系表達式和邏輯表達式
9.1 又高又壯的同學(xué)
9.2 判斷和多個判斷
9.3 邏輯“與”和邏輯“或”的例子
9.4 布爾型數(shù)據(jù)
9.5 案例1:語文和數(shù)學(xué)都考95分以上
9.6 案例2:三角形的判斷
9.7 案例3:閏年的判斷
9.8 練習(xí)1:復(fù)雜的邏輯判斷
9.9 練習(xí)2:四邊形的判斷(方法2)
9.10 練習(xí)3:身高達標嗎
9.11 計算機小知識:Bug和Debug
9.12 總結(jié)
第10章 多分支與switch語句
10.1 又見“打折”
10.2 案例1:商場打折
10.3 案例2:CCF CSP-J/S比賽成績
10.4 switch語句
10.5 案例3:VIP顧客等級
10.6 練習(xí)1:百分制成績轉(zhuǎn)五級制成績
10.7 練習(xí)2:9歲男孩的身高標準
10.8 練習(xí)3:巧虎機器人(初級版)
10.9 計算機小知識:C++的版本
10.10 總結(jié)
第11章 知道要反復(fù)執(zhí)行多少次——for循環(huán)
11.1 循環(huán)就是重復(fù)
11.2 循環(huán)結(jié)構(gòu)
11.3 數(shù)列及相關(guān)問題
11.4 在程序中實現(xiàn)數(shù)學(xué)上的遞推
11.5 案例1:輸出廣播體操的口令
11.6 案例2:求1+2+3+…+n(1)
11.7 案例3:求階乘
11.8 練習(xí)1:求n個數(shù)的和
11.9 練習(xí)2:求1~n范圍內(nèi)3的倍數(shù)的和
11.10 練習(xí)3:求數(shù)列前n項和
11.11 計算機小知識:計算機的運算速度有多快
11.12 總結(jié)
第12章 依條件而循環(huán)——while循環(huán)和do-while循環(huán)
12.1 給足球打氣的兩種方式
12.2 while循環(huán)和do-while循環(huán)
12.3 永真循環(huán)、死循環(huán)
12.4 案例1:求1+2+3+…+n(2)
12.5 案例2:前n項和超過m
12.6 案例3:輸出整數(shù)的每一位數(shù)
12.7 練習(xí)1:數(shù)列1, 1, 2, 1, 2, 3, 1, 2, 3, 4,…的第n項
12.8 練習(xí)2:3的倍數(shù)(方法2,求各位和)
12.9 練習(xí)3:等比數(shù)列第幾項超過m
12.10 總結(jié)
第13章 一個結(jié)構(gòu)套另一個結(jié)構(gòu)——結(jié)構(gòu)的嵌套
13.1 俄羅斯套娃玩具——嵌套
13.2 程序控制結(jié)構(gòu)的嵌套
13.3 計數(shù)器和累加器
13.4 案例1:吃蘋果
13.5 案例2:求整數(shù)中非零數(shù)字的個數(shù)
13.6 案例3:兔子問題——斐波那契數(shù)列(1)
13.7 練習(xí)1:求n個數(shù)的最大值
13.8 練習(xí)2:閏年的個數(shù)
13.9 練習(xí)3:求等差數(shù)列的和
13.10 總結(jié)
第14章 退出循環(huán)和跳過當(dāng)前這一輪循環(huán)
14.1 抄寫古詩和數(shù)字20遍
14.2 退出循環(huán)和跳過當(dāng)前循環(huán)
14.3 案例1:質(zhì)數(shù)的判定(break語句)
14.4 案例2:輸出1~100中的質(zhì)數(shù)
14.5 案例3:用while(true)循環(huán)求數(shù)列和
14.6 練習(xí)1:數(shù)列1, 2, 3, 2, 3, 4
14.7 練習(xí)2:斐波那契數(shù)列(2)
14.8 練習(xí)3:斐波那契數(shù)列(3)
14.9 總結(jié)
第15章 循環(huán)包含循環(huán)——循環(huán)的嵌套
15.1 九九乘法表的規(guī)律
15.2 循環(huán)的嵌套
15.3 枚舉算法的思想
15.4 案例1:數(shù)字之和(1)
15.5 案例2:輸出數(shù)字圖案
15.6 案例3:雞兔同籠問題(2)
15.7 練習(xí)1:統(tǒng)計1~N范圍內(nèi)的質(zhì)數(shù)個數(shù)
15.8 練習(xí)2:百錢百雞問題
15.9 練習(xí)3:勾股定理(2)
15.10 總結(jié)
第16章 存多個數(shù)據(jù)的容器——(一維)數(shù)組
16.1 帶格子的收納盒——數(shù)組的引入
16.2 數(shù)組和元素
16.3 案例1:某年某月的天數(shù)
16.4 通過循環(huán)處理一維數(shù)組
16.5 案例2:斐波那契數(shù)列(4)
16.6 案例3:數(shù)列1, 2, 3, 2, 3, 4, 3, 4, 5, 4, 5, 6,…的前n項和
16.7 練習(xí)1:數(shù)列1, 1, 2, 1, 2, 3, 1, 2, 3, 4,…的前n項和(1)
16.8 練習(xí)2:將一個正整數(shù)逆序
16.9 練習(xí)3:求一組數(shù)的最值和平均值
16.10 總結(jié)
第17章 表格型容器——二維數(shù)組
17.1 方格作業(yè)本——二維數(shù)組的引入
17.2 用數(shù)組存儲多個有關(guān)聯(lián)的數(shù)據(jù)
17.3 二維數(shù)組就是二維表格
17.4 用循環(huán)處理二維數(shù)組
17.5 案例1:求二維數(shù)組中的最大元素
17.6 案例2:求一個矩陣中的鞍點
17.7 案例3:輸出數(shù)字螺旋矩陣(2)
17.8 練習(xí)1:二維1, 2, 3, 2, 3, 4, 3, 4, 5, 4,…
17.9 練習(xí)2:統(tǒng)計矩陣中各類數(shù)的個數(shù)
17.10 練習(xí)3:輸出楊輝三角形(2)
17.11 拓展閱讀:三維數(shù)組
17.12 總結(jié)
第18章 非數(shù)值型數(shù)據(jù)——字符和字符串
18.1 從身份證號說起
18.2 字符和字符串
18.3 ASCII編碼
18.4 字符、字符串和字符數(shù)組
18.5 用字符數(shù)組讀入一個整數(shù)
18.6 案例1:字符轉(zhuǎn)換——模運算符
18.7 案例2:簡單的字符串加密
18.8 案例3:統(tǒng)計各類字符的個數(shù)
18.9 練習(xí)1:數(shù)字之和(2)
18.10 練習(xí)2:計算單詞的得分
18.11 練習(xí)3:提取連續(xù)的數(shù)字字符串
18.12 計算機小知識:漢字編碼
18.13 總結(jié)
第19章 “逢十進一”的由來——進位計數(shù)制
19.1 開關(guān)面板——二進制的引入
19.2 數(shù)位和計數(shù)單位
19.3 進位計數(shù)制
19.4 二值的表示
19.5 二進制、十六進制加減運算
19.6 計量數(shù)據(jù)大小的單位
19.7 用二進制數(shù)數(shù)
19.8 理解整型(int, long long)的范圍
19.9 案例1:猜數(shù)字魔術(shù)(心靈感應(yīng)魔術(shù))
19.10 案例2:以八進制、十六進制輸出數(shù)據(jù)
19.11 案例3:以八進制、十六進制輸入數(shù)據(jù)
19.12 二進制、八進制和十六進制的相互轉(zhuǎn)換
19.13 練習(xí)1:生日蠟燭
19.14 練習(xí)2:二進制數(shù)
19.15 計算機小知識:程序員節(jié)
19.16 總結(jié)
第20章 進制轉(zhuǎn)換問題
20.1 單位換算問題
20.2 一斤十六兩
20.3 進制的轉(zhuǎn)換
20.4 案例1:十進制換位運算
20.5 案例2:其他進制轉(zhuǎn)十進制
20.6 案例3:十進制轉(zhuǎn)其他進制
20.7 練習(xí)1:數(shù)碼1的位置
20.8 練習(xí)2:字節(jié)內(nèi)容
20.9 練習(xí)3:雷劈數(shù)
20.10 總結(jié)
第21章 字符及字符串處理
21.1 用草串著賣的雞蛋
21.2 字符串處理函數(shù)
21.3 字符串類string
21.4 案例1:計算兩個字符串的相關(guān)性
21.5 案例2:校驗和
21.6 案例3:從整數(shù)中提取出4個字符
21.7 練習(xí)1:比較大整數(shù)的大小關(guān)系
21.8 練習(xí)2:輸出月份(二維字符數(shù)組)
21.9 拓展閱讀:萬能頭文件
21.10 總結(jié)
第22章 通過函數(shù)實現(xiàn)功能分解
22.1 設(shè)計師的夢想
22.2 函數(shù)就是功能
22.3 函數(shù)的分類
22.4 案例1:質(zhì)數(shù)的判定(用函數(shù)實現(xiàn))
22.5 案例2:求兩個數(shù)的較大者(用函數(shù)實現(xiàn))
22.6 案例3:數(shù)組元素逆序(用函數(shù)實現(xiàn))
22.7 練習(xí)1:斐波那契數(shù)列(5)
22.8 練習(xí)2:區(qū)間內(nèi)所有質(zhì)數(shù)(用函數(shù)實現(xiàn))
22.9 練習(xí)3:閏年的判定(用函數(shù)實現(xiàn))
22.10 總結(jié):如何設(shè)計函數(shù)的參數(shù)和返回值
22.11 計算機小知識:結(jié)構(gòu)化程序設(shè)計
22.12 總結(jié)
第23章 遞歸及遞歸函數(shù)設(shè)計
23.1 從前有座山
23.2 案例1:遞歸求階乘
23.3 遞歸函數(shù)
23.4 案例2:猴子吃桃問題
23.5 案例3:求最大公約數(shù)
23.6 練習(xí)1:斐波那契數(shù)列(6)
23.7 練習(xí)2:角谷猜想(用遞歸實現(xiàn))
23.8 練習(xí)3:數(shù)字之和(3)
23.9 總結(jié)
第24章 簡單排序算法
24.1 從順序說起
24.2 排序及排序函數(shù)
24.3 字典序
24.4 案例1:插入排序
24.5 案例2:冒泡排序
24.6 案例3:簡單選擇排序
24.7 練習(xí)1:字符串排序
24.8 練習(xí)2:坐電梯取鉆石游戲
24.9 練習(xí)3:字符排序
24.10 總結(jié)
第25章 排序問題及處理
25.1 致柔的游戲規(guī)則
25.2 sort排序函數(shù)
25.3 案例1:誰在中間
25.4 案例2:前20%和后20%
25.5 練習(xí)1:合影效果
25.6 練習(xí)2:單詞重組
25.7 總結(jié)
第26章 如何高效地查找?
26.1 折紙和剪線
26.2 查找
26.3 案例1:順序查找
26.4 案例2:二分查找
26.5 練習(xí)1:猜數(shù)字游戲
26.6 關(guān)于二分查找的相關(guān)函數(shù)
26.7 練習(xí)2:有多少個元素比b小(大)
26.8 總結(jié)
第27章 結(jié)構(gòu)體
27.1 設(shè)計一種新的筆
27.2 自定義數(shù)據(jù)類型——結(jié)構(gòu)體
27.3 一級排序和二級排序
27.4 排序時指定排序規(guī)則——cmp函數(shù)
27.5 案例1:成績排序
27.6 案例2:按照個位數(shù)排序
27.7 練習(xí)1:序列排序
27.8 練習(xí)2:病人排隊
27.9 總結(jié)
第28章 枚舉算法
28.1 送你一個智慧
28.2 枚舉算法的思想及實現(xiàn)要點
28.3 算法及算法的效率
28.4 案例1:求x2 \+ y2 = n的正整數(shù)解
28.5 案例2:既是平方數(shù)也是立方數(shù)
28.6 練習(xí)1:驗證哥德巴赫猜想
28.7 練習(xí)2:和為給定數(shù)
28.8 計算機小知識:1秒鐘100 000 000次運算
28.9 總結(jié)
第29章 模擬算法
29.1 從模擬考試說起
29.2 模擬算法的思想及實現(xiàn)要點
29.3 案例1:出列游戲
29.4 案例2:單身貴族游戲
29.5 練習(xí)1:爬動的蠕蟲
29.6 練習(xí)2:求一個整數(shù)的回文數(shù)步數(shù)
29.7 總結(jié)
第30章 數(shù)據(jù)結(jié)構(gòu)基礎(chǔ)知識
30.1 結(jié)束不是終止,而是一個新的開始
30.2 數(shù)據(jù)結(jié)構(gòu)基本概念
30.3 標準模板庫
30.4 向量
30.5 隊列
30.6 案例1:數(shù)列1, 1, 2, 1, 2, 3, 1, 2, 3, 4,…前n項和(2)
30.7 案例2:輸出楊輝三角形(用向量實現(xiàn))
30.8 練習(xí)1:出列游戲(用隊列實現(xiàn))
30.9 練習(xí)2:機器翻譯
30.10 總結(jié)
后 記
參考文獻
附 錄 課程資源使用說明
你還可能感興趣
我要評論
|