第2章 簡(jiǎn)單C語(yǔ)言程序設(shè)計(jì)_第1頁(yè)
第2章 簡(jiǎn)單C語(yǔ)言程序設(shè)計(jì)_第2頁(yè)
第2章 簡(jiǎn)單C語(yǔ)言程序設(shè)計(jì)_第3頁(yè)
第2章 簡(jiǎn)單C語(yǔ)言程序設(shè)計(jì)_第4頁(yè)
第2章 簡(jiǎn)單C語(yǔ)言程序設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩2頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

本文格式為Word版,下載可任意編輯——第2章簡(jiǎn)單C語(yǔ)言程序設(shè)計(jì)

第2章簡(jiǎn)單C程序設(shè)計(jì)

回想程序是為執(zhí)行一項(xiàng)任務(wù)而編寫的有序指令集C程序的特點(diǎn)

C語(yǔ)言的組成C程序的編譯和運(yùn)行過(guò)程編譯器將源程序轉(zhuǎn)換成機(jī)器能理解的程序連接器用于連接相關(guān)的目標(biāo)文件以生成可執(zhí)行程序

本章要點(diǎn)C語(yǔ)言的數(shù)據(jù)類型、運(yùn)算符C語(yǔ)言的常量和變量

C語(yǔ)言的表達(dá)式常用數(shù)學(xué)函數(shù)

2.1溫度轉(zhuǎn)換例2.1求華氏溫度100F對(duì)應(yīng)的攝氏溫度#includestdio.hintmain(){intcelsius,fahr;fahr=100;celsius=5*(fahr-32)/9;printf(“fahr=%d,celsius=%d\n“,fahr,celsius);}

執(zhí)行程序的輸出結(jié)果為:fahr=100,celsius=374

2.1.1內(nèi)存內(nèi)存可以理解為一排井然有序的小開(kāi)關(guān),每個(gè)開(kāi)關(guān)有兩個(gè)狀態(tài):開(kāi)表示1,斷表示0,所以每個(gè)開(kāi)關(guān)表示一個(gè)二進(jìn)制數(shù),0或1,稱為一個(gè)位(bit).為管理便利,8個(gè)位為一組,稱為一個(gè)字節(jié)(byte)然后為所有字節(jié)從0開(kāi)始編號(hào),這個(gè)編號(hào)稱為字節(jié)的地址2的10次方(1024)個(gè)字節(jié)稱為1k2的20次方(1048576)個(gè)字節(jié)稱為1M2的30次方(1073741824)個(gè)字節(jié)稱為1G

2.1.2變量intcelsius,fahr;celsius=5*(fahr-32)/9;變量是計(jì)算機(jī)里一塊特定的內(nèi)存,它由一個(gè)或多個(gè)連續(xù)的字節(jié)組成。每個(gè)變量都有一個(gè)名稱,表示內(nèi)存中的這個(gè)位置,以便通過(guò)變量名讀取該位置的數(shù)據(jù)或存儲(chǔ)一個(gè)新數(shù)值。變量的值不是固定的,隨時(shí)都可以改變,且次數(shù)不限。

變量?jī)?nèi)存32100

程序

存儲(chǔ)fahr

計(jì)算5*(fahr-32)/9

將值存儲(chǔ)為celsius

編寫程序時(shí),尋常使用變量來(lái)存儲(chǔ)數(shù)據(jù),便利后面使用這個(gè)數(shù)據(jù)或者修改這個(gè)數(shù)據(jù)的值。7

輸出fahr和celsius

2.1.3數(shù)據(jù)類型內(nèi)存變量用來(lái)存儲(chǔ)數(shù)據(jù),系統(tǒng)需要知道每個(gè)變量要存儲(chǔ)什么類型的數(shù)據(jù),然后為每個(gè)變量分派一塊足夠大的內(nèi)存空間,用來(lái)該類型的數(shù)據(jù)數(shù)據(jù)類型

數(shù)據(jù)

數(shù)值2.175123整型非整型9/12/2023

非數(shù)值A(chǔ)fricachar

intThequickbrownfox整型非整型floatJackieChanshortintdouble數(shù)值非數(shù)值longint9999002.12數(shù)據(jù)屬于不同類別TRUE8

整型變量類型整數(shù)變量還分為幾種不同的類型,以存儲(chǔ)不同范圍的整數(shù)shortintintlongint

2個(gè)字節(jié)4個(gè)字節(jié)4個(gè)字節(jié)

-2-15至215-1,-32768至+32767-2-31至231-1,-2147438648至+2147438647

-2-31至231-1,-2147438648至+2147438647-2-63至263-1

__int64longlongint

8個(gè)字節(jié)

1、數(shù)據(jù)類型所占字節(jié)數(shù),取決于所使用的編譯器2、shortint可以簡(jiǎn)寫為short,longint可以簡(jiǎn)寫為long3、不同編譯器對(duì)64位的支持不同,在VC中只支持__int64,gcc/g++支持longlong,windows平臺(tái)的gcc/g++也支持__int649

無(wú)符號(hào)的整數(shù)類型當(dāng)處理不能為負(fù)的數(shù)據(jù)時(shí),可以使用無(wú)符號(hào)類型,所占內(nèi)存與有符號(hào)型一致,但對(duì)正數(shù)的表示

范圍比有符號(hào)型大一倍unsignedshortint

2個(gè)字節(jié)4個(gè)字節(jié)4個(gè)字節(jié)8個(gè)字節(jié)

