Introduction to the C Programming Language

Slides:



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

補充: Input from a text file
題目:十六對一多工器 姓名:李國豪 學號:B
程式設計概論 1.1 程式設計概論 程式語言的演進 物件導向程式 程式開發流程 1.2 C++開發工具
高级语言程序设计 主讲人:陈玉华.
C++ 程式設計— 語言簡介 台大資訊工程學系 資訊系統訓練班.
Introduction to the C Programming Language
物件導向程式設計 CH1, CH2.
C的發展史 C程式初體驗 C程式設計基本注意事項 上機實習課程
Chen Yi Fen The C Language Chen Yi Fen
2 C++ 程式概論 2.1 C++ 程式結構 程式註解 // 插入標題檔 #include 2-3
列舉(enum).
程式設計(二) 參考書目: 1. 洪維恩,C++ 教學手冊 第三版,旗標出版圖書公司。 2
適用於多選一 可減少if 與 else配對混淆的錯誤.
If … else 選擇結構 P27.
C 程式設計— 語言簡介 台大資訊工程學系 資訊系統訓練班.
Introduction to the C Programming Language
Java程式概觀.
C++ 程式設計— 語言簡介 台大資訊工程學系 資訊系統訓練班.
STRUCTURE 授課:ANT 日期:2010/5/12.
1. 檔案File  開新New  檔案Empty File (再另存新檔D:\hello.c)
第一章 C語言概論 本章投影片僅供本書上課教師使用,非經同意請勿拷貝或轉載.
類別(class) 類別class與物件object.
SQL Stored Procedure SQL 預存程序.
安裝JDK 安裝Eclipse Eclipse 中文化
C++ 程式設計— 語言簡介 台大資訊工程學系 資訊系統訓練班.
2017 Operating Systems 作業系統實習 助教:陳主恩、林欣穎 實驗室:720A.
Instructor:Po-Yu Kuo 教師:郭柏佑
計數式重複敘述 for 迴圈 P
切換Dev c++顯示語言 工具->環境選項(V)->介面->language (Chinese TW)
程式設計實習課(四) ----C 函數運用----
第一單元 建立java 程式.
PLC-GPPW軟體使用教學 授課教師:張祖烈
第0章作业: 教材P12-练习与实践 1.写出用符号’*’输出描绘汉字”大”的流程图。
C++ 程式設計 基礎篇 張啟中 Chang Chi-Chung.
開始使用Visual C++.
雲端計算.
輸入&輸出 函數 P20~P21.
挑戰C++程式語言 ──第8章 進一步談字元與字串
認識常數與變數 學習C++所提供的各種基本資料型態 瞭解溢位的發生 學習認識資料型態之間的轉換
輸出與輸入(I/O).
C qsort.
第一章 C语言概述 目录 什么是语言、程序 C语言的历史与发展 C语言的书写形式与程序结构 运行C语言的步骤与方法
第二章 类型、对象、运算符和表达式.
Introduction to the C Programming Language
挑戰C++程式語言 ──第7章 輸入與輸出.
計算機程式設計 老師:蘇炳煌 助教:楊斯竣.
簡單Java介紹.
Introduction to the C Programming Language
2018 Operating Systems 作業系統實習 助教:林欣穎 實驗室:720A.
適用於多選一 可減少if 與 else配對混淆的錯誤.
作業系統實習課(二) -Scheduler-Related System Calls-
Introduction to the C Programming Language
C/C++基礎程式設計班 C語言入門、變數、基本處理與輸入輸出 講師:林業峻 CSIE, NTU 3/7, 2015.
Programming & Language Telling the computer what to do
Chapter 6 函數.
開發Java程式語言的工具 JDK.
String類別 在C語言中提供兩種支援字串的方式 可以使用傳統以null結尾的字元陣列 使用string類別
變數與資料型態  綠園.
Array(陣列) Anny
第三章 流程控制 程序的运行流程 选择结构语句 循环结构语句 主讲:李祥 时间:2015年10月.
C語言程式設計 老師:謝孟諺 助教:楊斯竣.
輸出執行結果到螢幕上 如果要將執行結果的文字和數值都「輸出」到電腦螢幕時,程式要怎麼寫? class 類別名稱 {
Introduction to the C Programming Language
Unix指令4-文字編輯與程式撰寫.
函式庫補充資料 1.
C语言基础学习 从外行到入门.
Introduction to the C Programming Language
隨機函數.
InputStreamReader Console Scanner
Presentation transcript:

Introduction to the C Programming Language

程式碼的編譯 一般來說,程式碼編輯完成後,必須轉換成機器所能理解的語言(即機器碼,machine code)後,才能正確的執行。 所有的程式語言中,都附有這種轉換的程式,而轉換程式可概分成兩種,即直譯器(interpreter)與編譯器(compiler)。 C語言是屬於編譯器的一種。

C語言的編譯及連結過程 撰寫程式 編譯器 (Compiler) 連結程式 (Linker) 原始程式 (xxx.c) 函數庫 (Library) 連結程式 (Linker) 目的檔 (xxx.obj) [ 參閱 : C語言教學手冊 1-15 ~ 1-17 , 洪維恩著 ] 利用文字編輯程式(text editor) 撰寫一原始檔案(.c), 所有的原始檔都要有.c的擴充檔名,否則將不會正確 地被編譯程式認出來. 此原始檔案經由編譯程式(complier)產生目的檔(.obj), 1. 編譯程式除了要檢查原始程式的語法,定義的變數名稱 等等是否正確之外,還要將標頭檔讀進來,根據這個標頭檔 的內容所記載之函數的定義,檢查程式中所使用的函數用法 是否合乎規則. ] 2. 目的檔即代表一個已經編譯過且沒有錯誤的程式. 可是雖然 目的檔的內容是正確的,但它不代表執行結果會完全正確, 因為它無法替您檢查出邏輯上的錯誤. 連結程式(linker)會將其他的目的檔及所呼叫的函數庫(library) 連結在一起後,產生一可執行檔(.exe). 函數庫 : C語言已經將許多常用的函數寫好,並將這些函數分門別類 (如數學函數,標準輸出輸入函數等),當你想要使用這些函數時, 只要在程式中載入它所屬的標頭檔就可以使用它們.這些不同 的函數集合在一起,就把他們統稱為函數庫. 執行檔 (xxx.exe)

