當前位置:首頁 » 編程語言 » c語言變數表

c語言變數表

發布時間: 2022-06-21 17:20:09

c語言的變數定義

C語言中變數遵循「先定義後使用」的原則:

1、定義變數的格式:數據類型 變數名;

首先要強調的一點是:變數的定義是一條語句,每條語句都是以分號結尾的。故定義完變數,後面不要漏掉「;」分號。

在變數定義中,「數據類型」表示想要存儲什麼類型的數據就定義什麼類型的變數。

如想要存儲整數就定義成 int 型;想要存儲小數就定義成 float 型或 double 型;想要存儲字元就定義成 char 型等等。

「變數名」就是你想給這個變數起個什麼名字,通常都是用字母、數字與下劃線組合而成。比如:

「int i;double price;double goods_price2」等等。

就表示定義了一個整型變數 i、小數型變數price、goods_price2;

2、變數定義完成後,接下來就是使用變數,為變數賦值。

將一個值放到一個變數中,這個動作叫「賦值」。通俗點講,「給變數賦值」意思就是將一個值傳給一個變數。

賦值的格式是:

變數名 = 要賦的值;

它的意思是將=右邊的數字賦給左邊的變數。比如:
i = 3;
這就表示將 3 賦給了變數 i,此時 i 就等於 3 了。

3、變數的定義和賦值,可以分成兩步寫,也可以將它們合成一步,而且事實上,在實際編程中用得最多的也是合二為一的寫法。

形式如下:

數據類型 變數名 = 要賦的值;

比如:int i = 3;

就表示定義了一個變數 i,並把 3 賦給這個變數。它與

int i;
i =3;

是等價的。

在定義變數時也可以一次性定義多個變數,比如:

int i, j;

這就表示定義了變數 i 和 j。這里需要強調的是,當同時定義多個變數時,變數之間是用逗號隔開的,千萬別寫成分號。這是很多新手最容易犯的錯誤,即將逗號和分號記混了。

同樣也可以在定義多個變數的同時給它們賦值:

int i = 3, j = 4;

中間還是用逗號隔開,最後別忘記輸入分號。

最後需要注意的是,在較老的 C89/C90 標准(也稱 ANSI C 標准)中,變數只能在程序的開頭定義,或者說變數定義的前面不能有其他非聲明或非定義的語句。

(1)c語言變數表擴展閱讀:

在主回答中,提到了變數定義時,變數名通常都是用字母、數字與下劃線組合而成,但是實際上,變數名也不是隨便組合的,變數定義需要遵循一定的規范,否則容易產生歧義,影響整體程序代碼 的可讀性。

所以在定義變數的時候,要注意以下命名規范:

(1)、變數名的開頭必須是字母或下劃線,不能是數字。實際編程中最常用的是以字母開頭,而以下劃線開頭的變數名是系統專用的。命名應當直觀且可以拼讀,可望文知意,便於記憶和閱讀。

標識符最好採用英文單詞或其組合,不允許使用拼音。程序中的英文單詞一般不要太復雜,用詞應當准確。

(2)、變數名中的字母是區分大小寫的。比如 a 和 A 是不同的變數名,num 和 Num 也是不同的變數名。當標識符由多個片語成時,每個詞的第一個字母大寫,其餘全部小寫。

比如: int CurrentVal;

這樣的名字看起來比較清晰,遠比一長串字元好得多。

(3)、變數名絕對不可以是C語言關鍵字,不能有空格。

(4)、變數名的長度應當符合「min-length && max-information」原則。

C 是一種簡潔的語言, 命名也應該是簡潔的。例如變數名MaxVal 就比MaxValueUntilOverflow 好用。標識符的長度一般不要過長,較長的單詞可通過去掉「母音」形成縮寫。

另外,英文詞盡量不縮寫,特別是非常用專業名詞,如果有縮寫,在同一系統中對同一單詞必須使用相同的表示法,並且註明其意思。

② 求C語言變數表。拜託了

