標籤:text 構造 can 逗號 轉義符 說明 ++ 說明符 保留字
**C語言程式的基本結構**
```c
#include <stdio.h> // #include 預先處理指令
void main()
{
printf(“Hello World!\n”);
}
```
- 前置處理器指令非必須,若有,放在程式開始處
- 以.h結尾的檔案是標頭檔
- stadio.h檔案包含有關輸入輸出語句的函數
- main()函數是C語言程式處理的起點
- main()函數可以返回一個值,也可以不返回。沒有傳回值時,前面關鍵字時viod
- printf列印命令,在螢幕上列印“”內的內容
- \n 換行
**注釋**
- 單行注釋 //
多行注釋 /* */
**C語言的編譯和執行**
- 編譯:形成目標代碼/檔案。目標代碼是編譯器的輸出結果,常見副檔名為”.o” 或”.obj”
- 串連:將目標代碼跟C函數庫相串連,並將來源程式所用的庫代碼與目標代碼合并形成最終可執行檔二進位機器代碼(可執行程式)
- 執行:在特定的機器環境下運行C應用程式
**C語言變數命名規則**
- 只能由字母、數字和底線3種字元組成,且第一個字元必須為字母或底線;
- 變數名不能包含除 _ 以外的任何特殊字元,如:%、 # 、逗號、空格等;
- 不可以使用保留字。
**C語言基礎資料型別 (Elementary Data Type)**
- 數實值型別, 包括整形(int、short、long)、浮點型(float、double)。
- 字元類型, 包括char。
- 其他類型, 包括構造類型、指標類型、空類型等
**C語言常用資料類型**
資料類型類型說明符位元取值範圍
資料類型 |
類型說明符 |
位元 |
取值範圍 |
整型 |
int |
32 |
-2147483648 ~ +2147483647 |
短整型 |
short |
16 |
-32767 ~ +32768 |
長整型 |
long int |
32 |
-2147483648 ~ +2147483647 |
單精確度浮點型 |
float |
32 |
-3.4E-38 ~ +3.4E+38 |
雙精確度浮點型 |
double |
64 |
1.7E-308 ~ 1.7E308 |
字元型 |
char |
8 |
-128 ~ +127 |
**聲明和使用變數**
- 只聲明變數:資料類型 變數名;
- 聲明時初始化:資料類型 變數名 = 值;
- 聲明變數後初始化: 資料類型 變數名; 變數名 = 值;
= 賦值 即 後面的數值賦給前面的變數
**常用ASCLL碼**
- 0:Null 字元 \0
- 32:空格
- 65~69:A~Z
- 97~122:a~z
**printf函數和轉換字元**
- %d:有符號十進位整數
- %c:單個字元
- %s:字串
- %f:浮點數,預設精確到6位小數,可以用%.xf精確到到小數點後x位
- %%:列印一個百分比符號
**逸出序列**
- \a 蜂鳴警報
- \n 換行 將游標移到下一行的開始處
- \t 水平製表 將游標移到下一個水平製表位置
**scanf函數**
scanf可以讀取不同格式的資料
用法:
```c
int num;
printf("請輸入數量:");
scanf("%d", &num); //&轉義符號
```
**轉換字串和含義**
- %d:把輸入解釋成有符號整型
- %c:把輸入解釋成字元型
- %s:把輸入解釋成字串
- %f:把輸入解釋成單精確度浮點數
- %lf:把輸入解釋成雙精確度浮點數
**算數運算子**
- 一元運算子:++、--
- 二元運算子:+、-、*、/、%
**前置++和後置++**
- i++是先取i值做計算,運算完最後再+1;
- ++i是先+1,再取i值做計算。
**自動類型轉換**
把表示範圍小的類型的值轉換到表示範圍大的類型的值
double result = 5 / 2; // 5 和 2是整形 先做除法,結果為2
在2賦值給double類型的result時,將自動轉換為double類型2.0
**強制類型轉換**
(類型名)變數或數值
20171129 C語言知識點梳理