東方博宜教育:青少年趣味編程 |
課程 | 階段 網頁界面制作基礎 |
網頁界面制作基礎 | . 網頁的基本結構和布局講解; |
. 網頁的基本結構、元素構成(文本、多媒體元素)、標簽的組合; |
. 常見小游戲界面的組成部分; |
. 在界面中使用表格排版; |
. 對界面中的表格進行修飾; |
. 在界面中增加表單提供用戶的輸入; |
. 案例:寵物頁面的制作、校園新聞頁面的制作、校園活動報名頁面的制作、小游戲界面的制作; |
課程 | 第二階段 網頁界面制作進階 |
網頁界面制作進階 | . 利用DIV來完成復雜頁面的布局; |
. 利用CSS來美化復雜頁面,提升頁面的美觀度; |
. 案例:學校網頁的制作,復雜小游戲界面的制作; |
課程 | 第三階段 動畫腳本制作 |
Javascript腳本 | . Javascript基本變量定義、常見JS數據類型、JS基本運算與表達式; |
. 基本對話框、分支、循環語句(for、while)講解,循環應用講解; |
. Javascript的 Object、Function、String 和 正則表達式、常用內置對象、時間控制、常用的函數等; |
. 常見的JS鼠標事件、鍵盤事件,利用JS修改網頁中的元素、利用JS修改CSS等效果、JS網頁端驗證、JS導航、網頁; |
. 案例:、抽獎、打分、計算器、游戲人物跑步等小游戲的制作; |
| . 綜合案例:利用CDR完成VI(企業視覺傳達系統)、畫冊排版、海報等的制作; |
綜合項目實戰 | . 通過教員的指導與學員的練習,每位學員在規定的時間內完成一套完整移動設備或穿戴設備上的界面設計,公益、商業海報各一份并制作成品。 |
. 綜合案例:移動設備界面設計、海報設計制作。 |
東方博宜教育青少年編程(C++)課程大綱 |
階段 C++程序設計語法基礎 |
課程 | 學習內容 |
C++語言及其設計 | . 計算機語言及程序的介紹 |
. C++語言的介紹及舉例 |
. C++語言的運行步驟 |
. 程序設計的具體步驟 |
. C++的基本算法表示 |
. 綜合案例:掌握C++語言環境的搭建及代碼的編寫執行流程 |
簡單的順序程序設計 | . 順序程序的設計和舉例 |
. 數據的基本介紹和運算 |
. C++語言的語句、數據的流入和流出 |
. 綜合案例:利用C++運算解決拆位、加密、面積運算、等基本問題 |
C++語言中的分支語句 | . 選擇結構的介紹:if語句 |
. 邏輯、關系、條件運算符的關系和表達式的介紹 |
. switch語句的介紹及舉例 |
. 綜合案例:利用分支語句,解決成績等級轉換、行李托運費用運算、三角形判斷、阿姆斯特朗數判斷等問題 |
C++的循環語句 | . while循環講解(do while循環講解) |
. for循環講解 |
. break和contiue關鍵字的使用 |
. 循環的嵌套 |
. 基本窮舉算法講解 |
. 綜合案例:利用循環語句解決水仙花數、素數(質數)判斷、圖形輸出、乘法表輸出、求解購買動物的方案數等問題; |
C++語言中數組的運用 | . 數組的定義和引用 |
. 數組的基本操作(查找、插入、刪除) |
. 數組應用的案例 |
. 綜合案例:利用數組解決超市價格打折、排隊、比賽評分等相關問題 |
指針的介紹 | . 指針的定義、指針形式存在的變量 |
. 指針怎樣引用數組、字符串 |
. 指針指向函數、指針中的數組和多重指針 |
. 綜合案例:利用指針解決函數多個值返回、數組和字符串的函數傳入等 |
字符數組講解 | . 字符數組的定義和基本語法規范 |
. 字符串的讀入和基礎操作 |
. 系統定義的常見字符串的函數講解 |
. 字符串常見應用問題的講解 |
. 基本窮舉算法講解 |
. 綜合案例: 利用字符串的知識點求解回文字符串的判斷、掃描識別、求一句英文的各類字符的數量、計算一句英文長單詞等各類字符串問題; |
模塊化程序設計中函數的應用 | . 函數在程序設計中的介紹 |
. 在程序設計中函數的調用 |
. 函數的遞歸、嵌套調用 |
. 函數參數:數組、函數中的變量類型 |
. 變量的存儲方式和生命周期 |
. 內部函數和外部函數的介紹 |
. 綜合案例:利用函數解決純粹素數、親密數對、進制轉換等相關問題 |
第二階段 程序設計語法進階與算法訓練 |
課程 | 學習內容 |
數組進階 | . 數組常見的排序算法(冒泡排序、插入排序、選擇排序) |
. 數組統計每個數字出現次數等進階算法的學習 |
. 二維數組(矩陣)圖形輸出、二維數組的應用 |
. 綜合案例:排序數組元素、求數組的眾數、去除數組的重復數字、求數組每個數字出現的次數等各類數組進階問題講解 |
函數進階 | . 函數的嵌套調用 |
. 函數的遞歸調用 |
. 各類函數的進階問題講解 |
. 綜合案例: 求小木塊數量、孿生素數、親密數對、斐波拉契數列等各類函數問題的求解 |
建立自己的數據類型 | . 結構體變量的定義和使用 |
. 結構體指針、使用指針處理鏈表 |
. 共用體類型、其他類型的聲明與使用 |
. 綜合案例:利用結構體解決班級學生信息統計、成績統計等實際問題 |
文件的輸入與輸出 | . C++中文件的基本知識 |
. C++中文件的關閉與打開 |
. 數據文件的順序讀寫、隨機讀寫、錯誤檢測 |
. 綜合案例:利用文件讀寫掌握文件的拷貝、刪除等實際問題 |
進制轉換 | . 二進制、八進制、十進制、十六進制等各類進制的基本計算、作用; |
. 各類進制和十進制互換; |
. 二進制和八進制、十六進制的快速轉換; |
. 綜合案例:學會表達各類進制并學會進制之間的互換; |
高精度運算 | . 高精度的作用,為什么要做高精度運算 |
. 高精度的加法、減法、乘法、除法、平方、階乘等各類運算 |
. 綜合案例:掌握數百位的數的各類運算,學會使用高精度來解決大數的問題; |
排序算法 | . 常見的排序算法:選擇排序、冒泡排序、插入排序、桶排序、快速排序、歸并排序、逆序對等算法的掌握; |
. 掌握各類排序的算法效率的對比,能夠在不同場景下解決不同的排序問題; |
. 綜合案例:掌握各類排序算法及算法復雜度、穩定性、特點對比; |
窮舉算法 | . 窮舉算法進階與習題訓練; |
. 綜合案例:利用窮舉算法解決百錢白雞、兌換硬幣、姐妹數對、等差素數組等各類窮舉問題; |
搜索和回溯 | . 掌握搜索和回溯的解決問題的策略; |
. 綜合案例:國際象棋八皇后問題、象棋馬的行動路徑數量求解、單詞接龍等各類回溯問題的求解和掌握;搜索和回溯的效率探討; |
習題訓練 | . 綜合習題強化訓練; |
第三階段 進階算法訓練 |
課程 | 學習內容 |
遞推算法 | . 遞推規律的總結; |
. 尋找遞推規律后的程序求解; |
. 綜合案例:利用遞推的思路解決類似燈塔問題、象棋過河卒的可行路徑問題、漢諾塔、Pell數列等各類實際問題 |
遞歸算法進階 | . 漢諾塔的遞歸; |
. 集合的遞歸劃分; |
. 數的計數問題; |
. 排列問題的遞歸等; |
. 綜合案例:掌握遞歸算法進階,用來解決復雜的遞歸問題,并了解遞歸的效率; |
貪心算法 | . 掌握貪心策略,并能夠熟練利用貪心策略解決各類問題; |
. 綜合案例:排隊打水問題、攔截導彈的系統數量求解、過河問題等各類貪心策略問題求解; |
分治算法 | . 掌握分治的思想和解決問題的策略; |
. 了解分治的效率; |
. 綜合案例:掌握尋找有序數列的數的二分查找法、分治后的快速排序、黑白子的移動策略、河中跳房子等各類分治問題的求解; |
廣度優先搜索算法 | . 廣度優先搜索的搜索思路和策略; |
. 廣度優先搜索的注意點,掌握圖的基本知識; |
. 綜合案例:求解兩個城市的少路徑、求解棋子到達指定位置的少步數、迷宮問題求解等廣度優先搜索算法求解; |
動態規劃 | . 動態規劃的策略; |
. 動態規劃的基本模型組成; |
. 背包問題的討論; |
. 綜合案例:挖地雷的算法、合唱隊形求解、登山問題、摘花生問題等動態規劃問題求解; |
習題訓練 | . 綜合習題強化訓練; |
第四階段 數據結構及應用 |
課程 | 學習內容 |
棧結構 | . 棧的結構講解; |
. 實現棧的結構; |
. 入棧算法; |
. 出棧算法; |
. 棧的應用; |
. 綜合案例:掌握火車車廂調度、表達式計算等各類棧結構問題; |
隊列結構 | . 隊列的結構講解; |
. 實現隊列的結構和隊列; |
. 隊列的存儲、遍歷、刪除等算法; |
. 綜合案例:利用隊列解決班級排座位、連通塊、奇怪的電梯等各類隊列問題; |
鏈表結構 | . 鏈表的結構和作用; |
. 單向鏈表的實現及基本操作:新建鏈表、鏈表遍歷、插入元素、刪除元素等; |
. 循環鏈表的實現及基本操作:新建鏈表、鏈表遍歷、插入元素、刪除元素等; |
. 綜合案例:利用鏈表解決約瑟夫問題、找兔子洞等各類鏈表問題; |
樹結構 | . 樹結構的定義和作用; |
. 利用數組實現樹結構; |
. 找樹的根節點和孩子節點; |
. 樹的遍歷; |
. 二叉樹的定義和基本操作:新建二叉樹、二叉樹的元素插入、二叉樹的結構刪除、元素查找等; |
. 綜合案例:利用樹結構解決單詞查找樹、FBI樹、對稱二叉樹各類問題;掌握樹結構的基本構成及常見的應用,探討樹結構操作過程的效率; |
堆結構 | . 堆結構的定義講解; |
. 堆的性質和常見操作:添加節點、遍歷堆、刪除節點等各類操作; |
. 綜合案例:利用堆結構解決合并水果、魚塘釣魚、堆排序等各類問題; |
習題訓練 | . 綜合習題強化訓練; |