在屏幕上顯示Hello.ppt_第1頁(yè)
在屏幕上顯示Hello.ppt_第2頁(yè)
在屏幕上顯示Hello.ppt_第3頁(yè)
在屏幕上顯示Hello.ppt_第4頁(yè)
在屏幕上顯示Hello.ppt_第5頁(yè)
已閱讀5頁(yè),還剩36頁(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)介

1 2 1在屏幕上顯示HelloWorld 第2章用C語(yǔ)言編寫程序 用算例盡快進(jìn)入編程 例2 1在屏幕上顯示一個(gè)短句 HelloWorld 顯示 HelloWorld includevoidmain printf HelloWorld n 主函數(shù) 注釋文本 調(diào)用輸出函數(shù) 預(yù)編譯 程序中涉及語(yǔ)法點(diǎn) printf由庫(kù)函數(shù)stdio h解釋其參數(shù) 字符串 顯示字符串 n換行符函數(shù)后的 表示函數(shù)語(yǔ)句要求在屏幕上顯示文字 printf 要顯示的文字 學(xué)習(xí)方法 閱讀 模仿 改寫 編寫 2 例2 2在屏幕上顯示 Programmingisfun AndProgramminginCisevenmorefun includevoidmain printf Programmingisfun n printf AndProgramminginCisevenmorefun n 根據(jù)要求在屏幕上顯示文字 printf 要顯示的文字 注 換行符 n的使用 源程序 3 2 2求華氏溫度100 F對(duì)應(yīng)的攝氏溫度 例2 3求華氏溫度100 F對(duì)應(yīng)的攝氏溫度計(jì)算公式其中C為攝氏溫度 F為華氏溫度 2 2 1程序解析 includevoidmain intcelsius fahr 變量定義 fahr 100 常量賦值于變量 celsius 5 fahr 32 9 表達(dá)式賦值于變量 printf fahr d celsius d n fahr celsius 輸出結(jié)果 輸出 fahr 100 celsius 37 程序中涉及語(yǔ)法點(diǎn) 常量 變量和數(shù)據(jù)類型運(yùn)算符 表達(dá)式輸出變量的值 4 例2 3程序中celsius 5 fahr 32 9 2 2 2常量 變量和數(shù)據(jù)類型 其中5 32 9為常量 1 常量 常量 在程序運(yùn)行過(guò)程中 其值不會(huì)被改變 常量分?jǐn)?shù)據(jù)類型 由書寫格式確定 整型 不帶小數(shù)點(diǎn)的數(shù) 即整數(shù)例100 10 5 0 實(shí)型 帶小數(shù)點(diǎn)的數(shù)例123 45 0 54321 5 2 變量 變量 在程序運(yùn)行過(guò)程中 其值可以被改 例2 3程序中intcelsius fahr celsius 5 fahr 32 9 其中celsius fahr為變量 變量定義的一般形式 類型名變量名表 使用變量必須要定義 注 double型數(shù)據(jù)比f(wàn)loat精度高 取值范圍大 有效位數(shù)多 例如 intcelsius fahr 定義整型變量 存放整數(shù)float x 定義單精度浮點(diǎn)型變量 存放實(shí)數(shù)doublea1 b2 定義雙精度浮點(diǎn)型變量 存放實(shí)數(shù) 6 變量取名 按標(biāo)識(shí)符取名 一般用小寫字母 見名知義 定義變量做了3件事 變量取名 確定數(shù)據(jù)類型 分配內(nèi)存 標(biāo)識(shí)符 規(guī)定由字母 數(shù)字以及下劃線組成 第一個(gè)字符必須是字母或下劃線 數(shù)據(jù)類型 由類型關(guān)鍵字確定 同時(shí)也確定數(shù)據(jù)的表示范圍int 32768 32767或 2147483648 2147483648float 10 38 1038有效位數(shù)7 8位double 10 308 1030815 16位 分配內(nèi)存 對(duì)定義的每一個(gè)變量分配對(duì)應(yīng)的存儲(chǔ)單元 celsius fahr 而fahr 100 表示100存入fahr變量的存儲(chǔ)單元 即fahr 100 例如 celsius fahr x a1 b1是標(biāo)識(shí)符 而c 1 b a 2b不是標(biāo)識(shí)符 7 注 C語(yǔ)言中的變量與數(shù)學(xué)上的符號(hào)含義不同 例x x 1 數(shù)學(xué)上無(wú)意義 C語(yǔ)言表示把x變量存儲(chǔ)單元的值取出加1 然后再保存到x變量存儲(chǔ)單元中 變量必須先定義 后使用 定義位置在程序的開始 應(yīng)該先賦值 后引用 includevoidmain intcelsius fahr fahr 100 celsius 5 fahr 32 9 printf fahr d celsius d n fahr celsius 8 2 2 3算術(shù)運(yùn)算和賦值運(yùn)算 例2 3程序中fahr 100 celsius 5 fahr 32 9 賦值運(yùn)算 1 算術(shù)運(yùn)算 加減雙目運(yùn)算4級(jí)從左到右 乘除取余雙目運(yùn)算3級(jí)從左到右 先算術(shù)運(yùn)算 后賦值運(yùn)算 計(jì)算通過(guò)表達(dá)式實(shí)現(xiàn) 表達(dá)式 用運(yùn)算符將運(yùn)算對(duì)象及括弧按語(yǔ)法規(guī)則連接起來(lái)的式子 例數(shù)學(xué)式C表達(dá)式 5 fahr 32 9 b sqrt b b 4 a c 2 a 注 函數(shù)sqrt x 計(jì)算 括弧改變計(jì)算順序 9 注 整 整是取整如 5 3 11 3 0 取余 的兩邊運(yùn)算對(duì)象必須是整型如5 6 5100 4 0a b則inta b 又可作為正 負(fù)運(yùn)算符 正負(fù)單目運(yùn)算2級(jí)從左到右如 10 10 5 fahr 32 9和5 9 fahr 32 等價(jià)嗎 10 2 賦值運(yùn)算 格式變量 表達(dá)式 例fahr 100 celsius 5 fahr 32 9 操作 計(jì)算賦值運(yùn)算符右側(cè)表達(dá)式的值 將賦值運(yùn)算符右側(cè)表達(dá)式的值賦給左側(cè)的變量 注 是賦值符 而不是等號(hào)變量 表達(dá)式 稱之賦值語(yǔ)句 賦值運(yùn)算符 14級(jí)從右到左 賦值語(yǔ)句表達(dá)計(jì)算公式 x1 b sqrt b b 4 a c 2 a 11 2 2 4格式化輸出函數(shù)printf 例2 3程序中printf fahr d celsius d n fahr celsius 格式printf 格式控制 輸出表列 其中 格式控制是由雙引號(hào)括起來(lái)的字符串 包括兩種信息 1 普通字符照原樣輸出字符或轉(zhuǎn)義符如fahr celsius 例2 1printf HelloWorld n 中HelloWorld n是普通字符 按指定的格式輸出數(shù)據(jù) 格式控制字符與被輸出的數(shù)據(jù)類型有關(guān) int型 dfloat double型 f或 nf m nf 2 格式說(shuō)明 格式控制符 保留小數(shù)位6位n位整個(gè)數(shù)占m位 12 輸出表列是輸出的數(shù)據(jù) 可以是常數(shù) 變量和表達(dá)式 每個(gè)輸出數(shù)據(jù)之間用逗號(hào)分隔 如printf f f f 123 45 x 2 a b printf fahr d celsius d n fahr celsius 操作將輸出表列中的數(shù)據(jù)按格式說(shuō)明在顯示屏輸出 例2 3程序中fahr 100 celsius 5 fahr 32 9 printf fahr d celsius d n fahr celsius 注 格式控制符與輸出數(shù)據(jù)的個(gè)數(shù) 類型 位置必須一一對(duì)應(yīng) 輸出表列 13 includevoidmain intcelsius fahr 變量定義 fahr 100 常量賦值于變量 celsius 5 fahr 32 9 表達(dá)式賦值于變量 printf fahr d celsius d n fahr celsius 輸出結(jié)果 輸出 fahr 100 celsius 37 例2 3求華氏溫度對(duì)應(yīng)的攝氏溫度 程序缺陷 無(wú)通用性只能求出fahr 100時(shí)的攝氏溫度 14 includevoidmain intcelsius fahr scanf d 改變例2 3求華氏溫度對(duì)應(yīng)的攝氏溫度 運(yùn)行程序 鍵入 100輸出 fahr 100 celsius 37鍵入 120輸出 fahr 120 celsius 48 15 2 2 5格式化輸入函數(shù)scanf 格式scanf 格式控制 地址表列 地址列表是輸入數(shù)據(jù)存入內(nèi)存的地址 可以是變量的地址 每個(gè)內(nèi)存地址之間用逗號(hào)分隔 格式控制是用雙引號(hào)括起來(lái)的字符串 字符串由格式說(shuō)明和普通字符構(gòu)成 怎么知道變量的地址 利用地址運(yùn)算符求出變量的地址格式 變量名 例inta b 則 a b表示取a b變量的地址 例inta floatb scanf d f 格式說(shuō)明由 和格式字符構(gòu)成 與數(shù)據(jù)類型有關(guān)int型 dfloat型 fdouble型 lf 16 普通字符 在輸入數(shù)據(jù)時(shí)需要原樣輸入的字符例scanf x f 輸入數(shù)據(jù)時(shí) x 2 5x 必須照原樣輸入 操作將鍵盤鍵入的數(shù)據(jù)按指定類型格式存入指定內(nèi)存存儲(chǔ)單元 includevoidmain inta b c scanf d d d 例 格式控制 地址表列 運(yùn)行輸入345輸出3 4 5 一般普通字符作為輸入數(shù)據(jù)之間的分隔符使用 如 空格例scanf d f 輸入數(shù)據(jù)時(shí)10 12 5 無(wú)普通字符時(shí)輸入數(shù)據(jù)之間用空格分隔符例scanf d f 輸入數(shù)據(jù)時(shí)1012 5 17 在格式說(shuō)明中無(wú)普通字符時(shí) 鍵入數(shù)據(jù)之間可用空格 或分隔 即多各空格分割 上例輸入可改為 345一個(gè)跳8個(gè)空格 或345 在格式說(shuō)明中用了普通字符 則普通字符作為數(shù)據(jù)之間的分隔符如上例改用輸入函數(shù)scanf 為scanf d d d 輸入則為a 3 b 4 c 5 由此可見 為了減少不必要的輸入 在scanf 函數(shù)的格式控制中盡量不要出現(xiàn)普通字符 注 格式控制符與輸入數(shù)據(jù)的個(gè)數(shù) 類型 位置必須一一對(duì)應(yīng) 例scanf d d d 18 對(duì)一般簡(jiǎn)單程序編程算法 1 輸入已知值2 按計(jì)算公式求值3 輸出結(jié)果 例求二元一次方程 ax2 bx c 0的實(shí)根已知b b 4ac 0 分析已知b b 4ac 0則實(shí)根為 算法1 輸入已知值a b c2 代入公式求x1 x23 輸出x1 x2 程序 include stdio h include math h voidmain floata b c x1 x2 scanf f f f 喔 編程原來(lái)這么簡(jiǎn)單 順序結(jié)構(gòu) 19 2 2 6常用數(shù)學(xué)庫(kù)函數(shù) 庫(kù)函數(shù)C語(yǔ)言系統(tǒng)提供事先編好的函數(shù) 供用戶在編程時(shí)調(diào)用 如scanf printf sqrt 平方根函數(shù)sqrt x 指數(shù)函數(shù)exp x ex絕對(duì)值函數(shù)fabs x x 以e為底的對(duì)數(shù)函數(shù)log x ln x 冪函數(shù)pow x n xn以10為底的對(duì)數(shù)函數(shù)log10 x log10 x 常用數(shù)學(xué)庫(kù)函數(shù) 函數(shù)調(diào)用格式函數(shù)名 參數(shù) 例1 12pow 1 1 2 e2 3exp 2 3 注 參數(shù)的個(gè)數(shù) 類型一致 include命令用戶調(diào)用庫(kù)函數(shù)時(shí) 將相應(yīng)的頭文件包含到源程序中 例調(diào)用scanf printf 需要 include調(diào)用sqrt 需要 include 20 例2 5輸入存款金額money 存期year和年利率rate 根據(jù)公式計(jì)算存款到期時(shí)的本息合計(jì)sum 稅前 輸出時(shí)保留2位小數(shù) sum money 1 rate year 使用xy pow x y 函數(shù)sum money pow 1 rate year include includevoidmain intmoney year doublerate sum printf inputmoney yearandrate n scanf d d lf inputmoney yearandrate 100030 025sum 1076 89 21 2 3計(jì)算分段函數(shù) 例2 4輸入x 求分段函數(shù)f x 的值 保留2位小數(shù) 2 3 1程序解析 includevoidmain doublex y printf inputx x 0 n scanf lf 運(yùn)行inputx x 0 9 5y f 9 500000 12 67inputx x 0 21 3y f 21 300000 42 75 程序中新語(yǔ)法點(diǎn) x 15關(guān)系運(yùn)算if x 15 y 4 x 3 elsey 2 5x 10 5 if else語(yǔ)句 22 2 3 2關(guān)系運(yùn)算 1 關(guān)系運(yùn)算符 大于 大于或等于 等于 不等于 6級(jí) 7級(jí) 從左到右雙目運(yùn)算 6種關(guān)系符 2 關(guān)系表達(dá)式格式 用關(guān)系運(yùn)算符將2個(gè)表達(dá)式連接起來(lái)式子 操作關(guān)系表達(dá)式將兩邊的表達(dá)式的值進(jìn)行比較得到邏輯值1為真0為假 例x 1 當(dāng)x 0 5 1 當(dāng)x 2 4 0 23 關(guān)系表達(dá)式用途 描述簡(jiǎn)單的條件判斷 例判斷x是否為負(fù)數(shù)x 0判斷x是否不為零x 0 2 3 3if else語(yǔ)句 格式if 表達(dá)式 語(yǔ)句1else語(yǔ)句2 表達(dá)式 語(yǔ)句1 語(yǔ)句2 1 0 操作當(dāng)表達(dá)式的值為1 真 執(zhí)行語(yǔ)句1 否則執(zhí)行語(yǔ)句2 表達(dá)式可以是關(guān)系表達(dá)式 語(yǔ)句i單個(gè)語(yǔ)句或復(fù)合語(yǔ)句復(fù)合語(yǔ)句 語(yǔ)句1 語(yǔ)句2 24 例輸入x 求分段函數(shù)f x 的值 保留1位小數(shù) 輸入x x 0 y 1 x y 0 輸出y 假 真 includevoidmain floatx y printf inputx n scanf f inputx 2 5f 2 50 0 4 將if x 0 改為if x 運(yùn)行結(jié)果相同 說(shuō)明 if 表達(dá)式 中的表達(dá)式可以是任意表達(dá)式表達(dá)式的值非0為真 0為假 25 注 當(dāng)if else語(yǔ)句中語(yǔ)句2不存在允許else缺省 格式if 表達(dá)式 語(yǔ)句1 表達(dá)式 語(yǔ)句1 1 0 includevoidmain floatx y printf inputx n scanf f 26 例輸入兩個(gè)實(shí)數(shù) 按小大次序輸出 includevoidmain floata b t scanf f f 注不能寫成if a b t a a b b t 27 例2 6輸出一張華氏 攝氏溫度轉(zhuǎn)換表 將華氏溫度從30 35 F之間的每一度 分別轉(zhuǎn)換成相應(yīng)的攝氏溫度并輸出 fahrcelsius30 1 131 0 6320 0330 6341 1351 7 2 4輸出華氏 攝氏溫度轉(zhuǎn)換表 includevoidmain floatcelsius fahr printf fahrcelsius n fahr 30 celsius 5 fahr 32 9 printf 3 0f 6 1f n fahr celsius 運(yùn)行得表的第一行數(shù)據(jù) 例2 3程序 2 4 1循環(huán)概念 28 includevoidmain floatcelsius fahr printf fahrcelsius n fahr 30 celsius 5 fahr 32 9 printf 3 0f 6 1f n fahr celsius fahr 31 celsius 5 fahr 32 9 printf 3 0f 6 1f n fahr celsius fahr 35 celsius 5 fahr 32 9 printf 3 0f 6 1f n fahr celsius fahr celsius 5 fahr 32 9 printf 3 0f 6 1f n fahr celsius 重復(fù) 30 31 35 29 fahr celsius 5 fahr 32 9 printf 3 0f 6 1f n fahr celsius 重復(fù) 30 31 45 第一次fahr 30 第二次fahr 31 改寫fahr fahr 1 第三次fahr 32 同理fahr fahr 1 第六次fahr 35同理fahr fahr 1 fahr 30 celsius 5 fahr 32 9 printf 3 0f 6 1f n fahr celsius fahr fahr 1 fahr 35 真 假 goto 無(wú)條件轉(zhuǎn)移格式goto語(yǔ)句標(biāo)號(hào) 其中 語(yǔ)句標(biāo)號(hào)用標(biāo)識(shí)符命名 停 30 includevoidmain floatcelsius fahr fahr 30 printf fahrcelsius n loop if fahr 35 celsius 5 fahr 32 9 printf 3 0f 6 1f n fahr celsius fahr fahr 1 gotoloop else 可省略 注 goto語(yǔ)句與if語(yǔ)句配合使用構(gòu)成循環(huán)結(jié)構(gòu) goto破壞程序的結(jié)構(gòu) 可讀性差 少用或不用 構(gòu)成循環(huán)的要素 循環(huán)體條件判斷進(jìn)入每次循環(huán)的準(zhǔn)備 循環(huán)體 條件判斷 循環(huán)前準(zhǔn)備 下次循環(huán)前準(zhǔn)備 循環(huán)結(jié)構(gòu)根據(jù)條件的判斷對(duì)某一段程序重復(fù)執(zhí)行 31 2 4 2for語(yǔ)句 格式for 表達(dá)式1 表達(dá)式2 表達(dá)式3 語(yǔ)句 其中語(yǔ)句是一個(gè)語(yǔ)句或復(fù)合語(yǔ)句 循環(huán)體表達(dá)式1進(jìn)入循環(huán)之前求值 為進(jìn)入循環(huán)作準(zhǔn)備表達(dá)式2是條件 求值得真 非0 做循環(huán) 假 0 退出循環(huán)表達(dá)式3做一次循環(huán)后 求值 為進(jìn)下一次入循環(huán)作準(zhǔn)備 操作 1 做表達(dá)式1 2 求表達(dá)式2 若真 非0 做內(nèi)嵌語(yǔ)句 然后做 3 若假 0 終止for循環(huán) 3 做表達(dá)式3 轉(zhuǎn)到 2 loop 表達(dá)式1 if 表達(dá)式2 語(yǔ)句 表達(dá)式3 gotoloop 等價(jià)于 32 例2 6輸出一張華氏 攝氏溫度轉(zhuǎn)換表 includevoidmain floatcelsius fahr printf fahrcelsius n for fahr 30 fahr 35 fahr fahr 1 celsius 5 fahr 32 9 printf 3 0f 6 1f n fahr celsius fahr 30 celsius 5 fahr 32 9 printf 3 0f 6 1f n fahr celsius fahr fahr 1 fahr 35 真 假 停 表達(dá)式1 表達(dá)式2 表達(dá)式3 循環(huán)體 for書寫順序和執(zhí)行順序不同隱含循環(huán) 33 注 循環(huán)體是復(fù)合語(yǔ)句 for fahr 30 fahr 35 fahr fahr 1 celsius 5 fahr 32 9 printf 3 0f 6 1f n fahr celsius for fahr 30 fahr 35 fahr fahr 1 celsius 5 fahr 32 9 printf 3 0f 6 1f n fahr celsius 循環(huán)體空語(yǔ)句 for fahr 30 fahr 35 fahr fahr 1 celsius 5 fahr 32 9 printf 3 0f 6 1f n fahr celsius 34 即求1 2 3 4 100 可以直接使用賦值語(yǔ)句s 1 2 3 4 100 但語(yǔ)句太長(zhǎng) 改寫為s 0 s s 1 s s 2 s s 100 同一計(jì)算步驟 s s ii 1 2 3 100計(jì)算前s 0 s 0 i 1 i 100 s s i i i 1 輸出s 流程圖 根據(jù)i 100條件 重復(fù)執(zhí)行s s i i i 1程序段100次 但語(yǔ)句太多 非0 0 例2 7 表達(dá)式1 表達(dá)式2 表達(dá)式3 循環(huán)體 35 include stdio h voidmain inti s s 0 for i 1 i 100 i i 1 s s i printf s d n s 程序 s 0 i 1 i 100 s s i i i 1 輸出s 流程圖 非0 0 表達(dá)式1 表達(dá)式2 表達(dá)式3 循環(huán)體 格式for 表達(dá)式1 表達(dá)式2 表達(dá)式3 語(yǔ)句 運(yùn)行輸出s 5050 36 2 4 3指定次數(shù)的循環(huán)程序設(shè)計(jì) for 表達(dá)式1 表達(dá)式2 表達(dá)式3 語(yǔ)句 表達(dá)式2 語(yǔ)句 非0 0 表達(dá)式1 表達(dá)式3 要用循環(huán)次數(shù)控制循環(huán) 引入概念循環(huán)變量 初值 終值 增量 include stdio h voidmain inti s s 0 for i 1 i 100 i i 1 s s i printf s d n s 例2 7中 循環(huán)變量 初值 終值 增量 i 100 語(yǔ)句 非0 0 i 1 i i 1

溫馨提示

  • 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)論