變數還有表啊。長見識了。
auto 局部變數(自動儲存)
break無條件退出程序最內層循環
case switch語句中選擇項
char單位元組整型數據
const定義不可更改的常量值
continue中斷本次循環,並轉向下一次循環
default switch語句中的默認選擇項
do 用於構成do.....while循環語句
double定義雙精度浮點型數據
else構成if.....else選擇程序結構
enum枚舉
extern在其它程序模塊中說明了全局變數
float定義單精度浮點型數據
for構成for循環語句
goto構成goto轉移結構
if構成if....else選擇結構
int基本整型數據
long長整型數據
registerCPU內部寄存的變數
return用於返回函數的返回值
short短整型數據
signed有符號數
sizoef計算表達式或數據類型的佔用位元組數
static定義靜態變數
struct定義結構類型數據
switch構成switch選擇結構
typedef重新定義數據類型
union聯合類型數據
unsigned定義無符號數據
void定義無類型數據
volatile該變數在程序中執行中可被隱含地改變
while用於構成do...while或while循環結構

③ C語言變數定義

C語言中變數遵循「先定義後使用」的原則:

1、定義變數的格式:數據類型 變數名;

首先要強調的一點是:變數的定義是一條語句,每條語句都是以分號結尾的。故定義完變數,後面不要漏掉「;」分號。

在變數定義中,「數據類型」表示想要存儲什麼類型的數據就定義什麼類型的變數。

如想要存儲整數就定義成 int 型;想要存儲小數就定義成 float 型或 double 型;想要存儲字元就定義成 char 型等等。

「變數名」就是你想給這個變數起個什麼名字,通常都是用字母、數字與下劃線組合而成。比如:

「int i;double price;double goods_price2」等等。

就表示定義了一個整型變數 i、小數型變數price、goods_price2;

2、變數定義完成後,接下來就是使用變數,為變數賦值。

將一個值放到一個變數中,這個動作叫「賦值」。通俗點講,「給變數賦值」意思就是將一個值傳給一個變數。

賦值的格式是:

變數名 = 要賦的值;

④ C語言變數的基本類型有哪些

c語言的變數有三種類型:char,int,float,double

其中char為字元類型的變數是八位的,最前一位作為符號位,後面七位作為數據位.它的存儲范圍在-128到127之間.

int整數類型的變數是16位的,最前一位為符號位,後面的15位作為數據位.它的存儲范圍在-215到215-1.也就是-32768到32767.它不包擴小數點以後的數,在一般編譯器中給int類型賦予帶有小數的數.編譯器會自動去掉小數點後面的數保留整數部分.

float為浮點數類型.首先要說明的是浮點數有兩部分組成,第一部分是指數,也就是多少次冪嘛.第二部分是由尾數組成也就是一個數科學表示發之後除去冪那部分剩下的(呵呵!!!)如1.33333.那麼c中的浮點數就有三部分.32位的浮點數第一位就是第一部分它決定數的符號.第二部分是八位的指數.第三部分是23位的尾數.所以浮點數具有6到7位的存儲精確度.范圍為3.4e-38到3.4e+38的數值.注:3.1415926e+7表示3.1415926.0.在給浮點數賦值的時候可以採用如下方法.123.45和1.2345e2是等價的.

double為雙精度型變數.c編譯器通常用64位來存儲雙精度性變數.它的精確度能夠達到14到15位.64位中第一位是符號位.後面的11位是指數位.最後的52位是尾數.它的范圍是-1.7e-308到1.7e+308.

類型標識符:unsigned,short,register,long和signed.

其中unsigned提示編譯器不要保留符號位,這樣可以擴大數據類型正數的范圍.比如unsigned int的范圍就變位0到65535了.

short類型用在有的編譯器不能給太大的存儲范圍,需要給一個比較低的溢出界限.比如有的編譯器就用的是32位來存儲int類型.用short來標識它可以保證int是用16位來標識的.

register表示一個變數可能會用得很頻繁.需要很快得存取速度所以指定的把它存到寄存器當中.

