程式設計實習,以C++設計為主 (101學年度第二學期)

Slides:



Advertisements
Similar presentations
第一單元 建立java 程式.
Advertisements

計算機程式語言實習課.
第 2 章 初探 C++.
陳維魁 博士 儒林圖書公司 第九章 資料抽象化 陳維魁 博士 儒林圖書公司.
TQC+ JAVA全國教師研習會 PLWeb 程式設計練習平台 簡介.
C++程序设计 王希 图书馆三楼办公室.
程式語言的基礎 Input Output Program 世代 程式語言 第一世代 Machine language 第二世代
程式設計概論 1.1 程式設計概論 程式語言的演進 物件導向程式 程式開發流程 1.2 C++開發工具
Visual Basic 6.0 學習範本 第三章 基本資料型態.
Visual C++ introduction
簡易C++除錯技巧 長庚大學機械系
資料大樓 --談指標與陣列 綠園.
2 C++ 程式概論 2.1 C++ 程式結構 程式註解 // 插入標題檔 #include 2-3
列舉(enum).
【變數與記憶體位址】 變數(Variable)提供一個有名稱的記憶體儲存空間。一個變數包含資料型態、變數本身的值及它的位址值。
程式設計(二) 參考書目: 1. 洪維恩,C++ 教學手冊 第三版,旗標出版圖書公司。 2
101北一女中 資訊選手培訓營 妳不可不了解的指標 Nan.
第一章 程序的基本结构. 第一章 程序的基本结构 教材及授课结构 本章目标 基本内容 扩展阅读 上机指导 应用举例 习题.
Java程式概觀.
C++ 程式設計— 語言簡介 台大資訊工程學系 資訊系統訓練班.
授课老师:龚涛 信息科学与技术学院 2018年3月 教材: 《Visual C++程序员成长攻略》 《C++ Builder程序员成长攻略》
C語言簡介 日期 : 2018/12/2.
2 C++ 的基本語法和使用環境 親自撰寫和執行程式是學好程式語言的不二法門。本章藉由兩個簡單的程式,介紹C++ 程式的基本結構和開發環境,讓初學者能逐漸建立使用C++ 的信心。
類別(class) 類別class與物件object.
SQL Stored Procedure SQL 預存程序.
安裝JDK 安裝Eclipse Eclipse 中文化
Java 程式設計 講師:FrankLin.
C++语言程序设计 第二章 C++简单程序设计.
切換Dev c++顯示語言 工具->環境選項(V)->介面->language (Chinese TW)
程式設計實習課(四) ----C 函數運用----
第一單元 建立java 程式.
選擇性結構 if-else… switch-case 重複性結構 while… do-while… for…
C++ 程式設計 基礎篇 張啟中 Chang Chi-Chung.
第三章 資料型態與輸出控制 本章學習目標 認識Matlab的基本資料型態 練習資料型態的轉換 學習如何控制Matlab的輸出格式
Name1..hour //加班時數 name2..hour //請假時數
JAVA 程式設計 資訊管理系 - 網路組.
輸入&輸出 函數 P20~P21.
Java變數 2014/6/24.
挑戰C++程式語言 ──第8章 進一步談字元與字串
物件導向程式設計 CH2.
認識常數與變數 學習C++所提供的各種基本資料型態 瞭解溢位的發生 學習認識資料型態之間的轉換
C++程式設計入門 變數與運算子 作者:黃建庭.
第二章 类型、对象、运算符和表达式.
挑戰C++程式語言 ──第7章 輸入與輸出.
流程控制:Switch-Case 94學年度第一學期‧資訊教育 東海大學物理系.
計算機程式設計 老師:蘇炳煌 助教:楊斯竣.
Review 1~3.
第 4 章 認識 SQL 語言與資料型別.
#include <iostream.h>
北一女中 資訊選手培訓營 妳不可不了解的指標 Nan.
選擇性結構 if-else… switch-case 重複性結構 while… do-while… for…
簡單Java介紹.
Introduction to the C Programming Language
變數與資料型態  綠園.
國立台灣大學 關懷弱勢族群電腦課程 By 資訊工程 黃振修
本章主題 C++的程式結構 資料型態與宣告 算術運算 簡易的輸入輸出指令 程式編譯(Compile)的過程與原理.
第四章 陣列、指標與參考 4-1 物件陣列 4-2 使用物件指標 4-3 this指標 4-4 new 與 delete
變數、資料型態、運算子.
C/C++基礎程式設計班 C語言入門、變數、基本處理與輸入輸出 講師:林業峻 CSIE, NTU 3/7, 2015.
Programming & Language Telling the computer what to do
String類別 在C語言中提供兩種支援字串的方式 可以使用傳統以null結尾的字元陣列 使用string類別
變數與資料型態  綠園.
Array(陣列) Anny
資料!你家住哪裏? --談指標 綠園.
Introduction to the C Programming Language
Unix指令4-文字編輯與程式撰寫.
Introduction to the C Programming Language
方法(Method) 函數.
InputStreamReader Console Scanner
C++语言程序设计 C++语言程序设计 第二章 基本数据类型与表达式 第十一组 C++语言程序设计.
Presentation transcript:

