C程序設(shè)計(jì)PPT課件_第1頁
C程序設(shè)計(jì)PPT課件_第2頁
C程序設(shè)計(jì)PPT課件_第3頁
C程序設(shè)計(jì)PPT課件_第4頁
C程序設(shè)計(jì)PPT課件_第5頁
已閱讀5頁,還剩20頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1 第3章C程序設(shè)計(jì) 順序程序設(shè)計(jì) 2 3 1程序的控制結(jié)構(gòu) 3 1 1算法的基本概念程序 算法 數(shù)據(jù)結(jié)構(gòu) 程序設(shè)計(jì)方法 語言工具和環(huán)境3 1 2算法的特性有窮性 一個(gè)算法應(yīng)包含有限的操作步驟而不能是無限的 確定性 算法中每一個(gè)步驟應(yīng)當(dāng)是確定的 而不能是含糊的 模棱兩可的 有零個(gè)或多個(gè)輸入 有一個(gè)或多個(gè)輸出 有效性 算法中每一個(gè)步驟應(yīng)當(dāng)能有效地執(zhí)行 并得到確定的結(jié)果 3 3 1 3算法的表示 1 用自然語言表示算法2 用流程圖表示算法圖3 1流程圖符號(hào) 4 例3 1 求5 的算法流程圖表示 圖3 2沒有打印功能圖3 3帶有打印功能 5 例3 2 判定閏年的算法用流程圖表示 6 三種基本結(jié)構(gòu)和改進(jìn)的流程圖 順序結(jié)構(gòu) 選擇結(jié)構(gòu) 循環(huán)結(jié)構(gòu) 7 三種基本結(jié)構(gòu)的共同特點(diǎn) 只有一個(gè)入口 只有一個(gè)出口 結(jié)構(gòu)內(nèi)的每一部分都有機(jī)會(huì)被執(zhí)行到 結(jié)構(gòu)內(nèi)不存在 死循環(huán) 8 3 1 4用N S流程圖表示算法 1 順序結(jié)構(gòu) 2 選擇結(jié)構(gòu) 3 循環(huán)結(jié)構(gòu) 9 3 1 5用計(jì)算機(jī)語言表示算法 例3 3 用C語言求5 includevoidmain inti t t 1 i 2 while i 5 循環(huán)結(jié)構(gòu) 判斷下循環(huán)條件是否為真 t t i i i 1 printf d t 10 3 1 6結(jié)構(gòu)化程序設(shè)計(jì)方法 結(jié)構(gòu)化程序設(shè)計(jì)所遵循的原則 自頂向下 逐步細(xì)化 模塊化設(shè)計(jì) 結(jié)構(gòu)化編碼 11 3 2 語句概述 圖3 5 程序的結(jié)構(gòu)圖 12 C語句可分為以下五類 表達(dá)式語句函數(shù)調(diào)用語句控制語句復(fù)合語句空語句 13 3 3數(shù)據(jù)輸入輸出的概念及在C語言中的實(shí)現(xiàn) 在使用 語言庫函數(shù)時(shí) 要用預(yù)編譯命令 include將有關(guān) 頭文件 包括到源文件中 使用標(biāo)準(zhǔn)輸入輸出庫函數(shù)時(shí)要用到 stdio h 文件 stdio是standardinputandoutupt的意思 因此源文件開頭應(yīng)有以下預(yù)編譯命令 include或 include stdio h 14 3 4字符數(shù)據(jù)的輸入與輸出 3 4 1putchar函數(shù) 字符輸出函數(shù) putchar函數(shù)是字符輸出函數(shù) 其功能是在顯示器上輸出單個(gè)字符 其一般形式為 putchar 字符型量 例如 putchar A 輸出大寫字母A putchar x 輸出字符變量x的值 putchar 101 也是輸出字符A putchar n 換行 例3 4 輸出單個(gè)字符 includevoidmain chara G b o c o d d putchar a putchar b putchar c putchar d putchar t 15 3 4 2getchar函數(shù) 鍵盤輸入函數(shù) getchar函數(shù)的功能是從鍵盤上輸入一個(gè)字符 其一般形式為 getchar 例4 2 輸入單個(gè)字符 includevoidmain charc printf inputacharacter n c getchar putchar c putchar getchar 或printf c getchar 16 3 5printf函數(shù) 格式輸出函數(shù) 3 5 1printf函數(shù)調(diào)用的一般形式printf函數(shù)是一個(gè)標(biāo)準(zhǔn)庫函數(shù) 它的函數(shù)原型在頭文件 stdio h 中 printf 格式控制字符串 輸出表列 格式控制字符串 標(biāo)志 輸出最小寬度 精度 長(zhǎng)度 類型 printf函數(shù)調(diào)用的一般形式為 輸出最小寬度 用十進(jìn)制整數(shù)來表示輸出的最少位數(shù) 若實(shí)際位數(shù)多于定義的寬度 則按實(shí)際位數(shù)輸出 保證不因?yàn)檩敵龆箶?shù)據(jù)發(fā)生截?cái)嗾`差 若實(shí)際位數(shù)少于定義的寬度則按表3 2補(bǔ)以空格或0 精度 精度格式符以 開頭 后跟十進(jìn)制整數(shù) 本項(xiàng)的意義是 如果輸出數(shù)值 則表示小數(shù)的位數(shù) 如果輸出的是字符 則表示輸出字符的個(gè)數(shù) 若實(shí)際位數(shù)大于所定義的精度數(shù) 則四舍五入截去超過的部分 長(zhǎng)度 長(zhǎng)度格式符為h l兩種 h表示按短整型 short 量輸出 l表示按長(zhǎng)整型 long 量輸出 17 例3 6 輸出整數(shù) includevoidmain inta 88 b 89 printf 4d 4o n a b printf 4ld 4d n a b printf 04d 04d n a b printf a d b d n a b 18 例3 4 按格式控制字符串要求輸出浮點(diǎn)型小數(shù)和字符型數(shù)據(jù) includevoidmain inta 15 floatb 123 1234567f doublec 12345678 1234567 chard p printf a d 5d o X n a a a a printf b f lf 5 4lf e n b b b b printf c lf f 8 4lf n c c c printf d c 8c n d d 19 3 5使用printf函數(shù)注意事項(xiàng) 1 如果想輸出 則應(yīng)該在 格式控制 字符串中用連續(xù)兩個(gè) 表示 2 輸出最小寬度 精度 僅用于輸出浮點(diǎn)型小數(shù)和字符串時(shí)的格式控制 輸出浮點(diǎn)型小數(shù) 形如 m nf f是一個(gè)浮點(diǎn)型變量 當(dāng)按此格式輸出時(shí) 包括小數(shù)點(diǎn)共m列寬 按照對(duì)齊方式補(bǔ)齊 取n位小數(shù) 當(dāng)f的實(shí)際寬度大于m時(shí) 則按實(shí)際寬度輸出 輸出字符串 形如 m ns s是一個(gè)字符串 當(dāng)按此格式輸出時(shí) 按照對(duì)齊方式用空格補(bǔ)齊m列 取n個(gè)字符 當(dāng)s的實(shí)際寬度大于m時(shí) 則按實(shí)際寬度輸出 3 printf 函數(shù)格式控制字符串可以包含轉(zhuǎn)移字符 floatf 3 14587f printf 10 2f f 輸出數(shù)據(jù)占10列寬 取2位小數(shù) 左對(duì)齊printf 5 2f f 輸出數(shù)據(jù)占5列寬 取2位小數(shù)printf 8 2f f 輸出數(shù)據(jù)占8列寬 取2位小數(shù) 右對(duì)齊printf 3 2f n f 輸出數(shù)據(jù)占3列寬 取2位小數(shù)f的實(shí)際 寬度大于3時(shí) 按實(shí)際寬度輸出 printf 3s 7 2s 4s 5 3s n CHINA CHINA CHINA CHINA 輸出為 CHINA CH CHIN CHI 20 3 6scanf函數(shù) 格式輸入函數(shù) scanf函數(shù)的一般形式 scanf 格式控制字符串 地址表列 例3 8 scanf函數(shù)的使用 includevoidmain inta b c printf inputa b c n scanf d d d 在scanf語句的格式串中由于沒有非格式字符在 d d d 之間作輸入時(shí)的間隔 因此在輸入時(shí)要用一個(gè)或一個(gè)以上的空格 回車鍵 Tab鍵作為每?jī)蓚€(gè)輸入數(shù)之間的間隔 21 格式字符串 輸入數(shù)據(jù)寬度 長(zhǎng)度 類型 類型 表示輸入數(shù)據(jù)的類型 其格式符和意義如下表 2 抑制符 用以表示輸入的數(shù)據(jù)不賦值給相應(yīng)的變量 即跳過該輸入值 如 scanf d d d 當(dāng)輸入為 123時(shí) 把1賦予a 2被跳過 3賦予b 3 寬度 用十進(jìn)制整數(shù)指定輸入的寬度 即字符數(shù) 遇空格或不可轉(zhuǎn)換字符則結(jié)束 4 長(zhǎng)度 長(zhǎng)度格式符為l和h l表示輸入長(zhǎng)整型數(shù)據(jù) 如 ld 和雙精度浮點(diǎn)數(shù) 如 lf h表示輸入短整型數(shù)據(jù) 22 使用scanf函數(shù)還必須注意以下幾點(diǎn) 1 scanf函數(shù)中沒有精度控制 如 scanf 5 2f 才是合法的 3 在輸入多個(gè)數(shù)值數(shù)據(jù)時(shí) 若格式控制串中沒有非格式字符作輸入數(shù)據(jù)之間的間隔則可用空格 TAB或回車符作間隔 C編譯在碰到空格 TAB 回車或非法數(shù)據(jù) 如對(duì) d 輸入 12A 時(shí) A即為非法數(shù)據(jù) 時(shí)即認(rèn)為該數(shù)據(jù)結(jié)束 4 在輸入字符數(shù)據(jù)時(shí) 特別需要注意空格符 回車符均作為有效字符使用 若格式控制串中無非格式字符 則認(rèn)為所有輸入的字符均為有效字符 23 例3 6 數(shù)據(jù)的格式化輸入輸出 輸入一學(xué)生的學(xué)號(hào) 8位數(shù)字 生日 年 月 日 性別 M 男 F 女 及三門功課 語文 數(shù)學(xué) 英語 的成績(jī) 現(xiàn)要求計(jì)算該學(xué)生的總分和平均分 并將該學(xué)生的全部信息輸出 包括總分 平均分 includevoidmain unsignedlongno 學(xué)號(hào)unsignedintyear month day 生日unsignedcharsex 性別floatchinese math english floattotal average printf inputthestudent sNO scanf 8ld 24 3 7順序結(jié)構(gòu)程序設(shè)計(jì)舉例 例3 10 輸入三角形的三邊長(zhǎng) 求三角形面積 include includevoidmain floata b c s area scanf f f f 例3 11 求ax2 bx c 0方程的根 a b c由鍵盤輸入 設(shè)b2 4a

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(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ǔ)空間,僅對(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)論