版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第第頁C語言中基本數(shù)據(jù)類型、變量和常量的使用
前言
一、人物簡介
第一位閃亮登場,有請今后會(huì)一直教我們(C語言)的老師——自在。第二位上場的是和我們一起學(xué)習(xí)的小白程序猿——逍遙。二、基本數(shù)據(jù)類型
1、整型
C語言中的整型數(shù)據(jù)如下表所示:
數(shù)據(jù)類型含義長度(字節(jié))取值范圍(有符號)取值范圍(無符號)short短整型2[-,-1][0,-1]int整型4[-,-1][0,-1]long長整型4或8longlong長長整型8[-,-1][0,-1]整型數(shù)據(jù)可以是有符號的,也可以是無符號的。有符號的整型可以表示負(fù)數(shù)和正數(shù),而無符號的整型只能表示非負(fù)整數(shù)。2、浮點(diǎn)型
浮點(diǎn)型用于表示實(shí)數(shù),它分為單精度浮點(diǎn)型(float)和雙精度浮點(diǎn)型(double)。單精度浮點(diǎn)型占用4個(gè)字節(jié),雙精度浮點(diǎn)型占用8個(gè)字節(jié)。它們的取值范圍和精度如下表所示:
數(shù)據(jù)類型長度(字節(jié))取值范圍精度float41.2E-38~3.4E38約6位小數(shù)double82.2E-308~1.8E308(15位有效數(shù)字)約15位小數(shù)浮點(diǎn)型數(shù)據(jù)在計(jì)算機(jī)內(nèi)部以二進(jìn)制形式存儲(chǔ),因此可能會(huì)存在精度問題。在進(jìn)行浮點(diǎn)型數(shù)據(jù)的比較時(shí),應(yīng)該使用適當(dāng)?shù)恼`差范圍進(jìn)行比較。
3、字符型
字符型用于表示單個(gè)字符,它占用1個(gè)字節(jié)。
數(shù)據(jù)類型含義長度(字節(jié))取值范圍(有符號)取值范圍(無符號)char字符型1[-,-1][0,-1]字符型數(shù)據(jù)可以作為單個(gè)字符使用,也可以作為整型數(shù)據(jù)使用,表示該字符在ASCII碼表中的對應(yīng)數(shù)值。
4、布爾型
布爾型(bool)用于表示真假值,它只有兩個(gè)取值:true和false。
在C語言中,布爾型數(shù)據(jù)被定義為一個(gè)整型數(shù)據(jù)類型,0表示false,非0表示true。
三、變量
1、變量的定義和聲明
在C語言中,變量必須先被定義或聲明才能使用。定義一個(gè)變量意味著為它分配內(nèi)存,聲明一個(gè)變量意味著告訴編譯器這個(gè)變量的類型和名稱。
變量的定義格式如下:typevariable_name;其中,type是變量的數(shù)據(jù)類型,variable_name是變量的名稱。例如:
intapple;shorti=5;floatvoltage;變量的聲明有兩種情況:一種是需要建立存儲(chǔ)空間的。例如:intapple在聲明的時(shí)候就已經(jīng)建立了存儲(chǔ)空間。
另一種是不需要建立存儲(chǔ)空間的,通過使用ex(te)rn關(guān)鍵字聲明變量名而不定義它。例如:externintapple,其中變量apple可以在別的文件中定義。
externintapple;//聲明,不是定義intstudents;//聲明,也是定義一般來講,除非有extern關(guān)鍵字,否則都是變量的定義
2、變量類型
在C語言中,變量的類型指的是變量所存儲(chǔ)的數(shù)據(jù)類型。我們前面介紹的基本數(shù)據(jù)類型,都可以作為變量的類型。
int:整型,用于存儲(chǔ)整數(shù)。long:長整型,用于存儲(chǔ)更大的整數(shù)。float:單精度浮點(diǎn)型,用于存儲(chǔ)浮點(diǎn)數(shù)。double:雙精度浮點(diǎn)型,用于存儲(chǔ)更大的浮點(diǎn)數(shù)。char:字符型,用于存儲(chǔ)字符。bool:布爾型,用于存儲(chǔ)布爾值。C語言還提供了一些復(fù)合數(shù)據(jù)類型,如結(jié)構(gòu)體、聯(lián)合體和枚舉等,這些符合數(shù)據(jù)類型,我們在以后的文章中再介紹。
3、變量命名規(guī)則
變量名可以由字母、數(shù)字和下劃線組成,但必須以字母或下劃線開頭。變量名不能使用關(guān)鍵字作為名稱,變量名的長度沒有限制,但建議使用有意義的名稱。正確的變量命名
int_gCount=1;intm_Age=18;long(ti)me2=20;錯(cuò)誤的變量命名
int1round=0;//不能以數(shù)字開頭intcase=1;//不能以關(guān)鍵字作為變量名int%age=16;//不能用標(biāo)點(diǎn)符號intnameage=18;//不能用空格4、變量的初始化和賦值
在C語言中,可以使用賦值運(yùn)算符(=)將一個(gè)值賦給一個(gè)變量。例如,下面的代碼將值20賦給變量num:
intnum;num=20;變量的初始化是指在聲明變量時(shí)將其賦初值。例如,下面的代碼聲明并初始化了一個(gè)名為num的整數(shù)變量:
intnum=10;5、變量作用域
在C語言中,變量的作用域指的是變量在程序中可見的范圍。變量可以在函數(shù)內(nèi)部或外部定義。
在函數(shù)內(nèi)部定義的變量稱為局部變量,只在該函數(shù)中可見。#includevoidprint_local_num(){intlocal_num=20;//局部變量printf("local_num=%dn",local_num);}intmain(){print_local_num();//輸出local_num=20return0;}在函數(shù)外部定義的變量稱為全局變量,可以在整個(gè)程序中使用。#includeintglobal_num=10;//全局變量voidprint_global_num(){printf("global_num=%dn",global_num);}intmain(){print_global_num();//輸出global_num=10return0;}6、變量存儲(chǔ)類型
在C語言中,變量的存儲(chǔ)類型指的是變量所存儲(chǔ)的位置。C語言中的存儲(chǔ)類型包括自動(dòng)、靜態(tài)、(寄存器)和外部等。
自動(dòng)變量:自動(dòng)變量在函數(shù)內(nèi)部聲明,在函數(shù)執(zhí)行時(shí)被創(chuàng)建,在函數(shù)結(jié)束時(shí)被銷毀。靜態(tài)變量:靜態(tài)變量在函數(shù)內(nèi)部或函數(shù)外部聲明,它們在程序開始執(zhí)行時(shí)被創(chuàng)建,在程序結(jié)束時(shí)被銷毀。寄存器變量:寄存器變量是指被存儲(chǔ)在(CPU)寄存器中的變量,它們通常用于在計(jì)算密集型的代碼中提高性能。外部變量:外部變量是在程序文件外部聲明的全局變量,可以被程序的所有文件訪問。自動(dòng)變量的默認(rèn)存儲(chǔ)類別為auto。例如,下面的代碼定義了一個(gè)自動(dòng)變量num:
#includevoidprint_num(){autointnum=30;printf("num=%dn",num);}intmain(){print_num();//輸出num=30return0;}靜態(tài)變量默認(rèn)存儲(chǔ)類別為stat(ic),在程序執(zhí)行期間始終存在,它的值在函數(shù)調(diào)用之間保持不變。例如,下面的代碼定義了一個(gè)靜態(tài)變量static_num:
#includevoidprint_static_num(){staticintstatic_num=40;printf("static_num=%dn",static_num);static_num++;}intmain(){print_static_num();//輸出static_num=40print_static_num();//輸出static_num=41print_static_num();//輸出static_num=42return0;}寄存器變量的默認(rèn)存儲(chǔ)類別為register。例如,下面的代碼定義了一個(gè)寄存器變量reg_num:
#includevoidprint_reg_num(){registerintreg_num=50;printf("reg_num=%dn",reg_num);}intmain(){print_reg_num();//輸出reg_num=50return0;}外部變量的默認(rèn)存儲(chǔ)類別為extern。例如,下面的代碼定義了一個(gè)外部變量extern_num,并在另一個(gè)文件中訪問它:
//other_file.cintextern_num=60;//main.c#includeexternintextern_num;voidprint_extern_num(){printf("extern_num=%dn",extern_num);}intmain(){print_extern_num();//輸出extern_num=60return0;}四、常量
在C語言中,常量可以是整數(shù)、浮點(diǎn)數(shù)、字符或字符串。
1、整數(shù)常量
整數(shù)常量是指不帶小數(shù)部分的數(shù)字。在C語言中,整數(shù)常量可以用十六進(jìn)制、八進(jìn)制或十進(jìn)制表示。下表列出了不同進(jìn)制下整數(shù)常量的表示方法:
進(jìn)制格式示例十進(jìn)制直接寫數(shù)字10,20,30八進(jìn)制以0開頭012,034,076十六進(jìn)制以0x或0X開頭0x10,0x1E,0xFF例如,下面的代碼定義了三個(gè)整數(shù)常量:
#includeintmain(){intdecimal_num=10;intoctal_num=012;inthex_num=0xFF;printf("decimal_num=%d,octal_num=%d,hex_num=%dn",decimal_num,octal_num,hex_num);return0;}輸出結(jié)果為:decimal_num=10,octal_num=10,hex_num=255。
2、浮點(diǎn)數(shù)常量
浮點(diǎn)數(shù)常量是指帶有小數(shù)部分的數(shù)字。在C語言中,浮點(diǎn)數(shù)常量可以用小數(shù)點(diǎn)表示,也可以用科學(xué)計(jì)數(shù)法表示。例如,下面的代碼定義了兩個(gè)浮點(diǎn)數(shù)常量:
#includeintmain(){floatfloat_num=1.23;doubledouble_num=1.23e-5;printf("float_num=%f,double_num=%fn",float_num,double_num);return0;}輸出結(jié)果為:float_num=1.230000,double_num=0.000012。
3、字符常量
字符常量是指用單引號括起來的單個(gè)字符。例如,下面的代碼定義了兩個(gè)字符常量:
#includeintmain(){charchar_a='A';charchar_b='B';printf("char_a=%c,char_b=%cn",char_a,char_b);return0;}4、字符串常量
字符串常量是指用雙引號括起來的多個(gè)字符。在C語言中,字符串常量實(shí)際上是一個(gè)字符數(shù)組,以空字符('?')結(jié)尾。例如,下面的代碼定義了一個(gè)字符串常量:
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 領(lǐng)導(dǎo)力與商務(wù)禮儀培訓(xùn)
- 《跨接導(dǎo)壓技術(shù)創(chuàng)新》課件
- 提升營收的多元化策略計(jì)劃
- 地質(zhì)勘查技術(shù)服務(wù)行業(yè)相關(guān)投資計(jì)劃提議
- 財(cái)務(wù)科預(yù)算與成本控制計(jì)劃
- 丙型肝炎抗體檢測試劑盒相關(guān)行業(yè)投資規(guī)劃報(bào)告范本
- 寶石、玉石礦相關(guān)行業(yè)投資方案范本
- 《液壓與氣動(dòng)》課件 2過濾器
- 日用織物制品相關(guān)行業(yè)投資方案
- 《信客公開》課件
- 國開2023春《學(xué)前兒童語言教育》活動(dòng)指導(dǎo)形成性考核一二三四參考答案
- 中耳解剖、生理與疾病 助聽器驗(yàn)配課件
- 任務(wù)2材料費(fèi)用的歸集與分配
- 統(tǒng)計(jì)學(xué)-學(xué)習(xí)筆記
- 神經(jīng)病學(xué)期末考試題
- 低代碼開發(fā)智慧樹知到答案章節(jié)測試2023年南華大學(xué)
- 教學(xué)設(shè)計(jì) 三位數(shù)乘兩位數(shù)筆算乘法 優(yōu)質(zhì)課比賽一等獎(jiǎng)
- 《投入產(chǎn)出分析》實(shí)驗(yàn)指導(dǎo)書
- GB/T 14124-1993機(jī)械振動(dòng)與沖擊對建筑物振動(dòng)影響的測量和評價(jià)基本方法及使用導(dǎo)則
- GB/T 10325-2001定形耐火制品抽樣驗(yàn)收規(guī)則
- GB/T 10069.3-2008旋轉(zhuǎn)電機(jī)噪聲測定方法及限值第3部分:噪聲限值
評論
0/150
提交評論