在程序運行過程當中,其值不能被改變的量。ide
#define PI 3.14 #注意行末沒有分號
注:符號常量不佔內存,只是一個臨時符號,表明一個值,在預編譯後這個符號就不存在了,故不能對符號常量賦新值。函數
二、變量在程序運行過程當中,其值發生改變的量。(變量必須先定義,後使用)測試
變量名:其實是以一個名字表明的一個存儲地址。對象
變量值:經過變量名找到相應的內存地址,從該存儲希望中讀取數據。blog
三、常變量C99容許使用常變量,方法是在定義變量時,前面加一個關鍵字const內存
const float pi =3.1415926 //定義常變量四、標識符
只能由數字、字母和下劃線三種字符組成,且第一個字符不能以數字開頭。字符串
五、數據類型類型:對數據分配存儲單元的安排,包括存儲單元的長度(佔多少字節)以及數據的存儲形式。不一樣的類型分配不一樣的長度和存儲形式。get
注:在存儲單元中的存儲(整數)方式,用補碼進行表示,且存放整數的存儲單元中,最左面一位用來表示符號的(0:表示數爲正,1:表示數爲負)。it
#include
測試不一樣整數類型所佔的字節數的代碼以下:編譯
#includevoid main() { printf("int:%d bytes\n",sizeof(int));/*int在Tc2.0中字節數爲2,在VC中爲4*/ printf("short:%d bytes\n",sizeof(short));/*short型的字節數爲2*/ printf("long:%d bytes\n",sizeof(long)); /*long型的字節數爲4*/}
其中sizeof的做用是求對象在計算機內存中所佔用的字節數。通常形式爲:sizeof(object),object能夠是變量、表達式或者數據類型名。
注:凡是以小數形式或指數形式出現的實數均爲浮點型常量,在內存中都是以指數形式存儲。
C語言運算符重點
注:不一樣類型數據間的混合運算除了用戶強制轉化,編譯系統也會自動完成,用戶沒必要過問。(自動完成數據轉換的稱爲隱式轉換,即低級數據類型向高級數據看齊(如char向int轉換))
C語言語句一個函數由數據聲明部分和執行語句組成。
{ x=y+z; a=b+c; printf("%d%d",x,a); }
小題一練
一、設圓半徑r=1.5,圓柱高h=3,求圓周長、圓面積、圓球表面積、圓球體積、圓柱體積。
要求:使用scanf輸入數據,輸出計算結果,輸出時要求有文字說明,去小數點後兩位數字。
二、用getchar函數讀入兩個字符給c1和c2,而後分別用putchar函數和printf函數輸出這兩個字符。
思考一下問題:
(1)變量c1和c2應定義爲字符型、整型仍是兩者皆可?
(2)要求輸出c1和c2值得ASCII碼,應如何處理?用putchar函數仍是printf函數?
(3)整型變量與字符變量是否在任何狀況下均可以互相代替?如
char c1,c2;
與
int c1,c2;
是否無條件地等價?