簡 單 的 C 程 式 範 例 #include<stdio.h> #include<stdlib.h> /* prog1_1 , 第一個C程式碼 */ #include<stdio.h> #include<stdlib.h> void main(void) { printf("First C program!\n"); /*在螢幕上印出 ””內的字串*/ printf("享受C的樂趣\n!"); system("pause"); /*暫停程式的執行*/ } 原始的程式碼 說明: 1. #include<stdio.h> : 將stdio.h這個檔案含括進來,並置於#include這行敘述的地方. 2. main() : 程式執行的起點,所執行的是{ }內的內容. 3. 空格,跳格,換行,對編譯程式來說是看不到的,故可利用“縮排” 來增加 “可讀性”

程式碼的編輯、撰寫 下面視窗為鍵入程式碼之後的情形: 說明: 1. #include<stdio.h> : 將stdio.h這個檔案含括進來,並置於#include這行敘述的地方. 2. main() : 程式執行的起點,所執行的是{ }內的內容. 3. 空格,跳格,換行,對編譯程式來說是看不到的,故可利用“縮排” 來增加 “可讀性”

程式碼的編輯、撰寫 選擇『檔案』功能表裡的『儲存』即可儲存檔案。 存檔類型需存成 .c 檔 說明: 1. #include<stdio.h> : 將stdio.h這個檔案含括進來,並置於#include這行敘述的地方. 2. main() : 程式執行的起點,所執行的是{ }內的內容. 3. 空格,跳格,換行,對編譯程式來說是看不到的,故可利用“縮排” 來增加 “可讀性”

基本資料型態 C語言常用的四種資料型態: 例如: char name; /*宣告一個變數name為字元資料型態*/ char(字元) character int(整數) integer float(浮點數) single-precision floating point double(倍精度浮點數) double-precision floating point 例如: char name; /*宣告一個變數name為字元資料型態*/ int num; /*宣告一個變數num為整數資料型態*/ float grade; /*宣告一個變數grade為浮點資料型態*/

輸入與輸出 C常用的資料型態: 輸出:printf 輸入:scanf int (%d), char(%c), float(%f), double(%lf) 輸出:printf 例:printf(“X的值為%d”, x); 輸入:scanf 例:scanf(“%d”, &x);

C程式練習 #include<stdio.h> int main(void) { int num=5; /* 宣告一個名為num的整數型態變數 */ printf(“Hello C Program\n"); printf(“num的值為:%d",num); system("pause"); return 0; }

解 析 C 語 言 include指令與標頭檔: main()函數: 大括號、本體 在C語言裡,性質相近的格式定義會放在同一個標頭檔裡。 每ㄧ個C程式都必有一個main()函數,而且只能有一個。 所有C程式都是由main()函數開始執行,所執行的是{ }內的內容。 大括號、本體 以main()函數而言,左大括號({)與右大括號(})之間的程式碼就是main()函數的本體(body)。 本體內的每個指令敘述需以分號『;』做結尾。 1.stdio.h 與 stdlib.h 都稱為標頭檔(header file)。 2.例如:stdio.h 提供了輸入/輸出的函數 math.h提供了數學函數(如平方、立方、開根號)。

簡 單 的 C 程 式 範 例 讀取輸入值並設定給num變數 #include<stdio.h> #include<stdlib.h> int main(void) { int num; /* 宣告一個名為num的整數型態變數 */ printf(“How old are you?"); /* 呼叫printf()函數 */ scanf("%d",&num); printf("You are %d years old\n",num); system("pause"); return 0; } /* 將stdio.h這個檔案含括(include)進來*/ /*將stdlib.h這個檔案含括(include)進來*/ 定義了main函數,{}內為main的主體 C語言的註解。 C是以 " /* "及 " */ “ 記號來包圍註解文字. 讀取輸入值並設定給num變數 說明: 1.stdio是standard input/output(標準輸入/輸出)的縮寫。C語言裡只要有關輸入與輸出的格式均是 定義在這個檔案裡。 2.因為system()函數是定義在stdlib.h裡,所以要include進來。 2. main() : 所有的C程式都是由main()開始執行,所執行的是{ }內的內容. 3. { }: 代表程式的開始與結束 4. /* */ : C程式的註解,以“/*”及“*/”記號來包圍註解的文字. 5. 分號(;) : 代表敘述(statement)的結束符號. printf函數會先把『%d』這個符號以num的值來取代。 再將雙引號內的文字輸出到螢幕上。

跳脫字元(Escape Sequences) \a alert (bell) character \\ backslash \b backspace \? question mark \f formfeed \' single quote \n newline \" double quote \r carriage return \000 octal number \t horizontal tab \xhh hexadecimal number \0 null character 倒斜線(\),代表“脫離”字元(或稱首前導標識),使得在解譯字串時脫離正常的方式,而使下一個字元具特殊意義 \b:到退一格 \f:跳頁 \n:換行 \r:倒回同列的開始處 \t:跳8個字元