long表示不希望用16位來存儲整形變數時可以用long指定它用32位來存儲可以得到更大得表示範圍.

當然還有long unsigned int 這樣得類型.

用戶自定義數據類型

用戶可以使用typedef來自己定義自己需要得數據類型.如下例:

typedef unsigned long int myint;

myint num1;

這樣num1就是unsigned long int類型的了.

⑤ c語言有哪幾種變數如何定義這些變數

C語言中的變數有基本變數如int,double,char,float,unsigned int,unsigned char 等等,當然也有結構體變數,指針變數等等。
定義變數如下: int a;就定義了一個int型變數a;
double a;定義了一個double型變數a;

⑥ c語言中的常量和變數

C程序設計講義——常量變數

教學目標:

1.掌握c程序設計中的常量和變數

2.完成實驗報告,並發回教師機

教學重難點:

對於浮點數和整數等幾種數據類型的區別及准確使用

授課形式:

實驗

教學條件:

電腦

教學內容:

1.標識符

1.1 字元集:

(1) 英文字母:A-Z,a-z

(2) 數字:0-9

(3) 特殊符號:空格,製表符(跳格),換行符(空行)的總稱。標點符號、特殊字元:

1.2 標識符(名字):

1) 標識符只能由字母、數字和下劃線三種字元組成,第一個字元必須為字母或下劃線。大小寫敏感。

2) ANSI C沒有限制標識符長度,但各個編譯系統都有自己的規定和限制(TC 32個字元,MSC 8個字元)。

3) 大寫字母和小寫字母達標不同的標識符

4) 在使用標識符時,盡量採用「見名知義,常用從簡」的原則。

5) 標識符不能與「關鍵詞」同名,也不與系統預先定義的「標准標識符」同名。

1.3 標識符分類

(1)關鍵詞(保留字):C語言規定的具有特定意義的字元串,32個,不能作為用戶標識符。

(2)預定義標識符: C語言中提供的庫函數名和編譯預處理命令。

(3)用戶標識符號:用戶自己定義的標識符。

1.4 運算符:運算符將常量、變數、函數連接起來組成表達式,表示各種運算。

根據參與運算的操作數的個數分為:單目、雙目、三目運算符。

1.5 分隔符:逗號,空格。

1.6 注釋符:「/*」和「*/」構成一組注釋符。

2.常量與變數

常量:在程序的運行過程中,其值不能改變的量稱為常量。

變數:在程序的運行過程中,其值能夠改變的量稱為變數。

2.1常量

整型常量,實型常量,字元常量。

符號常量 #define PI 3.1416

2.2 變數

● 在程序的運行過程中,其值可以改變的量稱為變數。

● 變數名(用標識符表示)、變數在內存中占據的存儲單元、變數值三者關系。

● C語言中變數:「先定義,後使用」。

3.整型數據

整型變數的定義

格式:數據類型名 變數名表;

例如:

void main()

{

int a,b,c,d;

a=12; b=-24; u=10;

c=a+u; d=b+u;

printf(「%d,%d\n」,c,d);

}

說明:

1)變數定義時,可以說明多個相同類型的變數。各個變數用「,」分隔。

2)最後一個變數名之後必須用「;」結尾。

3)變數說明必須在變數使用之前。

4)可以在定義變數的同時,對變數進行初始化。

⑦ C語言變數定義char、int、long有什麼區別

1、char 在所有機器上都是佔一個位元組,有符號數范圍是-128到127,一般用來表示字元。字元在存儲中就是存儲的ascii值。

2、int 在16位機上佔2位元組,現在基本沒有了。 在32|64位機上佔四位元組,有符號數范圍是-2^31到2^31-1。

3、long 在32位編譯系統下佔4位元組,與int相同。在64位系統下佔8位元組,可表示的數據范圍是-2^63到2^63-1。

拓展資料:

C語言

是一門通用計算機編程語言,廣泛應用於底層開發。C語言的設計目標是提供一種能以簡易的方式編譯、處理低級存儲器、產生少量的機器碼以及不需要任何運行環境支持便能運行的編程語言。

