前 言
近幾年來,青少年編程教育在世界各國開展得如火如荼。在國內,青少年編程教育方興未艾,如星星之火一般在祖國大地上蔓延開來。人們逐漸意識到在人工智能技術飛速發展的今天,編程應該成為一種必備的技能。
本書屬于信息學競賽編程入門讀本。信息學主要是指利用計算機及其程序設計來分析問題、解決問題的學科,信息學競賽則是以信息學尤其是編程相關知識為基礎的中小學學科競賽活動。
本書以生動幽默的語言,通過大量的實例,講述了C++語言面向過程部分的基本語法知識。全書分為22課和1個附錄。第1~3課簡述了C++基本語法包括程序框架、數據定義和輸入/輸出等;第4~6課涉及了各種運算符及表達式;第7~12課闡述了選擇和循環程序結構;第13~15課討論了數組類型及其應用;第16~18課舉例說明了字符數組與字符串以及文件操作;第19~20課探討了函數及其應用;第21課解釋了結構體及其應用;第22課介紹了類和對象。附錄說明了C++集成開發環境——Dev-C++的安裝和使用。
本書與傳統信息學競賽類教材相比,具有如下特點。
(1)語言通俗易懂,內容風趣幽默,難度適中,既有知識性,又注重趣味性,適合中小學生入門學習。
(2)在內容組織上,打破傳統編程教材分章模式,按知識點組織課程,將課程分為知識講解和實例練習兩種,在形式上更接近中小學師生教與學的習慣。
(3)知識講解通過實際例題介紹知識,從具體到抽象,符合中小學生的認知特點。書中每一節的知識講解都分為如下六個部分。
① “看一看”部分通過漫畫和故事形式描述例題,引起讀者興趣。
② “想一想”部分針對本課知識提出問題,啟發讀者思考。
③ “做一做”部分給出例題源程序,指導讀者實踐。
④ “聽一聽”部分結合例題和圖示講解內容,引領讀者構建知識。
⑤ “總結”部分使用簡單語句建立知識框架,輔助讀者梳理所學。
⑥ “練一練”部分根據本節課程列舉相關習題,引導讀者復習。
(4)實例練習緊隨相關知識講解之后,用以幫助讀者鞏固相關知識的學習。
(5)書中例題都分為問題描述、數學分析、算法說明和程序實現4個步驟,循序漸進講解了例題,符合程序設計的思維方式。
(6)書中練習題在配套資源包中都有源代碼及相關說明,可供教師備課和學生自學。
本書主要適用于9~16歲學生,既可以作為學生自學的讀本,又可以作為教師教學的參考,還可以作為學校或機構信息學競賽的培訓教材。
如果把本書當作信息學競賽的培訓教材,那么可以根據不同學生的年齡作如下課時安排。
(1)對于9~12歲(小學中、高年級)的學生,建議將“練一練”部分作為課堂內容完成,每一課的教學時間為180分鐘(4課時)。如果每周安排2課時,共44個教學周完成。
(2)對于12~16歲(初中以上)的學生,建議將“練一練”部分作為課后作業完成,每一課的教學時間為90分鐘(2課時)。若每周安排2課時,共22個教學周完成。
本書在編寫和出版期間得到了多方人士的支持和幫助。中國科學院自動化研究所孫哲南研究員總體策劃了本項目的實施并審閱了全部書稿。北京市西城區教育研修學院的石沙老師、林志奕老師、熊雪亭老師以及北京教育學院石景山分院的牛靜老師幫助聯系了各位顧問,并請各位顧問審閱了書稿內容。
在成書過程中,上海它趣教育科技有限公司的李麗、牛宏偉等完成了書中漫畫的繪制,王舜謙、張思琪等完成了文字的初次校對工作,蘇鶴年等完成了部分程序代碼的校對工作;天津中科智能識別產業技術研究院有限公司的矯金鑫、龐曉靜、梁顏銘、秦蓉等整理了書中的程序代碼,完成了配套資源包的開發以及圖書的校對工作。
本書是在中國科學院自動化研究所智能感知與計算研究中心、天津中科智能識別產業技術研究院有限公司等單位的領導關懷和鼓勵下出版的。此外,本書的出版離不開人民郵電出版社吳晉瑜編輯的大力支持和協助。
在此謹對所有支持和協助本書編寫和出版的人員表示最誠摯的敬意和最衷心的感謝。
由于時間倉促,加之作者水平有限,書中疏漏之處在所難免,希望各位專家和廣大讀者批評指正。另外,書中部分例題和練習來源于信息學奧林匹克競賽試題并稍作改動,特此說明。
張 森
于中國科學院自動化研究所
- PWA入門與實踐
- Learning Apex Programming
- Leap Motion Development Essentials
- Web交互界面設計與制作(微課版)
- Learning Neo4j 3.x(Second Edition)
- 深入淺出RxJS
- Oracle從入門到精通(第5版)
- Unity UI Cookbook
- Visual Studio 2015高級編程(第6版)
- 零代碼實戰:企業級應用搭建與案例詳解
- Learning Ionic
- Tableau Desktop可視化高級應用
- Python網絡爬蟲實例教程(視頻講解版)
- 從零開始學Unity游戲開發:場景+角色+腳本+交互+體驗+效果+發布
- PhoneGap 3.x Mobile Application Development Hotshot