程式設計實習,以C++設計為主 (101學年度第二學期) Mr. Lin (甲乙班) Mr. Chau (乙班) Mr. Huan (甲班)

課程教學大綱 一、教學目標(Goal) 使學生能夠認識並熟悉C++程式語言 使學生能夠應用並設計C++程式語言 使學生能具有獨立設計軟體的能力 使學生能具有撰寫小論文的能力 使學生能藉由本課程的訓練進而開發自己的軟體設計潛力

課程教學大綱(續一) 二、上課日期、時間、地點 時間:每週四 地點: 乙班早上8:10~12:00 甲班下午13:05~ 地點:第一電腦教室

課程教學大綱(續二) 三、課程實施方法 本課程主要是以C++教學設計為主,課程全部在電腦教室進行,老師教學實施以投影片及實際操作演練示範為主,白板版書為輔;學生於實作期間可討論問題與分享自己的成品。 本課程主要採分組上課,共六組,每組由老師指定一位組長,副組長由組長自選,組長負責點名、登記攜帶物品、組員出席、組員上課表現(含優缺點)。 課程期間,學生每次上完課必須繳交課堂作業(電子檔與筆記),每三週繳交一個家庭作業 。 考評分為兩次期中考與一次專題製作,與上學期同。

課程教學大綱(續三) 四、評量依據(Rubrics) 本課程採多元評量方式,亦即兩次期中考各佔15%(共30%) 、平時成績20% 、期末專題製作50%。 期中考:以筆試為主,與學校規定之考試同時間。 平時成績:包含課堂作業、家庭作業、上課表現、出席率、應攜帶物品。 期末專題製作:兩人一組,以完成一項作品為主,開始製作前必須先寫一份提案(Proposal),作品完成後必須依此作品寫一份報告,報告格式以小論文為主,並必須上台做專題報告。

課程教學大綱(續四) 五、課程進度 六、其他課程規定 見實習課程進度表 確實遵守電腦教室使用規則,違者依情節輕重已校規處分: 嚴禁攜帶食物、飲料進入電腦教室。 嚴禁攜帶與本課程無關之物品進入電腦教室。 嚴禁隨意安裝無授權之軟體或任何遊戲軟體。 嚴禁在電腦教室喧嘩吵鬧、追逐嬉戲。 電腦教室需脫鞋進入,故請注重個人衛生,隨時保持腳部清潔,以免影響他人上課情緒

第一章 認識C++ C++具有封裝,繼承, 與多型等功能, C沒有 C++有布林型態 Bool, C沒有 其他功能 物件導向 C與C++共 有的功能 迴圈與選擇性敘述 C用結構, C++用 類別取代結構

C++的特色 是一種具有物件導向技術的語言 高效率且可攜性佳的語言 具有靈活的程式流程控制 程式碼的再利用

C++是物件導向語言(OOP) C++是最早具備物件導向的功能,也是最早具有類別(Class)的C語言 物件導向語言(Object Oriented Programming)的三個重要特性: 封裝(Encapsulation) 將資料和函數都包裝在類別內部的技術。 繼承(Inheritance) 將既有類別的功能繼承給新的類別使用。 多型(Polymorphism) 允許相同的名稱的函數針對引數的不同而進行不同的處理動作。

C++程式設計的六大步驟 程式規劃(Programming) 轉寫程式碼與註解(Coding and Marking) 以流程圖方式呈現 轉寫程式碼與註解(Coding and Marking) 增加可讀性與保持記憶 編譯程式(Compiler) 將文字指令轉換成電腦可認識的機器碼 連結程式(Linker) 將零散的機器碼連結 偵錯與測試(DeBug and Test) 針對語法(Syntax)和語意(Semantic)的錯誤做偵測與測試 程式碼的修飾與儲存

C++的開發工具 Bloodshed Dev C++ Visual C++ Microsoft Visual Studio 本課程採用,因為免費、輕便又好用。 Visual C++ Microsoft Visual Studio Borland C++ Builder …..

認識Dev C++的開發環境 表單快速操作區 表單快速操作區 程式執行時 重要按鈕 程式碼撰寫區

第二章 C++的程式語法與架構 // prog1_1, 第一個C++程式 註解 #include <iostream> 將前置處理指令包括進來 #include <cstdlib> 將標準函數庫包括進來 using namespace std; 指名使用使用的名稱空間為std int main(void) 主程式執行的起始點 { 主程式執行的範圍以大括號包起來 cout << "Hello, C++" << endl; // 印出Hello, C++ system("pause"); return 0; } 程式指令碼 程式指令碼 程式指令碼

