4.2格式化輸入函數_第1頁
4.2格式化輸入函數_第2頁
4.2格式化輸入函數_第3頁
4.2格式化輸入函數_第4頁
4.2格式化輸入函數_第5頁
已閱讀5頁,還剩19頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、Teacher teaching designCONTENTS 目 錄數據的輸入函數數據輸入格式案例分析仿真演練數據的輸入函數-scanfPART 01scanf(“格式控制字符串”,地址表列);1、scanf函數的一般形式是形式:按“格式控制字符串”的要求,從鍵盤上把數據輸入到變量中。功能:地址列表中給出各變量的地址。地址是由地址運算符“&”后跟變量名組成的。說明 變量地址表由若干個被輸入數據的地址組成,相鄰地址之間,用逗號分開。地址表中的地址,可以是變量的地址,也可以是字符數組名或指針變量。和的關系是數量、類型及位置要從左至右一一對應,在格式控制字符串中指定變量接收輸入值的位置和格

2、式例如:&a, &b分析:分別表示變量a和變量b 的地址。這個地址就是編譯系統在內存中給a,b變量分配的地址。變量的地址是C編譯系統分配的,用戶不必關心具體的地址是多少。例如:從鍵盤上輸入三個整數例如:從鍵盤上輸入三個整數: scanf(: scanf(%d,%d,%d”,&a,&b,&c);%d,%d,%d”,&a,&b,&c);格式字符串的一般形式為:格式字符串的一般形式為:%*輸入數據寬度輸入數據寬度長度長度類型類型 2、格式控制字符串備注:方括號的項為任選項格式字符串格式符意義表格式字符意義d輸入十進制整數o輸入八進制整數

3、x輸入十六進制整數u輸入無符號十進制整數f或e輸入實型數(用小數形式或指數形式)c輸入單個字符s輸入字符串 scanf(%2c%c,&c1,&c2); printf(c1=%c,c2=%cn,c1,c2); 舉例scanf(%4d%4d,&a,&b);輸入:12345678 則變量a,b的值是 。 思考2思考:scanf(%5d,&a); 輸入:12345678 則a的值是 . 思考1scanf(%d%d,&x1,&x2); 如果給x1輸入11,給x2輸入33,則正確的輸入操作為:格式說明符附加格式說明符如果輸入“abcd”,則系統將讀取

4、的“ab”中的“a”賦給變量c1;將讀取的“cd”中的“c”賦給變量c2,所以printf()函數的輸出結果為:c1=a,c2=c1234,567812345抑制符號 *該字符可以使對應的數據輸入后,被抑制,不賦給任何變量說明1 scanf(%2d%*2d%2d,&x1,&x2); printf(x1=%d,x2=%dn,x1,x2); 如果輸入112233 ,則輸出結果為: . 示例2字符l-%ld.%lo,%lx,%lu,用于輸入長整型數據;%lf,%le,用于輸入實型數據。字符h-%hd.%ho,%hx,用于輸入短整型數據格式附加格式說明符x1=11,x2=33 例如,s

5、canf(%d%d,&x1,&x2);如果給x1輸入11,給x2輸入33,則正確的輸入操作為:數據輸入格式如果相鄰格式說明符之間,沒有數據分隔符號(如%d%d ),則由鍵盤輸入的數據可以用空格分隔(至少一個),或者用Tab鍵分隔,或者輸入1個數據后按“回車”,然后再輸入下個數據。說明1133示例輸入格式1133scanf(%d,%d,&x1,&x2); 輸入格式為:11,33“格式控制字符串”中出現的普通字符(非格式字符),包括轉義字符,需要原樣輸入。否則產生對應錯誤,這點務必注意數據輸入格式scanf(%d :%d,&x1,&x2); 輸入格式