其編譯器主要有Clang、GCC、WIN-TC、SUBLIME、MSVC、Turbo C等。

語言標准

起初,C語言沒有官方標准。1978年由美國電話電報公司(AT&T)貝爾實驗室正式發表了C語言。布萊恩·柯林漢(Brian Kernighan) 和 丹尼斯·里奇(Dennis Ritchie) 出版了一本書,名叫《The C Programming Language》。這本書被 C語言開發者們稱為K&R,很多年來被當作 C語言的非正式的標准說明。人們稱這個版本的 C語言為K&R C。

特點

1、C語言是一個有結構化程序設計、具有變數作用域(variable scope)以及遞歸功能的過程式語言。

2、C語言傳遞參數均是以值傳遞(pass by value),另外也可以傳遞指針(a pointer passed by value)。

3、不同的變數類型可以用結構體(struct)組合在一起。

4、只有32個保留字(reserved keywords),使變數、函數命名有更多彈性。

5、部份的變數類型可以轉換,例如整型和字元型變數。

6、通過指針(pointer),C語言可以容易的對存儲器進行低級控制。

7、預編譯處理(preprocessor)讓C語言的編譯更具有彈性。

⑧ C語言裡面的變數是什麼意思,

變數是指以標識符為名字,其值可以改變的量。一個變數代表計算機內存中的某一存儲單元,該存儲單元中存放的數據就是變數的值。如程序中有變數a,則a為某個存儲單元的名稱,用戶對變數a進行的操作就是對該存儲單元進行的操作;給變數a賦值,就是把數據存入變數a所代表的存儲單元中。

⑨ c語言有哪幾種變數如何定義這些變數舉例說明

基本的數據類型有:整形、實型、字元型、指針型等
擴展的數據類型有:數組,結構體,聯合、共用體等
還可以有自定義的類型。

以下是基本類型的詳細的說明
最好找本C語言的書看看,紙介質版的或電子版的都行,建議看譚誥強的c程序設計,最新的是第三版,本人學習時是二版

整型量

整型量包括整型常量、整型變數。整型常量就是整常數。在C語言中,使用的整常數有八進制、十六進制和十進制三種。

整型常量

1.八進制整常數八進制整常數必須以0開頭,即以0作為八進制數的前綴。數碼取值為0~7。八進制數通常是無符號數。
以下各數是合法的八進制數:
015(十進制為13) 0101(十進制為65) 0177777(十進制為65535)
以下各數不是合法的八進制數:
256(無前綴0) 03A2(包含了非八進制數碼) -0127(出現了負號)

2.十六進制整常數
十六進制整常數的前綴為0X或0x。其數碼取值為0~9,A~F或a~f。
以下各數是合法的十六進制整常數:
0X2A(十進制為42) 0XA0 (十進制為160) 0XFFFF (十進制為65535)
以下各數不是合法的十六進制整常數:
5A (無前綴0X) 0X3H (含有非十六進制數碼)

3.十進制整常數
十進制整常數沒有前綴。其數碼為0~9。
以下各數是合法的十進制整常數:
237 -568 65535 1627
以下各數不是合法的十進制整常數:
023 (不能有前導0) 23D (含有非十進制數碼)

在程序中是根據前綴來區分各種進制數的。因此在書寫常數時不要把前綴弄錯造成結果不正確。4.整型常數的後綴在16位字長的機器上,基本整型的長度也為16位,因此表示的數的范圍也是有限定的。十進制無符號整常數的范圍為0~65535,有符號數為-32768~+32767。八進制無符號數的表示範圍為0~0177777。十六進制無符號數的表示範圍為0X0~0XFFFF或0x0~0xFFFF。如果使用的數超過了上述范圍,就必須用長整型數來表示。長整型數是用後綴「L」或「l」來表示的。例如:
十進制長整常數 158L (十進制為158) 358000L (十進制為-358000)
八進制長整常數 012L (十進制為10) 077L (十進制為63) 0200000L (十進制為65536)
十六進制長整常數 0X15L (十進制為21) 0XA5L (十進制為165) 0X10000L (十進制為65536)

