課程資訊
課程名稱
C/C++程式設計
C/C++ Programming 
開課學期
110-2 
授課對象
 
授課教師
張傑帆 
課號
CSIE1928 
課程識別碼
902 48150 
班次
 
學分
3.0 
全/半年
半年 
必/選修
 
上課時間
星期一5,6,7(12:20~15:10) 
上課地點
綜302 
備註
限非電資學院學生選修。。A6:量化分析與數學素養
總人數上限:80人 
 
課程簡介影片
 
核心能力關聯
核心能力與課程規劃關聯圖
課程大綱
為確保您我的權利,請尊重智慧財產權及不得非法影印
課程概述

C/C++是最基本也是目前最常使用之程式語言。C/C++ 至今仍是最流行的程式開發工具,從硬體、軟體的設計,到韌體、系統的開發,隨處都可以看到 C/C++ 的影子。掌握了 C 基本程式的技巧,可以讓同學體會到電腦處理資訊的能力。所以學習程式設計的入門必以C/C++為首選。而C++則是基於C語言的基礎而開發出新一代擁有物件導向程式設計(OOP)觀念的程式語言,而OOP在大型軟體的設計之中也扮演著重要角色。它讓整個軟體開發更容易分工清楚,增進了開發效率。即使是使用其他擁有OOP觀念的程式語言(如:Java),C++的OOP觀念也將使您在學習這類語言時輕鬆許多。
最新最夯的當紅熱門的創客與自造者(Maker)神器之一的 Arduino 的應用開發程式語言,也是以C/C++(C-Like)做為基礎開發語言,學會C/C++對學習與使用 Arduino 將會變得事半功倍。

※ 本課程將採用半線上混合式課程方式上課,採一週線上課程,隔週實體課程討論與解答的方式上課,增加時間利用效率。

各章節內容:
第一章:C語言入門 - 資料型態、變數與基本輸入輸出
第二章:流程控制敘述 - 判斷式與迴圈
第三章:陣列 - 一維陣列二維陣列
第四章:字元與字串
第五章:指標
第六章:函式
第七章:結構與檔案處理
第八章:導入C++ - 物件的使用、參考型態、重載函式
第九章:C++: 物件導向程式設計
第十章:C++: 類別的朋友關係、重載運算子與繼承


加簽方式
本學期課程採用的加選方式為:
第二類:教師發給「加選授權碼」,自行管控學生修課資格及人數,學生再依教師發給之授權碼上網加選。

初選開放80人
預計會開放20個「加簽碼」的名額
另外視情況開放「特殊加簽」的名額(不特定人數)
我將會在第一堂課的的課程說明後
再開放填寫「報名加簽」的表單
建議在第一堂課的時候先聽過課程的說明
確定想要加選這門課再進行報名填寫
屆時將以表單的填寫狀況進行篩選

[助教聯絡資訊]
姓名:翁子傑
E-mail:ntu-GenEdu5005-c-cpp-ta@googlegroups.com
 

課程目標
C/C++是廣泛使用全功能性的通用程式語言,而且歷史悠久,發展得相當成熟,透過我們設計的課程你將快速的學會C/C++來解決你所遇見的問題,或是燒錄進Arduino之中實現你創新的想法,課程將會從零開始,會使用大量的範例教學,讓即使是第一次學習程式的學生們也能快速上手,讓學生們習得程式設計的邏輯與語法,為成為學習其它程式語言或是開發互動式裝置的基石。 
課程要求
[評量]:
時間:2022/05/30 (週一)下午12:20~15:10 (如有改期將另行公告通知)
地點:計中116 (請提前10-15分鐘到場準備,如場地有變更將另行公告通知)

[評分標準]:
1.作業 (40%):線上批改系統的指定作業
2.期末考 (60%):上機實作,考核當天現場公布由線上批改系統進行線上考核 (若系統無法使用將改採 pdf公佈考題) 需要參與考核評量,如無考核分數直接「F」

[混合課程考核規範]:
1.在一個將連外網路全部封閉的電腦教室進行考試。
2.考題為透過實際撰寫C/C++程式語言來完成題目所描述的結果。
3.考題由考試當天現場公布。
4.除因不可抗力外不接受補考、不接受更改考評時間。

[本課程考核的技能標準] :
1.熟悉基本C/C++程式設計邏輯
2.熟悉基本程式流程控制
3.使用C/C++讀取與寫入檔案
4.使用C/C++設計物件導向程式

課後學習
學生必須自行瀏覽網路課程內容與練習各章節之考題。  
預期每週課後學習時數
 
Office Hours
 
指定閱讀
1. 本課程影片
https://cool.ntu.edu.tw
NTU cool影音片台 (開課後以email發課程邀請信)
2. 線上批改練習系統
https://jgirl.ddns.net
※ 加選成功後,待選課名單同步到NTU Cool後建立帳號 (包括手動加簽人數確定后才會統一建立(約第四週),建立成功后會發信息通知全班。)
※ 若公告已建立帳號後,仍有同學還沒有帳號的請email給助教,幫你建立(請說明學號、課程名稱及班別)  
參考書目
C How to Program - Deitel, Harvey M.; Deitel, Paul J.
C++ How to Program - Deitel, Harvey M.; Deitel, Paul J. 
評量方式
(僅供參考)
 
No.
項目
百分比
說明
1. 
期末考 
60% 
 
2. 
作業 
40% 
課程進度與影片觀看進度可參考作業範圍 共會有四次作業,一次佔總分10% 作業範圍 第1次: 第一章:C語言入門 - 資料型態、變數與基本輸入輸出 第二章:流程控制敘述 - 判斷式與迴圈 第2次: 第三章:陣列 - 一維陣列二維陣列 第四章:字元與字串 第五章:指標 第3次: 第六章:函式 第七章:結構與檔案處理 第八章:導入C++ - 物件的使用、參考型態、重載函式 第4次: 第九章:C++: 物件導向程式設計 第十章:C++: 類別的朋友關係、重載運算子與繼承  
 
課程進度
週次
日期
單元主題
第0週
  週次進度請參見課程說明、作業進度與公告