C語(yǔ)言程序設(shè)計(jì) 浙江大學(xué):翁愷











scanf輸入的數(shù)據(jù)放入變量中







之所以會(huì)得到奇怪的效果,是因?yàn)樵谟?jì)算機(jī)的內(nèi)存當(dāng)中,變量沒(méi)有初始化時(shí),變量存儲(chǔ)在內(nèi)存的某個(gè)地方,該地方原本有什么,變量就是什么。
在最新的 vscode當(dāng)中,如果沒(méi)用給變量賦值,系統(tǒng)會(huì)默認(rèn)賦值為0




C99是C語(yǔ)言的語(yǔ)言標(biāo)準(zhǔn),1999年定義的C語(yǔ)言的標(biāo)準(zhǔn)


printf:用來(lái)把一些東西輸出
scanf:用來(lái)把一些東西輸入
%d:輸出整數(shù)


常量:固定不變的數(shù)
const int AMOUNT:定義一個(gè)常量:AMOUNT
好處:1、方便看代碼 2、方便查找
變量:會(huì)改變的量


后續(xù)為AMOUNT賦值有出現(xiàn)編譯器錯(cuò)誤

如果要修改,要將const去除






通過(guò)代碼將其英制計(jì)量單位換算成米計(jì)量單位
結(jié)果出錯(cuò):

英寸沒(méi)起作用

解決方案1: %d改成%f、英寸inch賦值時(shí)帶上小數(shù)點(diǎn)后一位


浮點(diǎn)數(shù):小數(shù)點(diǎn)是浮動(dòng)的,是可以變的;相對(duì)的是定點(diǎn)數(shù)。都是在計(jì)算機(jī)內(nèi)表達(dá)有小數(shù)點(diǎn)的數(shù)。

改正后代碼:

解決方法2:在定義變量時(shí),將int改成double。輸入時(shí)將%d改成%lf。
單精度:float
雙精度:double


雙精度輸入時(shí)必須用%lf,輸出時(shí)只需要用%f



















++和--的歷史來(lái)源:
當(dāng)年在pdp eleven上面,它的機(jī)器指令有兩條特殊的指令I(lǐng)NC和DEC,有了++和--之后,c語(yǔ)言的編譯器就可以很方便的把它編譯成這兩條對(duì)應(yīng)的指令,達(dá)到加快運(yùn)算的目的,但是到今天這個(gè)事情已經(jīng)不太有意義了。





寫(xiě)程序不是描述關(guān)系,寫(xiě)程序是表達(dá)動(dòng)作,即要讓計(jì)算機(jī)怎么一步一步給你把事情做出來(lái)。

這樣做只能使b的值賦給a,然后又將改變后的a賦給b,本質(zhì)上a變了,而b還是b。
需要另一個(gè)變量t來(lái)進(jìn)行a與b兩個(gè)值的互換。

運(yùn)行結(jié)果:

通過(guò)程序的斷電來(lái)清晰的看到整個(gè)運(yùn)行過(guò)程。

先編譯再調(diào)試














浮點(diǎn)型數(shù)據(jù)不能取余






%x:輸出16進(jìn)制的數(shù)