長整數158L和基本整常數158 在數值上並無區別。但對158L,因為是長整型量,C編譯系統將為它分配4個位元組存儲空間。而對158,因為是基本整型,只分配2 個位元組的存儲空間。因此在運算和輸出格式上要予以注意,避免出錯。無符號數也可用後綴表示,整型常數的無符號數的後綴為「U」或「u」。例如: 358u,0x38Au,235Lu 均為無符號數。前綴,後綴可同時使用以表示各種類型的數。如0XA5Lu表示十六進制無符號長整數A5,其十進制為165。

整型變數

整型變數可分為以下幾類:
1.基本型
類型說明符為int,在內存中佔2個位元組,其取值為基本整常數。
2.短整量
類型說明符為short int或short'C110F1。所佔位元組和取值范圍均與基本型相同。
3.長整型
類型說明符為long int或long ,在內存中佔4個位元組,其取值為長整常數。
4.無符號型
類型說明符為unsigned。
無符號型又可與上述三種類型匹配而構成:
(1)無符號基本型 類型說明符為unsigned int或unsigned。
(2)無符號短整型 類型說明符為unsigned short
(3)無符號長整型 類型說明符為unsigned long
各種無符號類型量所佔的內存空間位元組數與相應的有符號類型量相同。但由於省去了符號位,故不能表示負數。 下表列出了Turbo C中各類整型量所分配的內存位元組數及數的表示範圍。
類型說明符 數的范圍 分配位元組數
int -32768~32767 ■■
short int -32768~32767 ■■
signed int -32768~32767 ■■
unsigned int 0~65535 ■■
long int -2147483648~2147483647 ■■■■
unsigned long 0~4294967295 ■■■■
整型變數的說明
變數說明的一般形式為: 類型說明符 變數名標識符,變數名標識符,...; 例如:
int a,b,c; (a,b,c為整型變數)
long x,y; (x,y為長整型變數)
unsigned p,q; (p,q為無符號整型變數)

在書寫變數說明時,應注意以下幾點:
1.允許在一個類型說明符後,說明多個相同類型的變數。各變數名之間用逗號間隔。類型說明符與變數名之間至少用一個空格間隔。
2.最後一個變數名之後必須以「;」號結尾。
3.變數說明必須放在變數使用之前。一般放在函數體的開頭部分。
[Practice] //1int a,b;
short int c;
short d=100;
a=d-20;
b=a+d;
c=a+b+d;
d=d-a+c-b;'Vtable
a,2,0
b,2,0
c,2,0
d,2,100
of Vtable
'Vupdate
1,0;2,0
3,0
4,100
1,80
2,180
3,360
4,200
of Vupdate
of Practice
[Practice] //2int a=5;
int b=9;
long int c;
long d;
c=a+b-7;
d=a*b*c;
c=d*d*d;
a=c-d;'Vtable
a,2,5
b,2,9
c,4,0
d,4,0
of Vtable
'Vupdate
1,5
2,9
3,0
4,0
3,7
4,315
3,31255875
1,-5112
of Vupdate
of Practice
[Practice] //3int a=6,b=19;
unsigned int c;
int d;
c=a-b+7;
d=b*c;
a=b+c+d;
b=-a;'Vtable
a,2,6
b,2,19
c,2,0
d,2,0
of Vtable
'Vupdate
1,6;2,19
3,0
4,0
3,65530
4,-114
1,-101
2,101
of Vupdate
of Practice
void main(){
long x,y;
int a,b,c,d;
x=5;
y=6;
a=7;
b=8;
c=x+a;
d=y+b;
printf("c=x+a=%d,d=y+b=%d\n",c,d);
}
將main說明為返回void,即不返回任何類型的值
x,y被定義為long型
a,b,c,d被定義為int型
5->x
6->y
7->a
8->b
x+a->c
y+b->d
顯示程序運行結果 of long x,y;
int a,b,c,d;
c=x+a;
d=y+b;
從程序中可以看到:x, y是長整型變數,a, b是基本整型變數。它們之間允許進行運算,運算結果為長整型。但c,d被定義為基本整型,因此最後結果為基本整型。本例說明,不同類型的量可以參與運算並相互賦值。其中的類型轉換是由編譯系統自動完成的。有關類型轉換的規則將在以後介紹。

