程序設計tc03_第1頁
程序設計tc03_第2頁
程序設計tc03_第3頁
程序設計tc03_第4頁
程序設計tc03_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、 3.1 賦值語句(表達式語句) 賦值語句是一種可執(zhí)行語句,出現(xiàn)在函數(shù)的可執(zhí)行 部分。例如: a=b+c;a=b=c=100;a=c=5*2;(賦值表達式) i=1,j=2;(i=3,i+,j-); (逗號表達式) k+;k-; 3.2 數(shù)據(jù)輸出 在C程序中,不提供輸入/輸出語句,只能調(diào)用標準庫 函數(shù)提供的輸入/輸出函數(shù)來實現(xiàn)數(shù)據(jù)的輸入和輸出。第三章 順序結構1 一、printf函數(shù)的調(diào)用形式 格 式:printf(格式控制字符串,輸出表列); 功 能:在終端設備(或系統(tǒng)隱含指定的輸出設備)上按 指定格式輸出數(shù)據(jù)。例 如: printf(“a=%d,b=%d”,a,b);說 明: 1、格式控制

2、字符串是用雙引號括起來的字符串,由 “%”和格式控制字符組成,其作用是將輸出的數(shù) 據(jù)轉換為指定格式; 2、按原樣輸出的普通字符串(含轉義字符); 3、輸出表列是輸出的數(shù)據(jù)(常量、變量、表達式); 4、格式字符的個數(shù)與類型應與輸出表列的個數(shù)與類 型相一致; 5、格式字符后有兩個“%”,則輸出一個“%”; 2 二、printf函數(shù)格式字符類型 1、d 格式符(輸出十進制整數(shù)) %d (按 int 實際長度輸出) D格式符 %md(按 int 指定長度輸出,+右對齊-左對齊) %ld (按 long 數(shù)據(jù)輸出) 例1: main() int a=123,b=1234; int c=12345; pr

3、intf(“%4d,%4d,%4d”,a,b,c); 運行結果: 123,1234,12345 3例2: main() long x=135790;int a=1,b=2; float m=3.14,r=2.5;double s=0.00; s=m*r*r; printf(“%8ldn”,x); printf(“%d%n”,a+b); printf(“%d/%ddn”,a,b); printf(“%14.3fn”,s); 運行結果:135790 3% 1/2d 19.6254 2、o/x/u格式符 格式符 %mo (輸出八進制整數(shù)) %mx (輸出十六進制整數(shù)) %mu (輸出無符號型整數(shù))

4、說 明 : 無符號數(shù)以十進制形式輸出; 八進制與十六進制數(shù)輸出值無符號,與符號位同輸出; 對 long 型數(shù)據(jù)可用 %lo , %lx ,% lu 格式輸出。 例: main() unsigned int a=65535; int b=-2; /*a=-1*/ unsigned long c=123456789; printf(“a=%d,%o,%x,%un”,a,a,a,a); printf(“b=%d,%o,%x,%un”,b,b,b,b); printf(“c=lun”,c); 運行結果: a=-1,177777,ffff,65535 b=-2,177776,fffe,65534 c=1

5、23456789 5 3、c 格式符 (輸出一個字符) 格式符:%mc 說 明:C字符格式可與整型數(shù)據(jù)輸出格式通用 (0255) 例: main() char c=a; int i=97; printf(“%c,%dn”,c,c); printf(“%3c,%dn”,i,i); 運行結果: a,97 a,97 4、s 格式符 (輸出一個字符串) 格式符:%m.ns 例: main() printf(“%sn”,”東北財經(jīng)大學津橋商學院”); printf(“%3s,%7.2s,%.4s,%-5.3sn”,” China”, ”China” ,”China”); 運行結果: 東北財經(jīng)大學津橋商學

6、院 China, Ch,Chin,Chi 6 5、f 格式符 (輸出單/雙精度數(shù)) 格式符:%m.nf 說 明: %f不指定寬度,整數(shù)全部輸出,小數(shù)部分輸出6位; 單精度數(shù)有效位數(shù)7位,雙精度數(shù)有效位數(shù)16位; 例1:main() float x,y; x=111111.111;y=222222.222; printf(“%f”,x+y); 運行結果: 333333.328125 例2: main() float f=123.456; printf(“%f %10fn%10.2f %.2fn”,f,f,f,f,); 運行結果: 123.455994 123.455994 123.46 123.

7、46 7 6、e 格式符 (指數(shù)格式輸出實數(shù)) 格式符: %m.ne 說 明: %e指定6位小數(shù),1位整數(shù),3位指數(shù),共計12位; n不含指數(shù)部分,只代表小數(shù)位,默認值是6; 例:main() float f=123.456; printf(“%e %10e %10.2e %.2e”,f,f,f,f); 運行結果: 1.234560e+002 1.234560e+002 1.23e+002 1.23e+002 7、g 格式符 (輸出實數(shù)) 說 明:輸出%f和%e寬度較小者,去掉無意義零。 例:main() float f=123.468; printf(“%f,%e, %g ”,f,f,f);