6、為:11 :33:示例1示例2示例3scanf(x1=%d,x2=%dn,&x1,&x2); 輸入格式為: x1=11,x2=33 遇到非法輸入。如,輸入數值數據時,遇到非數值符號情況3輸入數據時,遇到以下情況,該數據被認為輸入結束:注意注意遇到空格,或者“回車“鍵,或者“跳格”(Tab)鍵情況1數據輸入格式指定的輸入寬度結束時。如“%5d”,只取5列。情況2scanf(%c%c%c,&a,&b,&c);輸入為:d e f則a,b,c的值分別是: 思考scanf(%c%c ,&c1,&c2,); printf(c1=%c,c2=%c n,

7、c1,c2); 如果輸入:xy,則系統將空格賦值給c1,字母x賦值給c2。舉例說明使用“%c”輸入字符時,不要忽略空格的存在注意事項數據輸入格式有以下程序main() int a,b,c; printf(input a,b,cn); scanf(%d%d%d,&a,&b,&c); printf(a=%d,b=%d,c=%d,a,b,c);1、如何從鍵盤上輸入數據?數據輸入格式源程序思考 2、printf(input a,b,cn);的作用是? 明確考點 交流提升PART 02【例1】main() char a,b; printf(input character a,bn

8、); scanf(%c%c,&a,&b); printf(%c%cn,a,b);源程序1、如輸入M N則變量a,b的值是: ;思考1明確考點 交流提升2、如果賦值不正確如何修改?思考2#include main() int a,b; char c,ch; printf(Enter integer a and b:); scanf(%d %d,&a,&b); printf(Enter character c and ch:); scanf(%c%c,&c,&ch); printf(a=%d b=%dn,a,b); printf(c=%d ch=%d

9、n,c,ch);輸入數據:Enter integer a and b:123 456Enter character c and ch: AB運行結果 明確考點 交流提升思考:請分析程序運行后,結果產生的原因是?源程序運行結果:a=123 b=456c=10 ch=65源程序選項如輸入以下數據Enter integer a and b:123 456Enter character c and ch:AB運行結果Enter integer a and b:123 456Enter character c and ch: ABa=123 b=456c= ch=A明確考點 交流提升#include m

10、ain() int a,b; char c,ch; printf(Enter integer a and b:); scanf(%d %d,&a,&b); printf(Enter character c and ch:); scanf(%*c%c%c,&c,&ch); printf(a=%d b=%dn,a,b); printf(c=%c ch=%cn,c,ch);ABCM=123 N=456 P=789main() int m,n,p; scanf(M=%dN=%dP=%d,&m,&n,&p); printf(%d%d%dn,m,n,

11、p); 若想從鍵盤上輸入數據,使變量M中的值為123,N中的值為456,P中的值為789,則正確的輸入是( )M=123,N=456,P=789M=123N=456P=789D明確考點 交流提升123 456 78ABCDscanf(%d%s,&b,&c);scanf(%d%s,&b,c);scanf(%d%s,b,c);scanf(%d%s,b,&c);明確考點 交流提升有定義語句:int b;char c10;,則正確的輸入語句是( )10300結果以下程序運行時若從鍵盤輸入:10 20 30。輸出結果是( )。#includemain() int i=0,

12、j=0,k=0; scanf(%d%*d%d,&i,&j,&k); printf(%d%d%dn,i,j,k); 題目明確考點 交流提升 仿真演練 體驗探索PART 03BDAc6,5,A,B6,5,65,666,5,6,56,5,6,6有以下程序若運行時從鍵盤上輸入:6,5,65,66,則輸出結果是( )。main() char a,b,c,d; scanf(%c,%c,%d,%d,&a,&b,&c,&d); printf(%c,%c,%c,%cn,a,b,c,d);仿真演練 體驗探索運行如下程序后其運算結果是( )main() char a,b; a=120; b=121; printf(%c,%cn,a,b); printf(%d,%dn,a,b); 仿真演練 體驗探索 運行結果源程序67 G運行如下程序,其結果為( )main() char a,b; a=a; b=b; a=a-32; b=b-32; printf(%c,%cn%d,%dn,a,b,a,b);A,B65,66 運行結果源程序數字字符0的ASCII值為48

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論