實型量

實型常量

實型也稱為浮點型。實型常量也稱為實數或者浮點數。在C語言中,實數只採用十進制。它有二種形式: 十進制數形式指數形式
1.十進制數形式
由數碼0~ 9和小數點組成。例如:0.0,.25,5.789,0.13,5.0,300.,-267.8230等均為合法的實數。
2.指數形式
由十進制數,加階碼標志「e」或「E」以及階碼(只能為整數,可以帶符號)組成。其一般形式為a E n (a為十進制數,n為十進制整數)其值為 a*10,n 如: 2.1E5 (等於2.1*10,5), 3.7E-2 (等於3.7*10,)-2*) 0.5E7 (等於0.5*10,7), -2.8E-2 (等於-2.8*10,)-2*)以下不是合法的實數 345 (無小數點) E7 (階碼標志E之前無數字) -5 (無階碼標志) 53.-E3 (負號位置不對) 2.7E (無階碼)
標准C允許浮點數使用後綴。後綴為「f」或「F」即表示該數為浮點數。如356f和356.是等價的。例2.2說明了這種情況:
void main()
{
printf("%f\n%f\n",356.,356f);
}
void 指明main不返回任何值 利用printf顯示結果 結束

實型變數

實型變數分為兩類:單精度型和雙精度型,
其類型說明符為float 單精度說明符,double 雙精度說明符。在Turbo C中單精度型佔4個位元組(32位)內存空間,其數值范圍為3.4E-38~3.4E+38,只能提供七位有效數字。雙精度型佔8 個位元組(64位)內存空間,其數值范圍為1.7E-308~1.7E+308,可提供16位有效數字。
實型變數說明的格式和書寫規則與整型相同。
例如: float x,y; (x,y為單精度實型量)
double a,b,c; (a,b,c為雙精度實型量)
實型常數不分單、雙精度,都按雙精度double型處理。
void main()
{
float a;
double b;
a=33333.33333;
b=33333.33333333333333;
printf("%f\n%f\n",a,b);
}
此程序說明float、double的不同
a ■■■■
b ■■■■■■■■
a<---33333.33333
b<---33333.33333333333;;
顯示程序結果
此程序說明float、double的不同
float a;
double b;
a=33333.33333;
b=33333.33333333333333; 從本例可以看出,由於a 是單精度浮點型,有效位數只有七位。而整數已佔五位,故小數二位後之後均為無效數字。b 是雙精度型,有效位為十六位。但Turbo C 規定小數後最多保留六位,其餘部分四捨五入。
[Practice] //floatint a=32;
float b;
double d;
b=12345678;
d=b*100;
d=d+a;
d=d+58.123456;'Vtable
a,2,32
b,4,0.0
d,8,0.0
of Vtable
'Vupdate
1,32
2,0
3,0
2,12345678.00000
3,1234567800
3,1234567832
3,1234567890.123456
of Vupdate
of Practice
[Practice] //1int a=543;
float b;
b=123.123962+a;
b=b-100;
a=b;'Vtable
a,2,543
b,4,0.0
of Vtable
'Vupdate
1,543
2,0.0
2,123.123962
2,23.123962
1,23
of Vupdate
of Practice

字元型量

字元型量包括字元常量和字元變數。

字元常量
字元常量是用單引號括起來的一個字元。例如'a','b','=','+','?'都是合法字元常量。在C語言中,字元常量有以下特點:
1.字元常量只能用單引號括起來,不能用雙引號或其它括弧。
2.字元常量只能是單個字元,不能是字元串。
3.字元可以是字元集中任意字元。但數字被定義為字元型之後就
不能參與數值運算。如'5'和5 是不同的。'5'是字元常量,不能參與運算。

