## C語言程式設計導論 ### Hello World! --- <!-- .slide: data-transition="fade" --> <h3 class="text-left"> Table of Content </h3> - 認識程式 - 如何在電腦上寫C/C++? - Hello World! 實機操作 - C語言是如何運行? <!-- .element: class="fragment" data-fragment-index="1" --> --- <!-- .slide: data-transition="fade" --> ### 認識程式 ---- <!-- .slide: data-transition="fade" --> <span> <b> 「程式」其實就是一種描述執行步驟的語言 <br> </b> </span> <span> <!-- .element: class="fragment" data-fragment-index="1" --> <b> 如同設計房屋的藍圖或是烹飪的食譜 <br> </b> </span> <span> <!-- .element: class="fragment" data-fragment-index="2" --> <b> 通常所說的「程式」是指「電腦程式」 <br> </b> </span> <span> <!-- .element: class="fragment" data-fragment-index="3" --> <b> 就是人類要和電腦溝通的語言 </b> </span> ---- <!-- .slide: data-transition="fade" --> ### 小提醒 <span> <!-- .element: class="fragment" data-fragment-index="1" --> <h2> 電腦很笨 </h2> </span> ---- <!-- .slide: data-transition="fade" --> **程式必須每一行都讓電腦看得懂** **其中我們在撰寫時就要遵守「語法」** **在本課程主要是講 C 語言的語法** ---- <!-- .slide: data-transition="fade" --> ### 認識C語言 ---- <!-- .slide: data-transition="fade" --> <span> <b> C語言是在1972年誕生的程式語言 <br> </b> </span> <span> <!-- .element: class="fragment" data-fragment-index="1" --> <b> 是現代許多程式語言的前輩 <br><br> </b> </span> <span> <!-- .element: class="fragment" data-fragment-index="2" --> <b> 另外一方面 <br> 認識C語言也比較方便理解電腦的其他性質 </b> </span> --- <!-- .slide: data-transition="fade" --> ### 如何在電腦上寫C/C++? ---- <!-- .slide: data-transition="fade" --> - [Code::Blocks IDE](https://www.codeblocks.org/downloads/) - [Dev-C++ IDE](https://sourceforge.net/projects/orwelldevcpp/) <- 初學者可用 - [VScode](https://hackmd.io/@liaojason2/vscodecppwindows) <- 推薦 我都用這個 - [Programiz](https://www.programiz.com/cpp-programming/online-compiler/) <- 線上的 - [OnlineGDB](https://www.onlinegdb.com/online_c++_compiler) <- 線上的 --- <!-- .slide: data-transition="fade" --> ### Hello World! 實機操作 ---- <!-- .slide: data-transition="fade" --> **在C語言幾乎所有程式都會先寫上這幾行** ```cpp #include <stdio.h> int main() { return 0; } ``` **因為很重要 先背起來** **之後的章節會解釋原因** ---- <!-- .slide: data-transition="fade" --> **開啟編輯器並寫上** ```cpp #include <stdio.h> int main() { printf("Hello World!"); return 0; } ``` --- <!-- .slide: data-transition="fade" --> ### C語言是如何運行? ---- <!-- .slide: data-transition="fade" --> **在我們現代電腦都是圖像化界面的時代** **有點難想像以前的電腦都是要透過指令來操作電腦** ---- <!-- .slide: data-transition="fade" --> <span> <b> 事實上 <br> </b> </span> <span> <!-- .element: class="fragment" data-fragment-index="1" --> <b> 要執行一個程式或是檔案 <br> 並不只是按個按鈕這麼簡單 <br> </b> </span> <span> <!-- .element: class="fragment" data-fragment-index="2" --> <b> <br> 接下來會介紹C語言的程式 <br> 在按下按鈕之後 <br> 到底在內部做了什麼 </b> </span> ---- <!-- .slide: data-transition="fade" --> <h3 class="text-left"> 程式編譯流程 </h3> 1. **前處理 Preprocess:** **把內建的stdio.h的檔案抓下來** 2. **編譯 Compile:** **將程式碼化為電腦看得懂的組合語言** 3. **組譯 Assemble:** **將組合語言組譯為目的程式(.obj)** 4. **連結 Link:** **將.obj檔化為電腦的執行檔(.exe)** 5. **執行 Execute:** **執行.exe檔** <!-- .element: class="fragment" data-fragment-index="1" --> ---- <!-- .slide: data-transition="fade" --> <h3 class="text-left"> 流程圖 </h3> ```mermaid graph LR; id1[/前處理 /] id2[/編譯 /] id3[/組譯 /] id4[/連結 /] id5[/執行 /] id1-->id2-->id3-->id4-->id5 ``` ---- **總而言之 這些步驟就是** ```mermaid graph LR; id1[/人類看得懂的程式碼/] id2[/電腦看得懂的指令/] id3[/執行結果/] id1-->|翻譯|id2-->|執行|id3 ``` ---- <!-- .slide: data-transition="fade" --> **如此一來程式就完成了編譯並且執行** ---- <!-- .slide: data-transition="fade" --> <b> 事實上 </b> **現在的電腦仍保留可以用指令操作的方法** <!-- .element: class="fragment" data-fragment-index="1" --> ---- **在Windows系統裡** **只要在檔案所在的資料夾點下右鍵** **點選終端機(Terminal) 並打上以下指令** ``` gcc filename.c -o filename ``` **這樣也可以完成編譯** ---- **然後再寫上** ``` ./filename ``` **即可執行檔案** --- ### 以上就是本章節的內容 ### 本章節沒有建議的例題練習 <!-- .element: class="fragment" data-fragment-index="1" -->
{"slideOptions":"{\"tags\":\"presentation\",\"slideOptions\":{\"theme\":\"solarized\",\"transition\":\"fade\"}}","title":"C程式設計導論-Hello World!","contributors":"[{\"id\":\"4f67a8cd-06ae-45dc-a8e3-62c6a41e5a37\",\"add\":5118,\"del\":963}]","description":"Hello World! 實機操作"}
    594 views