8、 運行結果: 123.468000, 1.234680e+002,123.468 8 8、其它輸出格式符 輸出的數(shù)字總帶有+/-號; printf(“%+d,%+dn”,10,-10); 運行結果: +10,-10 在輸出數(shù)據(jù)前加前導零; printf(“%06dn”,12); 運行結果: 000012 在輸出 的八進制數(shù)前加0,十六進制數(shù)前加0 x; printf(“%o,%#o,%x,%#xn ”,10,10,10,10); 運行結果: 12,012,a,0 xa 9 3.3 數(shù)據(jù)輸入 一、scanf函數(shù)的調(diào)用形式 格 式:scanf(格式控制字符串,地址表列); 功 能:在終端設備(或系

9、統(tǒng)隱含指定的輸入設備)上按 指定格式輸入數(shù)據(jù)。說 明: 1、格式控制字符串含義同 printf 函數(shù); 2、地址表列是變量的地址或字符串的首地址; 例 如:main() int a,b,c; scanf(“%d%d%d”,&a,&b,&c); printf(“%d,%d, %dn”,a,b,c); 運行結果: 3 4 5 (鍵盤輸入數(shù)據(jù)) 3,4,5 10 二、scanf函數(shù)格式字符類型 1、d /o/x/u 格式符 %d (輸入十進制整數(shù)) %o(輸入八進制整數(shù)) %x (輸入十六進制整數(shù)) %u (輸入無符號整數(shù)) 2、c 格式符 %c (輸入一個字符) 3、s 格式符 %s (輸入字符串

10、,以非空格字符開始,第一個 空格字符結束,最后一個字符為“0“) 4、f(e) 格式符 (%e(f) (以小數(shù)或指數(shù)的形式輸入實型數(shù)) 11 5、附加格式控制字符 %ld,%lo,%lx,%lu%lf,%le (輸入長整型/雙精度數(shù)據(jù)) %hd,%ho,%hx,%hu (輸入短整型數(shù)據(jù)) %* (輸入數(shù)據(jù)后不賦值給相應變量) 例3.1 求變量a,b,c,d,e的值。 main() long a;int b,c ,d,e; scanf(“%ld”,&a); scanf(“%3d%3d”,&b,&c); scanf(“%2d,%*3d,%2d”,&d,&e); printf(“%10ld”,a);

11、printf(“%d,%dn”,b,c); printf(“%d,%d,n”,d,e); 1111111111 123 456 輸入數(shù)據(jù) 12,345,67 運行結果: 1111111111123,456 12,6712 例3.2 輸入三角形的三邊長,求三角形的面積(三角形 任意二邊大于第三邊)。 函數(shù): #include “math.h” /*宏定義*/ main() float a,b,c,s,area; scanf(“%f,%f,%f”,&a,&b,&c); s=1.0/2*(a+b+c); area=sqrt(s*(s-a)*(s-b)*(s-c); printf(“a=%7.2f,b

12、=%7.2f,c=%7.2f,s=%7.2fn” ,a,b,c,s); printf(“area=%7.2fn”,area); 運行結果: 3,4,6 a=3.00,b=4.00,c=6.00,s=6.50 area=5.33 13 例3.3 求一元二次方程根的標準式 x 的值。 分析: a*x2+b*x+c=0 若(b2-4*a*c0) 有兩個不相等的實根 x1=-b+sqrt(b*b-4*a*c)/2*a x2=-b-sqrt(b*b-4*a*c)/2*a 函數(shù): #include “math.h” /*宏定義*/ main() float a,b,c,d,x1,x2,p,q; scanf

13、(“a=%f,b=%f,c=%f”,&a,&b,&c); d= b*b-4*a*c; p=-b/(2*a);q=sqrt(d)/(2*a); x1=p+q;x2=p-q; printf(“nnx1=%5.2fn”,x1); printf(“nx2=%5.2fn”,x2); 運行結果: a=1,b=3,c=2 x1=-1.00 x2=-2.00143.4 復合語句和空語句一、復合語句(語句塊) 定義:復合語句是用花括號“ ”括起來的語句。 格式:語句1;語句2;語句3;;語句n 例如:a=1;b=2;b*=a;printf(“%dn”,b); 二、空語句 在 C 程序中空語句是允許的,它在程序執(zhí)行過程中不產(chǎn)生任何動作,只是表示存在一條語句。 例如:dump() ; 或 15 3.5 習 題 一、上機輸入以下程序,對程序中錯誤之處做相應修改。 main double a,b,c,s,v; printf(input a,b,c:n); scanf(“%d%d%d,a,b,c); s=a*b; v=a*b*c; printf(“%d %d

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論