0至216-1,0至+655350至232-1,0至+42949672950至232-1,0至+42949672950至264-1,0至18445744073709551615

unsignedintunsignedlongint

unsigned__int64unsignedlonglongint

2.1.4變量的聲明和使用聲明變量:intcelsius,fahr;

定義時(shí)初始化變量:intcelsius,fahr=100;

定義后初始化變量:fahr=100;。

給變量賦值,除了給一個(gè)直接的值以外,還可以通過(guò)計(jì)算獲得如:celsius=5*(fahr-32)/9;11

變量的命名規(guī)則在C語(yǔ)言中,變量命名需要遵循一定的規(guī)則變量的命名規(guī)則:變量名可以由字母、數(shù)字和_(下劃線)組合而成變量名不能包含除_以外的任何特別字符,如:%、#、逗號(hào)、principal空格等123ratelastname變量名必需以字母或_(下劃線)開(kāi)頭zipcode變量名不能包含空白字符(換行符、空格和制表符稱為空白字符)C語(yǔ)言中的某些詞(例如int和float等)稱為保存字,具有特殊意義,不能用作變量名marks_3discount%C語(yǔ)言區(qū)分大小寫,因此變量price與變量PRICE是兩個(gè)不同的變量

有效名稱

無(wú)效名稱

cost_price

city

currency$

2.1.5賦值運(yùn)算賦值運(yùn)算符=賦值表達(dá)式:用=將一個(gè)變量和一個(gè)表達(dá)式連接起來(lái)的式子=的左邊必需是一個(gè)變量變量=表達(dá)式例如:fahr=100;celsius=5*(fahr-32)/9;計(jì)算賦值運(yùn)算符右側(cè)表達(dá)式的值將賦值運(yùn)算符右側(cè)表達(dá)式的值賦給左側(cè)的變量

分析錯(cuò)誤程序該程序?yàn)楹蔚貌坏秸_結(jié)果?//求兩個(gè)整數(shù)的和

#includestdio.h錯(cuò)誤原因是受數(shù)學(xué)思維的影響,intmain()吳以為sum=a+b;是建立sum和a+b{之間的一個(gè)等量關(guān)系inta,b,sum;sum=a+b;執(zhí)行sum=a+b;語(yǔ)句是,由于a和b中的值都不確定,是隨機(jī)的,a=3;所以其和也是隨機(jī)的,然后把這b=5;個(gè)數(shù)賦給了sumprintf(%d\n,sum);return賦值運(yùn)算“=〞表示的是一個(gè)動(dòng)作:先計(jì)算表達(dá)0;}式的值,再存入賦值號(hào)左邊的變量中,既不表示數(shù)學(xué)中的等量代換,也不表示相等關(guān)系14

該程序?yàn)楹蔚貌坏秸_結(jié)果?

2.1.6格式化輸出函數(shù)printf格式:printf(“格式控制串〞,輸出參數(shù)表)printf%d,countprintf(count);將一些信息依照指定的格式送到標(biāo)準(zhǔn)輸出(顯示器)格式字符串:指定數(shù)據(jù)的輸出格式輸出參數(shù)表:待輸出的數(shù)據(jù),可以是常量、變量或表達(dá)式

輸出格式printf(“fahr=%d,celsius=%d\n,fahr,celsius);輸出參數(shù)列表

普通字符,原樣輸出%開(kāi)頭的是轉(zhuǎn)換說(shuō)明,對(duì)應(yīng)與后面一個(gè)輸出參數(shù),對(duì)應(yīng)參數(shù)將被轉(zhuǎn)換成指定格式后在該位置輸出‘\n’是轉(zhuǎn)意字符,用來(lái)輸出一個(gè)回車

輸出結(jié)果:fahr=100,celsius=3716

轉(zhuǎn)換字符串

printf(%d,count);轉(zhuǎn)換字符串說(shuō)明將參數(shù)按整數(shù)形式轉(zhuǎn)換輸出,對(duì)應(yīng)參數(shù)應(yīng)是int類型將參數(shù)按長(zhǎng)整數(shù)形式轉(zhuǎn)換輸出,對(duì)應(yīng)參數(shù)是long型輸出一個(gè)字符,對(duì)應(yīng)參數(shù)應(yīng)當(dāng)是一個(gè)字符輸出一個(gè)字符串,對(duì)應(yīng)參數(shù)應(yīng)當(dāng)是一個(gè)字符串將參數(shù)按帶小數(shù)點(diǎn)數(shù)形式輸出,對(duì)應(yīng)參數(shù)應(yīng)是double類型,默認(rèn)狀況下確切到6位小數(shù)

%d%ld%c%s%f

轉(zhuǎn)換字符串%dintvisitor_count=150;printf(%d,visitor_count);

輸出結(jié)果:150

轉(zhuǎn)換字符串%md數(shù)據(jù)以十進(jìn)制整數(shù)格式輸出,寬度占m列,數(shù)據(jù)不足m列左補(bǔ)空格,超過(guò)m列按實(shí)際位數(shù)輸出。

intsalary=5500;printf(%10d,salary);%10d

輸出結(jié)果:

5500

輸出結(jié)果的左邊顯示了6個(gè)空格

轉(zhuǎn)換字符串%-md數(shù)據(jù)以十進(jìn)制整數(shù)格式輸出,寬度占m列,數(shù)據(jù)不足m列右補(bǔ)空格,超過(guò)m列按實(shí)際位數(shù)輸出。int

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論