資源描述:
《scanf函數(shù)(格式輸入函數(shù)).ppt》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、scanf函數(shù)(格式輸入函數(shù))1.一般形式scanf(格式控制符,地址列表)作用:按格式控制符的要求將數(shù)據(jù)從終端傳送到變量地址所指定的內(nèi)存空間說明:“格式控制”的含義同printf函數(shù);“地址表列”是由若干個(gè)地址組成的表列,可以是變量的地址,或字符串的首地址;scanf(“%d%d”,&a,&b);scanf函數(shù)中的“格式控制”后面應(yīng)當(dāng)是變量地址,而不是變量名。復(fù)習(xí)注意:1)可以指定輸入數(shù)據(jù)所占列數(shù),系統(tǒng)自動(dòng)按它截取所需數(shù)據(jù),如:scanf(“%3d%3d”,&a,&b);1234562)如果%后有一個(gè)“*”附加說明符,表示跳過它指定的列數(shù)。3)輸入數(shù)據(jù)時(shí)不能規(guī)定精度4)在用“%C”格式
2、輸入字符時(shí),空格字符和“轉(zhuǎn)義字符”都作為有效字符輸入;scanf(“%c%c%c”,&c1,&c2,&c3);如果輸入:a□b□c復(fù)習(xí)例:若輸入12345和abc,以下程序的輸出結(jié)果是()。main(){inta;charch;scanf(“%3d%3c”,&a,&ch);printf(“%d,%c”,a,ch);}A)123,abcB)123,4C)123,aD)12345,abc復(fù)習(xí)B例:雞兔同籠,已知雞兔總頭數(shù)為h,總腳數(shù)為f,求雞兔各多少只?分析:設(shè)雞—x只兔—y只則解得#includevoidmain(){intx,y,h,f;scanf(“%d%d
3、”,&h,&f);x=2*h-f/2;y=f/2-h;printf(“head=%d,foot=%d”,h,f);printf(“chicken=%d,rabit=%d”,x,y);}運(yùn)行情況:9□28↙head=9,foot=28chicken=4,rabbit=5復(fù)習(xí)引例計(jì)算函數(shù)值需考慮①輸入x②判斷x的值③根據(jù)x的值,計(jì)算y值④輸出y值顯然②③順序結(jié)構(gòu)不能實(shí)現(xiàn),須引入選擇結(jié)構(gòu)#include#includevoidmain(){floatx,y;scanf(“%f”,&x);if(x!=0.0)y=sin(x)/x;elsey=1;prin
4、tf(“x=5.2%fty=7.4%f”,x,y);}x≠0成立不成立y=sin(x)/xy=1輸入x輸出y運(yùn)行情況:2↙x=2.00y=0.4546判別選擇結(jié)構(gòu)程序設(shè)計(jì)首先判別條件,若條件滿足,程序執(zhí)行a塊,否則,執(zhí)行b塊;條件成立?執(zhí)行a塊執(zhí)行b塊成立不成立滿足條件否滿足不滿足執(zhí)行a塊執(zhí)行b塊傳統(tǒng)流程圖N-S流程圖第五章選擇結(jié)構(gòu)程序設(shè)計(jì)要設(shè)計(jì)選擇結(jié)構(gòu)程序,要考慮兩個(gè)方面的問題:一是在C語言中如何來表示條件,二是在C語言中實(shí)現(xiàn)選擇結(jié)構(gòu)用什么語句。5.1關(guān)系運(yùn)算及其表達(dá)式5.2邏輯運(yùn)算及其表達(dá)式5.3if語句5.4switch語句5.5選擇結(jié)構(gòu)程序舉例表示條件實(shí)現(xiàn)選擇結(jié)構(gòu)5.1關(guān)系運(yùn)算
5、符和關(guān)系表達(dá)式關(guān)系運(yùn)算實(shí)質(zhì)是比較運(yùn)算,它是將兩個(gè)值進(jìn)行比較,判斷其比較的結(jié)果是否符合給定的條件,其結(jié)果為真(1)或者為假(0)。5.1.1關(guān)系運(yùn)算符及其優(yōu)先次序C語言提供了6種關(guān)系運(yùn)算符:<小于<=小于或等于>大于>=大于或等于==等于!=不等于優(yōu)先級(jí)相同(高)優(yōu)先級(jí)相同(低)說明:1)關(guān)系運(yùn)算符的優(yōu)先級(jí)低于算術(shù)運(yùn)算;2)關(guān)系運(yùn)算符的優(yōu)先級(jí)高于賦值運(yùn)算符關(guān)系運(yùn)算符結(jié)合方向自左向右5.1.2關(guān)系表達(dá)式用關(guān)系運(yùn)算符將兩個(gè)表達(dá)式(可以是算術(shù)表達(dá)式或關(guān)系表達(dá)式,邏輯表達(dá)式、賦值表達(dá)式、字符表達(dá)式)連接起來的式子,稱為關(guān)系表達(dá)式。下面為一些合法的關(guān)系表達(dá)式x!=0a+b>b+c(a=3)>(b=5
6、)‘a(chǎn)’>‘b’關(guān)系表達(dá)式的結(jié)果只有兩種:真或假;在C語言中,以1代表“真”,0代表“假”。例:假設(shè)a=3,b=2,c=1,則:(a>b)==c結(jié)果為:表達(dá)式的值為1(真);d=a>b結(jié)果為:d的值為1,表達(dá)式的值為1;f=a>b>c結(jié)果為:f的值為0,表達(dá)式的值為0;例:設(shè)a=1,b=-5,c=‘a(chǎn)’,則:(1)c>a+b(2)a==b7、
8、邏輯或(或運(yùn)算符)(3)!邏輯非(非運(yùn)算符)說明:1)“&&”和“
9、
10、”為雙目運(yùn)算符,“!”為單目運(yùn)算符
11、;2)邏輯運(yùn)算的結(jié)果只有兩種:真或假。邏輯運(yùn)算的真值表詳細(xì)情況見書P89表5.1。幾種運(yùn)算符的優(yōu)先次序?yàn)椋?(非)(高)算術(shù)運(yùn)算符關(guān)系運(yùn)算符&&和
12、
13、賦值運(yùn)算符(低)例:!a&&b
14、
15、x>y&&c結(jié)合方向除了!都是從左至右5.2.2邏輯表達(dá)式給出邏輯運(yùn)算結(jié)果:數(shù)值1代表“真”,數(shù)值0代表“假”判斷一個(gè)量是否為“真”:0代表“假”,非0代表“真”例:1)若a=4,則!a=0;2)若a=4,b=5則a&&b=1;a
16、
17、b=1;!a
18、
19、b