




已閱讀5頁,還剩25頁未讀, 繼續(xù)免費閱讀
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第3章順序程序設計 教學目標 1 掌握C語言的輸入和輸出方法2 重點掌握并靈活運用printf 和scanf 函數(shù)3 熟練掌握順序結構的程序設計 3 1C語言的基本語句 一個C程序可以由若干個源程序文件組成 一個源文件可以由若干個函數(shù)和預處理命令組成以及全局變量聲明部分組成 一個函數(shù)由數(shù)據(jù)定義部分和執(zhí)行語句組成 程序應該包括數(shù)據(jù)描述 由聲明部分來實現(xiàn) 和數(shù)據(jù)操作 由語句實現(xiàn) 數(shù)據(jù)描述主要定義數(shù)據(jù)結構和定義初值 數(shù)據(jù)操作的任務是對已提供的數(shù)據(jù)進行加工 3 1C語言的基本語句 1 控制語句 完成一定的控制功能 if else 條件語句 for 循環(huán)語句 while 循環(huán)語句 do while 循環(huán)語句 continue 結束本次循環(huán)語句 break 中止執(zhí)行switch語句或者循環(huán)語句 switch 多分支選擇語句 goto 轉向語句 return 從函數(shù)返回語句 括號 表示條件 表示內嵌的執(zhí)行語句 2 函數(shù)調用語句由一次函數(shù)調用加上一個分號組成 printf hello 3 表達式語句由一個表達式構成的一個語旬 例a 3 4 空語句表示什么也不做 有時用來作轉向點 或循環(huán)體 例 5 復合語句可以用 把一些語句括起來成為復合語句 也叫分程序 例 p p I I 3 2數(shù)據(jù)輸入和輸出 C語言無I O關鍵字 I O操作由庫函數(shù)實現(xiàn) include或 include stdio h 3 2 1基本概念 3 2 2字符數(shù)據(jù)的輸入與輸出 輸入格式 intgetchar void 功能 從鍵盤讀一字符返值 正常 返回所輸入數(shù)據(jù)的ASCII的值 出錯 返回EOF 1 includemain intc printf Enteracharacter c getchar printf c hex x n c c 運行結果 Enteracharacter A A hex41 3 2 2字符數(shù)據(jù)的輸入與輸出 輸出格式 intputchar c 參數(shù) c為字符常量 變量或表達式功能 把字符c輸出到顯示器上返值 正常 為顯示的代碼值 出錯 為EOF 1 includemain intc chara c 65 a B putchar c putchar n putchar a 運行結果 AB 格式 printf 格式控制串 輸出表 功能 按指定格式向顯示器輸出數(shù)據(jù)返值 正常 返回輸出字節(jié)數(shù) 出錯 返回EOF 1 格式輸出函數(shù) 輸出表 要輸出的數(shù)據(jù) 可以沒有 多個時以 分隔 可以是變量也可以是常量 也可以是表達式格式控制串 包含兩種信息格式說明 修飾符 格式字符 用于指定輸出格式普通字符或轉義序列 原樣輸出格式字符 inta 567 printf d a inta 255 printf x a inta 65 printf o a inta 567 printf u a chara 65 printf c a printf s ABC floata 567 789 printf e a floata 567 789 printf f a floata 567 789 printf g a printf 567 ff 101 567 A ABC 5 67789e 02 567 789000 567 789 說明格式字符要用小寫格式字符與輸出項個數(shù)應相同 按先后順序一一對應輸出轉換 格式字符與輸出項類型不一致 自動按指定格式輸出對不同類型的數(shù)據(jù)用不同的格式字符 例main unsignedintu 65535 printf u d n u 輸出結果 u 1 例inta 3 b 4 printf d d n a b printf a d b d n a b 例inta 3 b 4 printf d d n a b printf a d b d n a b 輸出結果 34a 3 b 4 附加格式說明符 修飾符 注意 其中的 0 的作用在前面出現(xiàn)了 標志或指定了精度 整數(shù) 則忽略該標志 格式字符應用舉例 d格式符 用來輸出十進制整數(shù) 有以下幾種用法 1 d 按整型數(shù)據(jù)的實際長度輸出 2 md m為指定的輸出字段的寬度 如果數(shù)據(jù)的位數(shù)小于m 則左端補以空格 若大于m 則按實際位數(shù)輸出 3 ld 輸出長整型數(shù)據(jù) 也可以用m來指定字符寬度例1 a 123 d 12345 printf 4d 4d a b 例2 longa 135790 printf ld a printf 8ld a 一個int型數(shù)據(jù)可以用 d或 ld格式輸出 一個long型數(shù)據(jù)應當用 ld格式輸出 O格式符 以8進制數(shù)形式輸出整數(shù) 帶符號的數(shù)將會以何種形式輸出 由于是將內存單元中的各位的值 0或1 按8進制形式輸出 因此輸出的數(shù)值不帶符號 即將符號位也一起作為8進制數(shù)的一部分輸出 例 inta 1printf d o a a 輸出 1 177777請問 是否會輸出帶符號的8進制整數(shù) 注意 對于長整數(shù) long型 可以用 lo格式輸出 同樣可以指定字符寬度 printf 8o a 輸出數(shù)據(jù)為 177777 x格式符 以16進制數(shù)形式輸出整數(shù) 請問 是否會出理負的16進制數(shù) 例如 inta 1 printf x o d a a a 輸出結果為ffff 177777 1可以用 lx輸出長整型數(shù) 也可以指定輸出字段的寬度 如 12x U格式符 用來輸出unsigned型數(shù)據(jù) 即無符號數(shù) 以十進制形式輸出 注意 一個有符號整數(shù) int型 也可以用 u格式輸出 一個unsigned型數(shù)據(jù)也可以用 d o x格式輸出 例 main unsignedinta 65535 intb 2 printf a d o x u n a a a a printf a d o x u n b b b b 運行結果 a 1 177777 ffff 65535b 2 177776 fffe 65534 C格式符 用來輸出一個字符例 charc a printf c c 一個整數(shù) 只要它的值在0 255范圍內 也可以用字符形式輸出 在輸出前 將該整數(shù)轉換成相應的ASCII字符 反之 一個字符數(shù)據(jù)也可以用整數(shù)形式輸出 同樣可以指定輸出字數(shù)寬度 例charc a printf 3c c 輸出 a S格式符 用來輸出一個字符串 有幾種用法 1 s 2 ms 輸出的字符串占m列 如字符串本身長度大于m 則突破m的限制 將字符串全部輸出 若串長小于m 則左補空格 3 ms 如果串長小于m 則在m列范圍內 字符串向左靠 右補空格 4 m ns 輸出m列 但只取字符串中左端n個字符 這個n個字符輸出在m列的右側 左補空格 5 m ns 輸出m列 但只取字符串中左端n個字符 這個n個字符輸出在m列的左側 右補空格 如果n大于m 則m自動取n值 即保證n個字符正常輸出 例 main Printf 3s 7 2s 4s 5 3s n CHINA CHINA CHINA CHINA CHINA 輸出 CHINA CH CHIN CHI f格式符 用來輸出實數(shù) 包括單 雙精度 以小數(shù)形式輸出 有以下幾種用法 1 f 不指定字段寬度 由系統(tǒng)自動指定 使整數(shù)部分全部如數(shù)輸出 并輸出6位小數(shù) 注意 并非全部數(shù)字都是有效數(shù)字 單精度實數(shù)的有效位數(shù)一般為7位 例 main floatx y x 111111 111 y 222222 222 printf f x y 運行結果為 333333 328125只有前7位數(shù)字是有效數(shù)字 雙精度也可以用 f格式輸出 它的有效位數(shù)一般為16位 給出小數(shù)6位 2 m nf 指定輸出數(shù)據(jù)共占m列 其中有n位小數(shù) 如果數(shù)值長度小于m 則左端補空格 3 m nf與 m nf基本相同 只是使輸出的數(shù)值向左端靠 右端補空格 例 main floatf 123 456 Printf f 10f 10 2f 2f 10 2f n f f f f f 輸出結果如下 123 455994 123 455994 123 46 123 46 123 46 e格式符 以指數(shù)形式輸出實數(shù) 可用以下形式 1 e 不指定輸出數(shù)據(jù)所占的寬度和數(shù)字部分小數(shù)位數(shù) 由系統(tǒng)自動指定給出6位小數(shù) 指數(shù)部分占5位 如e 002 其中e占一位 指數(shù)符號占一位 指數(shù)占三位 數(shù)值按標準化指數(shù)形式輸出 數(shù)值按標準化指數(shù)形式輸出 即小數(shù)點前必須有且只有一位非零數(shù)字 例如printf e 123 456 輸出 1 234560e 002請問 用 e格式輸出的實數(shù)共占多少列寬度 13 2 m ne和 m nem n和 字符含義與前相同 此處n指數(shù)據(jù)的數(shù)字部分 又稱尾數(shù) 的小數(shù)位數(shù) 例f 123 456則printf e 10e 10 2e 2e 10 2e f f f f f 運行結果 1 234560e 002 1 234560e 002 1 23e 002 1 23e 002 1 23e 002 g格式符 用來輸出實數(shù) 它根據(jù)數(shù)值的大小 自動選f格式或e格式 選擇輸出時占寬度較小的一種 且不輸出無意義的零 例如 若f 123 468 printf f e g f f f 輸出結果 123 468000 1 234680e 002 123 468 使用printf函數(shù)時的幾點說明 有些系統(tǒng)要求格式字符要用小寫字母 如 d不能寫成 D 可以在printf函數(shù)中的 格式控制 字符串內包含轉義字符 上面介紹的d o x u c s f e g等字符 如用在 后面就作為格式符號 一個格式說明以 開頭 以上述9個格式字符之一為結束 中間可以插入附加格式字符 如果想輸出字符 則應該在 格式控制 字符串中用連續(xù)兩個 表示 例 printf f 1 0 3 輸出0 333333 注意 不同的系統(tǒng)在實現(xiàn)格式輸出時 輸出結果可能會有一些小的差別 例如用 e格式符輸出實數(shù)時 有些系統(tǒng)輸出的指數(shù)部分為4位 而不是5位 前面的數(shù)字部分為5位小數(shù)而不是6位等等 格式輸入函數(shù) 格式 scanf 格式控制串 地址表 功能 按指定格式從鍵盤讀入數(shù)據(jù) 存入地址表指定的存儲單元中 并按回車鍵結束返值 正常 返回輸入數(shù)據(jù)個數(shù) 地址表 變量的地址 常用取地址運算符 格式字符 d i o x u c s f e 例scanf d 輸入 10 則a 10 例scanf x 輸入 11 則a 17 附加格式說明符 修飾符 說明 標準C在scanf中不使用 u說明符 對unsigned型數(shù)據(jù) 以 d或 o x格式輸入 可以指定輸入數(shù)據(jù)所占列數(shù) 系統(tǒng)自動按它截取所需數(shù)據(jù) 例scanf 4d 2d 2d 輸入19991015 則1999 yy 10 mm 15 dd 例scanf 3c 2c 輸入abcde 則 a c1 d c2 說明 后的 附加說明符 用來表示跳過它相應的數(shù)據(jù) 輸入數(shù)據(jù)時不能規(guī)定精度例如 scanf 7 2f 是不合法的 例scanf 2d 3d 2d 輸入12 345 67 則12 a 67 b 例scanf 3d 4d f 輸入12345678765 43 則123 k 8765 43 f Scanf函數(shù)中的 格式控制 后面應當是變量地址 而不應是變量名 如果在 格式控制 字符串中除了格式說明以外還有其它字符 則在輸入數(shù)據(jù)時應輸入與這些字符相同的字符 在用 c 格式輸入字符時 空格字符和 轉義字符 都作為有效字符輸入在輸入數(shù)據(jù)時 遇以下情況時該數(shù)據(jù)認為結束 遇空格 TAB 或回車遇寬度結束遇非法輸入 例 scanf c c c 輸入a b c是否可以 如scanf d c f 若輸入1234a123o 26 則1234 a a b
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年福建南平武夷文化旅游投資開發(fā)有限公司見習生、實習生考試筆試試題(含答案)
- 【南陽】2025年河南南陽市南召縣衛(wèi)生系統(tǒng)事業(yè)單位(總醫(yī)院)招聘43人筆試歷年典型考題及考點剖析附帶答案詳解
- 【遼源】2025年吉林遼源市拉拉河社會福利院招聘工作人員4人筆試歷年典型考題及考點剖析附帶答案詳解
- 文庫發(fā)布:班會課件
- 文庫發(fā)布:急診科課件
- 房間課件內容
- 敬畏的課件教學課件
- 敬畏主題班會課件
- 散步課件介紹
- 散步的說課課件
- GB/T 5470-2008塑料沖擊法脆化溫度的測定
- GB/T 40998-2021變性淀粉中羥丙基含量的測定分光光度法
- GB/T 3672.2-2002橡膠制品的公差第2部分:幾何公差
- GB/T 31848-2015汽車貼膜玻璃貼膜要求
- GB/T 18884.2-2015家用廚房設備第2部分:通用技術要求
- GB/T 12239-2008工業(yè)閥門金屬隔膜閥
- 行政法培訓講義課件
- DB32T 4174-2021 城市居住區(qū)和單位綠化標準
- 基本原理與性能特點多自由度電磁軸承課件
- 北京輸變電工程標準工藝應用圖冊(圖文并茂)
- 三相負荷(380V)及單相(220V)最大供電距離計算表及電壓降計算表
評論
0/150
提交評論