![《簡單程序》PPT課件.ppt_第1頁](http://file1.renrendoc.com/fileroot2/2019-11/14/5188d6b9-d0cb-4dc5-9217-6373121aa3c8/5188d6b9-d0cb-4dc5-9217-6373121aa3c81.gif)
![《簡單程序》PPT課件.ppt_第2頁](http://file1.renrendoc.com/fileroot2/2019-11/14/5188d6b9-d0cb-4dc5-9217-6373121aa3c8/5188d6b9-d0cb-4dc5-9217-6373121aa3c82.gif)
![《簡單程序》PPT課件.ppt_第3頁](http://file1.renrendoc.com/fileroot2/2019-11/14/5188d6b9-d0cb-4dc5-9217-6373121aa3c8/5188d6b9-d0cb-4dc5-9217-6373121aa3c83.gif)
![《簡單程序》PPT課件.ppt_第4頁](http://file1.renrendoc.com/fileroot2/2019-11/14/5188d6b9-d0cb-4dc5-9217-6373121aa3c8/5188d6b9-d0cb-4dc5-9217-6373121aa3c84.gif)
![《簡單程序》PPT課件.ppt_第5頁](http://file1.renrendoc.com/fileroot2/2019-11/14/5188d6b9-d0cb-4dc5-9217-6373121aa3c8/5188d6b9-d0cb-4dc5-9217-6373121aa3c85.gif)
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、,第四章,最簡單的c程序設計,主要內容,4.1 C語句概述 4.2 賦值語句 4.3 數(shù)據(jù)輸入輸出的概念及在c語言中的實現(xiàn) 4.4 字符數(shù)據(jù)的輸入輸出 4.5 格式輸入與輸出 4.6 順序結構程序設計舉例, 4.1 C語句概述, 4.1 C語句概述,一個c程序可以由若干個源程序文件組成 一個源文件可以由若干個函數(shù)和預處理命令以及全局變量聲明部分組成 一個函數(shù)由函數(shù)首部和函數(shù)體組成 函數(shù)體由數(shù)據(jù)聲明和執(zhí)行語句組成 C語句分為, 4.1 C語句概述,(一)控制語句完成一定的控制功能 1 if() else 條件語句 2 for() 循環(huán)語句 7 switch() 開關語句 3 while() 循環(huán)
2、語句 8 goto 轉向語句 4 do while() 循環(huán)語句 9 return 返回語句 5 continue 結束本次循環(huán) 6 break 終止switch語句或循環(huán), 4.1 C語句概述(續(xù)), 4.1 C語句概述(續(xù)),a = 2b * 3c -2 ;, 4.1 C語句概述(續(xù)), 4.1 C語句概述(續(xù)), 4.2 賦值語句,賦值語句是由賦值表達式加上一個分號構成 例:a=100 賦值表達式 a=100; 賦值語句 條件不能是賦值表達式,但是賦值表達式 可以包含于條件表達式中 例:if(a=b) t=a; 并不是判斷a=b if(a=b)0) t=a; 正確, 4.3 數(shù)據(jù)輸入輸出
3、的概念及在C語言中的實現(xiàn),(一).輸入輸出是以計算機主機為主體而言的 輸出:從計算機向外部輸出設備(顯示器,打印機) 輸出數(shù)據(jù) 輸入:從輸入設備(鍵盤,鼠標,掃描儀)向計算機 輸入數(shù)據(jù)., 4.3 數(shù)據(jù)輸入輸出的概念及在C語言中的實現(xiàn),(二).C語言本身不提供輸入輸出語句,輸入和輸出操作是由C函數(shù)庫中的函數(shù)來實現(xiàn)的 例如: 字符輸入函數(shù): getchar 字符輸出函數(shù):putchar 格式輸入函數(shù): scanf 格式輸出函數(shù): printf 字符串輸入函數(shù):gets 字符串輸出函數(shù):puts, 4.3 數(shù)據(jù)輸入輸出的概念及在C語言中的實現(xiàn),(三).在使用系統(tǒng)庫函數(shù)時,要用預編譯命令“#incl
4、ude”將有關的“頭文件”包括到用戶源文件中. 例如:在調用標準輸入輸出庫函數(shù)時,文件開頭應該有: #include “stdio.h” 或: #include ,頭文件, 4.4 字符數(shù)據(jù)的輸入輸出,(一).字符輸出函數(shù) 一般形式:putchar(c) 函數(shù)作用:向終端輸出一個字符,字符型變量或整型變量, 4.4 字符數(shù)據(jù)的輸入輸出(續(xù)),運行結果:BO Y,#include void main() char a,b,c; a=B; b=O; c=Y; putchar(a); putchar(b); putchar(n); putchar(c); ,#include void main()
5、putchar(103); putchar(015); putchar(x42); ,ASCII值 代碼: 42 * 66 B 67 C 103 q 13 CR(回車,但不換行),8 進制 十進制 十六進制: 15 13 D 42 34 22 102 66 42 103 67 43, 4.4 字符數(shù)據(jù)的輸入輸出(續(xù)),(二).字符輸入函數(shù) 一般形式:getchar() 函數(shù)作用:從終端(或系統(tǒng)隱含指定的輸入設備)輸入一個字符。 函數(shù)值: 從輸入設備得到的字符。, 4.4 字符數(shù)據(jù)的輸入輸出(續(xù)),例4.2 輸入單個字符 #include void main() char c; c=getcha
6、r(); putchar(c); putchar(n); , 4.5 格式輸入與輸出,(一).格式輸出函數(shù) 函數(shù)作用:向終端(或系統(tǒng)隱含指定的輸出設備)輸出若干個任意類型的數(shù)據(jù)。 一般格式:printf(格式控制,輸出表列),%d:以帶符號的十進制形式輸出整數(shù) %o:以八進制無符號形式輸出整數(shù) %x:以十六進制無符號形式輸出整數(shù), 4.5 格式輸入與輸出(續(xù)),%u:以無符號十進制形式輸出整數(shù) %c:以字符形式輸出,只輸出一個字符 %s:輸出字符串 %f:以小數(shù)形式輸出單,雙精度數(shù),隱含輸出六位小數(shù) %e:以指數(shù)形式輸出實數(shù) %g:選用%f或%e格式中輸出寬度較短的一種格式,不輸 出無意義的0
7、, 4.5 格式輸入與輸出(續(xù)),幾種常見的格式符的修飾符:,L:用于長整型整數(shù),可加在格式符d,o,x,u前面 用于double型浮點數(shù),可加在格式符f,e前面 M(代表一個正整數(shù)):數(shù)據(jù)最小寬度 N(代表一個正整數(shù)):對實數(shù),表示輸出n位小數(shù); 對字符串,表示截取的字符個數(shù) :輸出的數(shù)字或字符在域內向左靠,課堂練習:寫出以下程序的執(zhí)行結果,#include void main() long a ; a=65536; printf(%dn, a); printf(%ldn, a); printf(%8ldn, a); printf(%-8ldn, a); ,:為指定的輸出字段的寬度。如果數(shù)據(jù)
8、的位數(shù)小于, 則左端補以空格,若大于,則按實際位數(shù)輸出 - , 左對齊,#include void main() double a ; a=1234.12345678; printf(%fn, a); printf(%lfn, a); printf(%8.2lfn, a); printf(%-8.2lfn, a); , 4.5 格式輸入與輸出(續(xù)),格式符。用來輸出十進制整數(shù)。 幾種用法: :按十進制整型數(shù)據(jù)的實際長度輸出。 :為指定的輸出字段的寬度。如果數(shù)據(jù)的位數(shù)小于, 則左端補以空格,若大于,則按實際位數(shù)輸出。 :輸出長整型數(shù)據(jù)。 例: ;/* 定義a為長整型變量*/ (,);, 4.5
9、格式輸入與輸出(續(xù)),(2) 格式符。以八進制整數(shù)形式輸出。 輸出的數(shù)值不帶符號,符號位也一起作為八進制數(shù)的一部分輸出。 不會輸出帶負號的八進制整數(shù)。對長整數(shù)(型)可以 用“”格式輸出。還可以指定字段寬度, 例:(,); 輸出為: 177777。 (數(shù)字前有2個空格), 4.5 格式輸入與輸出(續(xù)),(3)格式符。以十六進制數(shù)形式輸出整數(shù)。同樣不會出 現(xiàn)負的十六進制數(shù)。 例: ; (,); 輸出結果為: ffff, 可以用“”輸出長整型數(shù),也可以指定輸出字段的寬度 例: “”, 4.5 格式輸入與輸出(續(xù)),(4)格式符,用來輸出 unsigned int 型數(shù)據(jù). 一個有符號整數(shù)(int型)
10、也可以用格式輸出; 一個unsigned型數(shù)據(jù)也可以用格式輸出。 unsigned型數(shù)據(jù)也可用或格式輸出。,#include void main() int a=-1; printf(d): %d n, a); printf(x): %x n, a); printf(o): %o n, a); printf(u): %u n, a); ,o, x ,u 參數(shù),輸出的數(shù)值不帶符號,符號位也一起作為進制數(shù)的一部分輸出。,課堂練習:寫出以下程序的執(zhí)行結果,-1 寫成原碼: 1 000 0000 0000 0001 反碼: (負數(shù):除符號位外,其它位取反) 1 111 1111 1111 1110 補
11、碼 (負數(shù):,反碼+1) 1 111 1111 1111 1111 = FFFF (h) = 177777 (o) = 65535 (d),正數(shù): 原碼 = 反碼 =補碼,負數(shù)反碼:除符號位外,其它位取反 補碼:反碼+1,補碼的知識,#include void main() int a=-1; printf(d): %d n, a); printf(x): %x n, a); printf(o): %o n, a); printf(u): %u n, a); ,執(zhí)行結果: (d) : -1 (x) : ffff (o) : 177777 (u) : 65535,(5)格式符,用來輸出一個字符。
12、 如:d; (,d); 輸出字符. 一個整數(shù),只要它的值在范圍內,可以用 “”使之按字符形式輸出,在輸出前,系統(tǒng)會將該整數(shù) 作為ASCII碼轉換成相應的字符;一個字符數(shù)據(jù)也可以用 整數(shù)形式輸出。, 4.5 格式輸入與輸出(續(xù)),例4.4 字符數(shù)據(jù)的輸出。#includevoid main()char c=a;int i=97;printf(“%c,%dn”,c,c);printf(“%c,%dn”,i,i);,運行結果:a,97a,97,#include void main() int a=97; printf(c): %3c n, a); printf(x): %3x n, a); prin
13、tf(o): %3o n, a); printf(u): %3u n, a); ,課堂練習:寫出以下程序的執(zhí)行結果,(6)s格式符 輸出字符串. s。例如: (,) 輸出字符串“”(不包括雙引號)。 %ms,輸出的字符串占m列,若串長大于m,則全部輸出,若串長 小于m,則左補空格。 %-ms,若串長小于m,字符串向左靠,右補空格。 %m.ns,輸出占m列,只取字符串中左端n個字符,輸出在m列的 右側,左補空格。 %-m.ns,n個字符輸出在m列的左側,右補空格,若nm,m自 動取n值。, 4.5 格式輸入與輸出(續(xù)),(7)格式符。用來以小數(shù)形式輸出實數(shù)(包括單雙精度) 有以下幾種用法: 。不
14、指定字段寬度,由系統(tǒng)自動指定字段寬度,使整數(shù) 部分全部輸出,并輸出位小數(shù)。應當注意,在輸出的數(shù)字中 并非全部數(shù)字都是有效數(shù)字。單精度實數(shù)的有效位數(shù)一般為位。 .。指定輸出的數(shù)據(jù)共占列,其中有位小數(shù)。如果 數(shù)值長度小于,則左端補空格。 .與.基本相同,只是使輸出的數(shù)值向左端 靠,右端補空格。, 4.5 格式輸入與輸出(續(xù)),例4.6 輸出實數(shù)時的有效位數(shù)(7位)。#include void () ,;(,);,運行結果:., 4.5 格式輸入與輸出(續(xù)),例4.7輸出雙精度數(shù)時的有效位數(shù)(16位)。#include void () ,;x=1111111111111.111111111; y=2
15、222222222222.222222222;printf(“%f”,x+y);,運行結果:3333333333333.333010, 4.5 格式輸入與輸出(續(xù)),(8)格式符,以指數(shù)形式輸出實數(shù)。 可用以下形式: 。不指定輸出數(shù)據(jù)所占的寬度和數(shù)字部分的小數(shù)位數(shù). 例: (,); 輸出: 6列 5列 所輸出的實數(shù)共占列寬度。(注:不同系統(tǒng)的規(guī)定略有不同),(9)格式符,用來輸出實數(shù). 它根據(jù)數(shù)值的大小,自動選格式或格式(選擇輸出時占寬度 較小的一種),且不輸出無意義的零。,#include stdio.h void main() double a=12345678.456; printf(a
16、=12345678.456n); printf(f):%lf,n, a); printf(e):%e,n, a); printf(g):%g,nn, a); a=123.468; printf(a=123.468n); printf(%f):%f,n, a); printf(%E):%E,n, a); printf(%G):%G,n, a); , 4.5 格式輸入與輸出(續(xù)),說明: 除了X,E,G外,其他格式字符必須用小寫。 可以在printf函數(shù)中的“格式控制”字符串中包含轉義字符。 一個格式說明必須以“%”開頭,以9個格式字符之一為結束,中間可以插入附加格式字符。 想輸出%,則應該在格式
17、控制字符串中用連續(xù)兩個%表示, 4.5 格式輸入與輸出(續(xù)),(一).格式輸入函數(shù) 函數(shù)作用:按照變量在內存的地址將變量值存 進去。 一般格式:scanf(格式控制,地址表列),同printf函數(shù),是由若干個地址組成的表列,可以是變量的地址,或字符串的首地址,例4.9:,#include stdio.h void main() int a, b, c; scanf(%d %d %d, ,a在內存中的地址 scanf(%da%d, , 4.6 順序結構程序設計舉例,例4.10 輸入三角形的三邊 長,求三角形面積。 假設:三個邊長a,b,c能構 成三角形。 已知面積公式: area= s=(a+b
18、+c)*0.5, 4.6 順序結構程序設計舉例(續(xù)),#include #include void main() float a,b,c,s,area; scanf(%f,%f,%f, ,例:4.11從鍵盤輸入一個大寫字母,要求改用小寫字母輸出,#include stdio.h void main() char c1, c2; puts(請輸入一個大寫字母); c1=getchar(); printf(%d, %cn, c1,c1); c2=c1+32; printf(%d, %c, c2,c2); , 4.6 順序結構程序設計舉例(續(xù)),例4.12 求x2方程的根。 a,b,c由鍵盤輸入,設
19、 。眾所周知,一元二次方程式的根為x1= x2= 可以將上面的分式分為兩項:p= , q= x1=p+q, x2=p-q,例4.12求方程ax +bx+c=0的根,#include #include void main ( ) float a,b,c,disc,x1,x2,p,q; scanf(a=%f,b=%f,c=%f, ,2,練習:簡易進制轉換工具,要求: 1、提示輸入一個指定的十進制數(shù) 2、從鍵盤中輸入一個數(shù)。 3、將這個數(shù)轉變成八進制,及十六進制并輸出結果。,編程練習:,從鍵盤中輸入火車到達本站時間及火車開到下一站所需時間,計算后輸入火車到達下一站的時間。 要求:從鍵盤中輸入火車到達
20、本站的時間(小時和分鐘),及及火車開到下一站所需時間(小時和分鐘),執(zhí)行后輸入結果,如果該時間超過超過24小時,則從零點開始。例,如輸入22:10,經(jīng)過3:15,計算后結果為25:25,則顯示為1:25 執(zhí)行程序后,顯示結果需與下圖一致。其中21:18和 4:55為輸入的數(shù)據(jù),#include stdio.h void main() int h, m, t1,t2, h2,m2,h3,m3; printf(請輸入火車到達本站的時間(如3:20)=); scanf(%d:%d, ,二進制數(shù)的補碼表示方法:,假設有一 int 類型的數(shù),值為5, 5轉換成二制是101 B,那么,它在計算機中如何表示
21、呢: 我們知道:int類型的數(shù)占用2字節(jié)(TC2.0標準,16位),所以要在它的有效位前面填上一堆0,補足16位。 寫成: 00000000 00000101 寫成十六進制就是: 00 05 long int 則是:00000000 00000000 00000000 00000101 十六進制就是:00 00 00 05,-5在計算機中如何表示呢? 在計算機中,負數(shù)以其正數(shù)的補碼形式表達。 什么叫補碼呢?這得從原碼,反碼說起。,原碼:一個整數(shù),按照絕對值大小轉換成的二進制數(shù),稱為原碼。其最高位為符號位。 如 0000 0000 0000 0101 是十進制數(shù)5的原碼。 最高位是符號位(正數(shù)符
22、號位為0) -5的原碼: 1000 0000 0000 0101 負數(shù)符號位為1,反碼:正數(shù)的反碼是其本身。 負數(shù)的反碼: 符號位不變,將其余二進制數(shù)按位取反,所得的新二進制數(shù)為原二進制數(shù)的反碼。 取反操作指:原數(shù)為1,取反后得0;原為0,得1。(1變0; 0變1),如:將 1000 0000 0000 0101 (-5) 除符號位外每一位取反, 得 1111 1111 1111 1010 稱:1111 1111 1111 1010 是 1000 0000 0000 0101 的反碼。 反碼是相互的,所以也可稱: 11111111 11111010 和 10000000 00000101 互為反碼。,補碼:正數(shù):補碼 = 反碼 = 原碼 負數(shù)的補碼求法: 求出反碼,再加1,(補碼加法,如果進位到符號位,會連符號位一起加。) 也就是說,要得到一個數(shù)的補碼,先得到反碼,然后將反碼加上1,所得數(shù)稱為補碼。,比如: 10000000 00000101 的反碼是: 11111111 11111010。 那么,補碼為: 11111111 11111010 + 1(從右相加,逢2進位) = 11111111
溫馨提示
- 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-2030年手術室智能儲物柜企業(yè)制定與實施新質生產(chǎn)力戰(zhàn)略研究報告
- 2025-2030年按摩腰帶行業(yè)跨境出海戰(zhàn)略研究報告
- 2025-2030年即食雞肉串行業(yè)跨境出海戰(zhàn)略研究報告
- 天然氣開采的環(huán)境保護與可持續(xù)發(fā)展考核試卷
- 二零二五年度藝術品投資借款合同3篇
- 光電子器件的光學數(shù)據(jù)存儲技術考核試卷
- 塑料成型模具的快速原型制造考核試卷
- 超市裝修維護合同
- 手工具行業(yè)智能倉儲與物流自動化考核試卷
- 大數(shù)據(jù)分析與應用中的案例分析與實踐經(jīng)驗分享考核試卷
- 蘇北四市(徐州、宿遷、淮安、連云港)2025屆高三第一次調研考試(一模)生物試卷(含答案)
- 監(jiān)察部部長崗位職責
- 山西省太原市杏花嶺區(qū)年三年級數(shù)學第一學期期末考試模擬試題含解析
- 《農機化促進法解讀》課件
- 最高法院示范文本發(fā)布版3.4民事起訴狀答辯狀示范文本
- 2023-2024學年度上期七年級英語期末試題
- 2024年英語高考全國各地完形填空試題及解析
- 2024至2030年中國餐飲管理及無線自助點單系統(tǒng)數(shù)據(jù)監(jiān)測研究報告
- 2024年燃氣輪機值班員技能鑒定理論知識考試題庫-下(多選、判斷題)
- 2024年服裝門店批發(fā)管理系統(tǒng)軟件項目可行性研究報告
- (優(yōu)化版)高中地理新課程標準【2024年修訂版】
評論
0/150
提交評論