轉義字元
轉義字元是一種特殊的字元常量。轉義字元以反斜線"\"開頭,後跟一個或幾個字元。轉義字元具有特定的含義,不同於字元原有的意義,故稱「轉義」字元。例如,在前面各例題printf函數的格式串中用到的「\n」就是一個轉義字元,其意義是「回車換行」。轉義字元主要用來表示那些用一般字元不便於表示的控制代碼。
常用的轉義字元及其含義
轉義字元 轉義字元的意義
\n 回車換行
\t 橫向跳到下一製表位置
\v 豎向跳格
\b 退格
\r 回車
\f 走紙換頁
\\ 反斜線符"\"
\' 單引號符
\a 鳴鈴
\ddd 1~3位八進制數所代表的字元
\xhh 1~2位十六進制數所代表的字元
廣義地講,C語言字元集中的任何一個字元均可用轉義字元來表示。表2.2中的\ddd和\xhh正是為此而提出的。ddd和hh分別為八進制和十六進制的ASCII代碼。如\101表示字?quot;A" ,\102表示字母"B",\134表示反斜線,\XOA表示換行等。轉義字元的使用
void main()
{
int a,b,c;
a=5; b=6; c=7;
printf("%d\n\t%d %d\n %d %d\t\b%d\n",a,b,c,a,b,c);
}
此程序練習轉義字元的使用
a、b、c為整數 5->a,6->b,7->c
調用printf顯示程序運行結果
printf("%d\n\t%d %d\n %d %d\t\b%d\n",a,b,c,a,b,c);
程序在第一列輸出a值5之後就是「\n」,故回車換行;接著又是「\t」,於是跳到下一製表位置(設製表位置間隔為8),再輸出b值6;空二格再輸出c 值7後又是"\n",因此再回車換行;再空二格之後又輸出a值5;再空三格又輸出b的值6;再次後"\t"跳到下一製表位置(與上一行的6 對齊),但下一轉義字元「\b」又使退回一格,故緊挨著6再輸出c值7。

字元變數
字元變數的取值是字元常量,即單個字元。字元變數的類型說明符是char。字元變數類型說明的格式和書寫規則都與整型變數相同。
例如:
char a,b; 每個字元變數被分配一個位元組的內存空間,因此只能存放一個字元。字元值是以ASCII碼的形式存放在變數的內存單元之中的。如x的
十進制ASCII碼是120,y的十進制ASCII碼是121。對字元變數a,b賦予'x'和'y'值: a='x';b='y';實際上是在a,b兩個單元內存放120和121的二進制代碼: a 0 1 1 1 1 0 0 0
b 0 1 1 1 1 0 0 1
所以也可以把它們看成是整型量。 C語言允許對整型變數賦以字元值,也允許對字元變數賦以整型值。在輸出時, 允許把字元變數按整型量輸出,也允許把整型量按字元量輸出。 整型量為二位元組量,字元量為單位元組量,當整型量按字元型量處理時, 只有低八位位元組參與處理。
main()
{
char a,b;
a=120;
b=121;
printf("%c,%c\n%d,%d\n",a,b,a,b);
}
a ■ b ■
a <-- 120
b <--- 121
顯示程序結果

