版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、第3章 最簡單的C 程序設計-順序程序結構設計,3.1 C 語句概述 程序的三種基本結構 3.2數(shù)據(jù)輸入輸出的概念及其語言實現(xiàn) 3.3 字符的輸入和輸出 3.4 格式輸入 與輸出 3.5 程序舉例,程序的三種基本結構,近年來廣泛采用結構化程序設計方法,使程序結構清晰、易讀性強。強調(diào)今后在學習中要采用此方法。 有三種基本結構:,順序結構,選擇結構,循環(huán)結構,已經(jīng)證明,由以上基本結構組成的程序能處理任何復雜的問題。,順序結構,選擇結構,A,直到P成立,當型循環(huán),直到型循環(huán), 3.2 數(shù)據(jù)輸入輸出的概念及在C語言中的實現(xiàn),輸入和輸出是以計算機主機為主體而言。 輸出指外部設備:顯示屏,打印機,磁盤,輸
2、入設備: 鍵盤,磁盤,光盤,掃描儀等。 默認輸入設備是鍵盤,輸出設備是顯示器 C 語言不提供輸入輸出語句,輸入輸出操作是由函數(shù)來完成的。如前面提到的printf和scanf。它們是函數(shù)名不是C 語言的關鍵字。 要用預編譯命令將庫函數(shù)文件包括到用戶源文件中。如: #include “stdio.h” #include “math.h” #include “string.h” 只有printf和scanf例外。,3.3字符數(shù)據(jù)的輸入和輸出,3.3.1 putchar函數(shù)(字符輸出函數(shù)) 其作用是向終端輸出一個字符,如putchar(c);輸出字符變量c的值其中c 可以是字符型變量或整型變量 例:#
3、include “stdio.h” main ( ) char a ,b ,c ; a =B ; b =O ; c =Y ; putchar(a) ; putchar(b) ; putchar( c); 運行結果:BOY 若改為: putchar(a) ; putchar(n) ; putchar(b); putchar(n) ; putchar(c) ; putchar (n); 運行結果為?,也可以輸出其它轉義字符,putchar(101) 等效 putchar(A),和putchar(65); putchar() putchar(015)與等效 putchar(r),3.3.2 getc
4、har()函數(shù)(字符輸入函數(shù)),從隱含終端設備讀入一個字符, getchar() 例4.2 #include main() char c; c=getchar();putchar(c); a a putchar (getchar(); printf(“%c”, getchar(); 不要忘記#include ,3.4 格式輸入與輸出,3.4.1 printf 函數(shù) printf的作用是向終端(或系統(tǒng)隱含指定的輸出設備)輸出若干個任意類型的數(shù)據(jù)。 1. 一般格式:printf(格式控制,輸出列表) 例如: printf(“%d%d”,a,b); 格式控制 輸出列表 printf(“a=%d b=
5、%d”,a,b) 格式說明 普通字符 輸出列表 結果 a=3 b=4,2. 格式字符,1. d格式符。用來輸出十進制整數(shù)。 %d printf(“%d,%d”,a,b); %md printf(“%4d,%4d”,a,b) a=123; b=12345; printf(%4d,%4d”,a,b); 123,12345 %ld 輸出長整型數(shù) printf(“%ld,%ld”,a,b); printf (“%10ld”),a) ; 如:a=1234 則: 1234 2. o格式符。用來輸出8進制整數(shù)。 %o %mo %lo int a = -1 printf(“%d,%o”,a,a); 結果:-
6、1 ,177777,3. x格式符。用來輸出16進制整數(shù)。 %x %mx %lx printf(“%d,%o,%x”,a,a,a); 結果:- 1 ,177777,ffff 注意在八進制和十六進制中并不能, 打印出0或 0 x printf(“%d,0%o,0 x%x”,a,a,a); 結果:- 1 ,0177777,0 xffff,4. u格式符. 用來輸出十進制無符號整數(shù) 例:main ( )unsigned int a = 65535; int b = -2 ;printf(“a=%d,%o,%x,%un”,a,a,a,a);printf(“b=%d,%o,%x,%un”,b,b,b,b
7、); 運行結果為:a= -1,177777,ffff,65535 b= -2,177776,fffe,65534 以上四種格式可以互換,但是后三種無負數(shù)形式; 第一種格式應用較多,但是要注意數(shù)據(jù)的表示范圍與輸出格式的對應。 int -32768+32767 unsigned 065535 int、short 占2B內(nèi)存,long 占4B內(nèi)存,5. c格式符。用來輸出一個字符。 例:main ( ) char a =a;int b = 97; print(“%c,%dn”,a,a); print(“%c,%d”,b,b); 結果:a,97 a,97 整數(shù)的范圍在0255之間,可以用字符形式輸出;
8、 一個字符數(shù)據(jù)可以用整數(shù)形式輸出。 也可指定字符寬度,如: printf(“%3d”,c),6. s格式符。用來輸出一個字符串。 % s 原長輸出 % ms 字符串占m列,小于m左補空格 % -ms 大于m原樣輸出,小于m右補空格 % m.ns 輸出占m列,只取字符串左端n個字符 % -m.ns n個字符輸出在m列的左側,右補空格 例:main ( ) printf(“%3S,%7.2s,% .4s,% -5.3n”,“CHINA”,“CHINA”,“CHINA”,“CHINA”); 結果:CHINA,CH,CHIN,CHI,7. f格式符。用來輸出實數(shù),以小數(shù)形式輸出。 %f,不指定字段寬度
9、,由系統(tǒng)自動指定。整數(shù)部分如數(shù)輸出,并輸出6位小數(shù)。單精度實數(shù)有效位數(shù)為7位;雙精度實數(shù)有效位數(shù)為16位,小數(shù)6位。 如:main ( )float x,y;x=111111.111;y=222222.222;printf(“%f”,x+y); 結果:333333.326125 又如:main ( )double x,y;x=1111111111111.111111111;y=2222222222222.222222222;printf(“%f”,x+y); 結果:3333333333333.333010,% m.nf 指定輸出的數(shù)據(jù)占m列,其中n位小數(shù);右對齊。 % -m.nf 同上,左對齊
10、。 例:main ( ) float f=123.456;printf(“%f %12f %12.2f % -12.2f %.2f n”,f,f,f,f); 結果:123.456000123.456000123.46123.46123.46,8. e格式符。以指數(shù)形式輸出實數(shù)。 % e 整數(shù)一位,小數(shù)6位,指數(shù)5位包括e和符號位. 例: printf(“%e,%e”,123.456,0.006543); 輸出:1.234560e+002,6.543000e-003 % m.ne和% -m.ne 其中m為輸出寬度,- 為左齊, n為尾數(shù)的小數(shù)位數(shù). 例: float f = 123.456; p
11、rintf(“% 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,9. g格式符。用來輸出實數(shù),自動選用%f或%e格式中格式較短的一種格式,不輸出無意義的零。 如:float f = 123.456; printf(“%f,%e,%g”,f,f,f); 輸出:123.456000,1.234560e+002,123.456,使用printf函數(shù)時,要注意:,X,E,G可以用大寫, 但d不能寫成D 格式控制字符串中可以包括轉義字符 d、o
12、、x、u、c、s、f、e、g等字符,緊接在“%”后面即為格式字符,在其它位置則為普通字符 printf(“c=%cf=%fs=%s”,c,f,s): 若想輸出“%”,則用連續(xù)兩個“%”表示 如:printf(“%f % %”,1.0/3); 輸出:0.333333% 不同系統(tǒng)的格式輸出,可能會有些小差別,3.4.2 scanf 函數(shù)(格式輸入函數(shù)),scanf格式輸入函數(shù),用來輸入任何類型的多個數(shù)據(jù) 一般格式:scanf (格式控制,地址列表) 例: main ( ) int a,b,c; scanf(“%d%d%d”, 運行時的合法輸入可以是: 345 345 非法輸入為:3 , 4 , 5
13、,scanf函數(shù)格式說明: 1. 格式字符與printf相同,只是沒有%u和%g 2.可以指定輸入數(shù)據(jù)所占列數(shù),系統(tǒng)自動按它截取所需數(shù)據(jù),如: scanf(“%3d%3d”,是不合法的.,應用scanf函數(shù)應注意: 1.格式控制后面是變量地址,而不是變量名 如:scanf(“%d,%d”,a,b); 是不對的 2.格式控制字符串中除了格式說明符以外的其它字符,在輸入時要原樣輸入,如: scanf(“%d : %d : %d”, 1234a1230.26,3.5程序舉例,例3.10 s=(a+b+c)/2 #include “math.h” main() float a,b,c,s,area; scanf(”%f,%f,%f”, 運行: 3,4,6 a=3.00,b=4.00,c=6.00 s=6.50,area=5.33,例2: #include “stdio.h” main() char c1 ,c2 ; c1 = getchar(); printf(“%c,%dn”, c1 ,c1); c2 = c1+32; printf(“%c,%dn”,c2 ,c2); 運行:A A,6
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 金箔制作工班組建設知識考核試卷含答案
- 制線工8S執(zhí)行考核試卷含答案
- 租賃業(yè)務員安全防護考核試卷含答案
- 長度計量員安全生產(chǎn)意識知識考核試卷含答案
- 寵物健康護理員崗前理論實操考核試卷含答案
- 香料合成工崗前安全行為考核試卷含答案
- 石墨化工安全強化考核試卷含答案
- 苯乙烯-丙烯腈樹脂(SAN)裝置操作工操作水平模擬考核試卷含答案
- 2024年石家莊鐵道大學輔導員招聘備考題庫附答案
- 2025年三明市特崗教師筆試真題題庫附答案
- 2026年甘肅省蘭州市皋蘭縣蘭泉污水處理有限責任公司招聘筆試參考題庫及答案解析
- 2025年全國高壓電工操作證理論考試題庫(含答案)
- 居間合同2026年工作協(xié)議
- 2025-2026學年(通*用版)高二上學期期末測試【英語】試卷(含聽力音頻、答案)
- 翻車機工操作技能水平考核試卷含答案
- 員工宿舍安全培訓資料課件
- 化工設備培訓課件教學
- 舞臺燈光音響控制系統(tǒng)及視頻顯示系統(tǒng)安裝施工方案
- 2025福建省能源石化集團有限責任公司秋季招聘416人參考考試試題及答案解析
- 煤礦三違行為界定標準及處罰細則
- 服裝廠安全生產(chǎn)責任制度制定
評論
0/150
提交評論