主程式結構的進一步說明 int main(void) { 主程式無須引數(參數) 主程式傳回整數值 int main(void) { cout << "Hello, C++" << endl; system("pause"); return 0; } 串接運算子 字串顯示到此結束 輸出字串顯示在螢幕上 指令結束符號 System()函數執行暫停指令, 以便使用者可看到顯示資料 Main()順利執行完畢,傳回整數0

識別字與關鍵字的區分 識別字(Identifier) 關鍵字(Key word) 變數、函數、或是類別的名稱 例如指令 cout endl 或自訂函數或類別名稱 識別字第一個字元必須是英文(大小寫配合底線均可),不可有空白字元或特殊字元(如$、%等) 利用習慣命名原則(單字組合模式)命名識別字 關鍵字(Key word) 編譯程式本身所使用的識別字,如 if 、for 、do 、false…等(如Page2-16所示)

錯誤與偵錯(Error and Debug) 語法錯誤(Syntax Error) 指令拼錯、未按照程式規則下指令 例如,字串未加引號,註解未加// 語意錯誤(Semantic Error) 執行結果不符合要求 程式的邏輯有錯誤

第三章 資料型態(Data Type) 認識變數(variant)與常數(constant) 基本資料型態 整數型態(Integer) 字元型態(Chacter) 浮點數(Float)與倍精浮點數(Double) 布林型態(Boolean) 資料輸出輸入指令(Cout, Cin)

認識變數與常數 替變數命名時,最好使用有意義的名稱,唯不可與C++的關鍵字相同。 存放在電腦記憶體中的資料,可以更改其內容者稱為變數(variable),不可更改者稱為常數(constant)。 通常變數設值時會將常數設定給變數。 例如:abc=5; abc是變數,5是常數,資料型態為數值 又如:abc=“AA”; abc是變數,AA是常數,資料型態為字串 替變數命名時,最好使用有意義的名稱,唯不可與C++的關鍵字相同。 當定義資料型態變數之後,電腦會自動依照不同型態的資料變數配給不同大小的記憶體空間。

整數型態(Integer Type) 整數型態有數種,同時也有不同大小的記憶體空間,宣告範例如下: int a //定義a為整數型變數 short int a //定義a為短整數型變數 unsigned short int a //定義a為無符號短整數型變數 long int a //定義a為長整數型變數 unsigned long a //定義a為無符號長整數型變數 實際數值若大於變數儲存範圍則會產生溢位(over fl 可利用sizeof()觀察變數的記憶體空間 4 Bytes: ±2147483648 2 Bytes :±32768 2 Bytes : 0~65535 4 Bytes:±2147483648 4 Bytes :0~4294967295

字元型態(Character Type) 字元型態 字元佔有1byte的記憶體空間 可儲存英文字母或ASCII 宣告範例 char ch=‘h’; //ch為儲存h字元的字元變數 int i=ch; //將字元變數ch內的h字元的ASCII碼(104)指定 給整數型變數i 反過來 Int i=65; //指定65給整數型變數i char ch=i; //將i內的值指定字元變數,則字元變數獲得A字元

跳脫字元 跳脫字元 意義 ASCII之十進位碼 ASCII之十六進位碼 \a 警告音(Alert) 7 0x7 \b 倒退一格(Backspace) 8 0x8 \n 換行(New line) 10 0xA \r 歸位(Carriage return) 13 0xD \t 定位跳格(Tab) 9 0x9 \0 字串結束位元(Null character) 0x0 \\ 反斜線(Backslash) 92 0x5C \’ 單引號(Single quote) 39 0x27 \” 雙引號(Double quote) 34 0x22

浮點數與倍精浮點數型態 (Float and Double Type) 浮點數(Floating point)即是數學中所謂的實數,也就是可以表示含有小數點的數值。 在電腦中記憶體佔用的大小為 4 Byte 。 可表達的小數範圍:1.2e-38~3.4e38。 小數點有效位數有 7 位。 宣告法:float num=6.28f; 或 float num=3.27e32; 倍精度浮點數(Double precision)擴大了浮點數的表示範圍 在電腦中記憶體佔用的大小為 8 Byte。 可表達的小數範圍:2.2e-308~1.8e308 。 小數點有效位數有 16 位。 宣告法:double num; 或 double num=-3.27e64;

布林型態(Boolean Type) 布林型態的變數只有兩種:true(真)和false(假);或者表示為true(1)和false(0)。 宣告範例如下: bool status=false; cout << “目前的狀態是:” << status << endl; bool status=1; 結果 目前狀態是:0 目前狀態是:1

初嚐輸出輸入指令 輸出指令:Cout << 輸入指令:Cin >> Cout << 2+5 << endl; Cout << “這是好玩的C++課程\n”; Cout << “There are “ << abc << “books\n” ; Cout << “5 + 6 = “ << 5+6 << endl; 輸入指令:Cin >> Cin >> a; Cin >>