本程序中說明a,b為字元型,但在賦值語句中賦以整型值。從結果看,a,b值的輸出形式取決於printf函數格式串中的格式符,當格式符為"c"時,對應輸出的變數值為字元,當格式符為"d"時,對應輸出的變數值為整數。
void main()
{
char a,b;
a='x';
b='y';
a=a-32;
b=b-32;
printf("%c,%c\n%d,%d\n",a,b,a,b);
}
a,b被說明為字元變數並賦予字元值
把小寫字母換成大寫字母
以整型和字元型輸出
本例中,a,b被說明為字元變數並賦予字元值,C語言允許字元變數參與數值運算,即用字元的ASCII 碼參與運算。由於大小寫字母的ASCII 碼相差32,因此運算後把小寫字母換成大寫字母。然後分別以整型和字元型輸出。
[Practice] //charint a=49;
char b;
char d;
b=a+10;
d=a+b;'Vtable
a,2,49
b,1,隨機
d,1,隨機
of Vtable
'Vupdate
1,49
2,隨機
3,隨機
2,';'
3,'l'
of Vupdate
of Practice
[Practice] //char c1,c2;
c1='a';c2='b';
c1=c1-32;c2=c2-32;'Vtable
c1,1,隨機
c2,1,隨機
of Vtable
'Vupdate
1,隨機;2,隨機
1,'a';2,'b'
1,'A';2,'B'
of Vupdate
of Practice

字元串常量
字元串常量是由一對雙引號括起的字元序列。例如: "CHINA" ,"C program:" , "$12.5" 等都是合法的字元串常量。字元串常量和字元常量是不同的量。它們之間主要有以下區別:
1.字元常量由單引號括起來,字元串常量由雙引號括起來。
2.字元常量只能是單個字元,字元串常量則可以含一個或多個字元。
3.可以把一個字元常量賦予一個字元變數,但不能把一個字元串常量賦予一個字元變數。在C語言中沒有相應的字元串變數。
這是與BASIC 語言不同的。但是可以用一個字元數組來存放一個字元串常量。在數組一章內予以介紹。
4.字元常量佔一個位元組的內存空間。字元串常量占的內存位元組數等於字元串中位元組數加1。增加的一個位元組中存放字元"\0"(ASCII碼為0)。這是字元串結束的標志。例如,字元串 "C program"在內存中所佔的位元組為:C program\0。字元常量'a'和字元串常量"a"雖然都只有一個字元,但在內存中的情況是不同的。
'a'在內存中佔一個位元組,可表示為:a
"a"在內存中佔二個位元組,可表示為:a\0符號常量

符號常量
在C語言中,可以用一個標識符來表示一個常量,稱之為符號常量。符號常量在使用之前必須先定義,其一般形式為:
#define 標識符 常量
其中#define也是一條預處理命令(預處理命令都?quot;#"開頭),稱為宏定義命令(在第九章預處理程序中將進一步介紹),其功能是把該標識符定義為其後的常量值。一經定義,以後在程序中所有出現該標識符的地方均代之以該常量值。習慣上符號常量的標識符用大寫字母,變數標識符用小寫字母,以示區別。
#define PI 3.14159
void main()
{
float s,r;
r=5;
s=PI*r*r;
printf("s=%f\n",s);
}
由宏定義命令定義PI 為3.14159 s,r定義為實數 5->r PI*r*r->s
顯示程序結果 float s,r; r=5; s=PI*r*r; 本程序在主函數之前由宏定義命令定義PI 為3.14159,在程序中即以該值代替PI 。s=PI*r*r等效於s=3.14159*r*r。應該注意的是,符號常量不是變數,它所代表的值在整個作用域內不能再改變。也就是說,在程序中,不能再用賦值語句對它重新賦值。

熱點內容
靜態存儲區堆棧 發布:2025-02-05 22:09:11 瀏覽:101
js加密演算法 發布:2025-02-05 22:06:35 瀏覽:230
python3graphics 發布:2025-02-05 21:36:57 瀏覽:511
為什麼英雄聯盟一個伺服器進不去 發布:2025-02-05 21:36:12 瀏覽:182
伺服器搭建網站開發教材 發布:2025-02-05 21:31:57 瀏覽:567
pythonrose 發布:2025-02-05 21:31:46 瀏覽:923
php數組從小到大排序 發布:2025-02-05 21:26:01 瀏覽:324
單片機存儲器擴展 發布:2025-02-05 21:17:35 瀏覽:966
sqler圖 發布:2025-02-05 21:10:58 瀏覽:630
網路編程android 發布:2025-02-05 21:05:49 瀏覽:346