第4講 順序程序設(shè)計(jì)輸入輸出_第1頁(yè)
第4講 順序程序設(shè)計(jì)輸入輸出_第2頁(yè)
第4講 順序程序設(shè)計(jì)輸入輸出_第3頁(yè)
第4講 順序程序設(shè)計(jì)輸入輸出_第4頁(yè)
第4講 順序程序設(shè)計(jì)輸入輸出_第5頁(yè)
已閱讀5頁(yè),還剩29頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1第4講順序程序設(shè)計(jì)

--輸入輸出email:phone:87935400(office)1引例

引例:從鍵盤輸入一個(gè)小寫字母,要求在屏幕上輸出對(duì)應(yīng)的大寫字母

問(wèn)題分析:輸入處理輸出鍵盤輸入小寫字母到變量lowchar輸出大寫字母upchar閱讀附錄A的ASCII字符編碼表,總結(jié)大小寫字母間的關(guān)系程序由若干條語(yǔ)句組成,從執(zhí)行方式上看,從第一條語(yǔ)句到最后一條語(yǔ)句完全按順序執(zhí)行。這樣的程序就是順序結(jié)構(gòu)程序2引例—復(fù)習(xí)變量的類型教材P55例3.3#include<stdio.h>intmain(){charc1,c2;c1=‘A’;c2=c1+32;

printf(“%c”,c2);

printf(“%d”,c2);return0;}輸出結(jié)果:a9734主要內(nèi)容順序結(jié)構(gòu)程序舉例4C語(yǔ)言的語(yǔ)句1賦值運(yùn)算與賦值語(yǔ)句2數(shù)據(jù)的輸入輸出3重點(diǎn)C語(yǔ)言的語(yǔ)句,數(shù)據(jù)的輸入輸出難點(diǎn)數(shù)據(jù)的輸入輸出本講小結(jié)3.3節(jié)3.4節(jié)41C的語(yǔ)句(1)C語(yǔ)句簡(jiǎn)單語(yǔ)句復(fù)合語(yǔ)句流程控制語(yǔ)句表達(dá)式語(yǔ)句空語(yǔ)句函數(shù)調(diào)用語(yǔ)句選擇語(yǔ)句(if,switch)循環(huán)語(yǔ)句(while,do…while,for)轉(zhuǎn)移語(yǔ)句(break,continue,return,goto)表達(dá)式+分號(hào)只有分號(hào)的語(yǔ)句用花括號(hào)將若干語(yǔ)句括起來(lái)注意:復(fù)合語(yǔ)句的“}”后面不能出現(xiàn)分號(hào),而“}”前復(fù)合語(yǔ)句中最后一條語(yǔ)句的分號(hào)不能省略。返回主菜單52賦值運(yùn)算與賦值語(yǔ)句(1)2.1賦值運(yùn)算賦值運(yùn)算的一般形式變量=

表達(dá)式賦值運(yùn)算符賦值運(yùn)算的含義就是先計(jì)算表達(dá)式的值,然后將該值傳送到變量所對(duì)應(yīng)的存儲(chǔ)單元中。變量與確定的內(nèi)存單元相聯(lián)系,既具有值屬性,也具有地址屬性。常量、變量、函數(shù)等運(yùn)算對(duì)象用運(yùn)算賦連接起來(lái)的表達(dá)式,只有值屬性而無(wú)地址屬性62賦值運(yùn)算與賦值語(yǔ)句(2)2.1賦值運(yùn)算—復(fù)合賦值運(yùn)算+=、-=、*=、/=、%=<<=、>>=、&=、|=、^=算術(shù)運(yùn)算符位運(yùn)算符課堂練習(xí):寫出與下面表達(dá)式等價(jià)的表達(dá)式x+=5.0x*=u+va+=a-=b+2x=x+5.0x=x*(u+v)a=a+(a=a-(b+2))總結(jié):xθ=e其等價(jià)的表達(dá)式為:x=xθ(e)72賦值運(yùn)算與賦值語(yǔ)句(3)2.1賦值運(yùn)算—練習(xí)課堂練習(xí):分析下面表達(dá)式的結(jié)果:a=b=c=5a=5+(c=6)a=(b=4)+(c=6)a=(b=10)/(c=2)a=5,b=5,c=5a=11,c=6a=10,b=4,c=6a=5,b=10,c=282賦值運(yùn)算與賦值語(yǔ)句(3)2.1賦值運(yùn)算—賦值運(yùn)算的優(yōu)先級(jí)各種賦值運(yùn)算都屬于同一優(yōu)先級(jí),且優(yōu)先級(jí)僅比逗號(hào)運(yùn)算符高,比其他運(yùn)算所有運(yùn)算符都低。課堂練習(xí):分析下面表達(dá)式的結(jié)果:x=13<y,7+(y=8)x=(13<y,7+(y=8))x=y=17/2x=0,y=8,表達(dá)式的值為15x=15,y=8y=8,x=892賦值運(yùn)算與賦值語(yǔ)句(4)2.2賦值語(yǔ)句賦值語(yǔ)句的一般形式變量=

表達(dá)式;賦值語(yǔ)句與賦值表達(dá)式不一樣,賦值語(yǔ)句可以作為程序中一個(gè)獨(dú)立的程序行,而賦值表達(dá)式是作為一個(gè)運(yùn)算量,可以出現(xiàn)在表達(dá)式中。102賦值運(yùn)算與賦值語(yǔ)句(5)2.3賦值時(shí)的數(shù)據(jù)類型轉(zhuǎn)換當(dāng)賦值運(yùn)算符兩邊的數(shù)據(jù)類型不一致時(shí),C編譯系統(tǒng)自動(dòng)將賦值運(yùn)算符右邊表達(dá)式的數(shù)據(jù)類型轉(zhuǎn)換成左邊變量相同的類型轉(zhuǎn)換規(guī)則:①整型變量與實(shí)型變量之間的轉(zhuǎn)換②不同精度實(shí)型變量之間的轉(zhuǎn)換③不同精度整型變量之間的轉(zhuǎn)換截取有效數(shù)字截取低字節(jié)數(shù)據(jù)返回主菜單113數(shù)據(jù)輸入/輸出(1)為了實(shí)現(xiàn)輸入和輸出功能,在C的庫(kù)函數(shù)中提供了一組輸入輸出函數(shù):getchar();putchar(字符變量);printf(“格式控制字符串”,輸出表列);scanf(“格式控制字符串”,地址表列);在使用C語(yǔ)言庫(kù)函數(shù)時(shí),要用預(yù)編譯命令#include將有關(guān)“頭文件”包括到源文件中#include<stdio.h>#include“stdio.h”123數(shù)據(jù)輸入/輸出(2)3.1字符輸入/輸出函數(shù)putchar函數(shù)(字符輸出函數(shù))getchar函數(shù)(字符輸入函數(shù))向終端輸出一個(gè)字符

一般形式putchar(字符變量)一般形式getchar()引例的程序?qū)崿F(xiàn)從鍵盤上輸入一個(gè)字符

133數(shù)據(jù)輸入/輸出(3)3.2格式輸出函數(shù)printf一般形式:

printf(“格式控制字符串”,輸出表列);指定輸出格式,由格式字符串和非格式字符串兩種組成,非格式字符串照原樣輸出。分析下面程序的執(zhí)行結(jié)果143數(shù)據(jù)輸入/輸出(4)3.3格式輸入函數(shù)scanf一般形式:scanf(“格式控制字符串”,地址表列);

指定輸入格式,只有格式字符串。使用格式化輸入輸出函數(shù)對(duì)引例進(jìn)行修改153數(shù)據(jù)輸入/輸出(5)3.3格式輸入函數(shù)scanf(續(xù))格式輸入函數(shù)的幾點(diǎn)說(shuō)明①scanf函數(shù)中要求給出變量地址,而不是變量名。

scanf("%d",a);

×scnaf("%d",&a);

√②在輸入字符數(shù)據(jù)時(shí),若格式控制串中無(wú)非格式字符,則認(rèn)為所有輸入的字符均為有效字符。

scanf(“%c%c%c”,&c1,&c2,&c3);則把‘a(chǎn)’賦予c1,‘

’賦予c2,‘b’賦予c3︺如輸入abc︺︺返回主菜單164順序結(jié)構(gòu)程序舉例(1)例5:雞兔同籠問(wèn)題。已知雞兔總頭數(shù)為H,總腳數(shù)為F,求雞兔各有多少只?解題思路:先作為一個(gè)數(shù)學(xué)問(wèn)題考慮。設(shè)雞有x只,兔有y只,可得方程組解得:174順序結(jié)構(gòu)程序舉例(2)例5:雞兔同籠問(wèn)題。(續(xù))編程思路流程圖:編寫程序代碼#include<stdio.h>main(){intH,F,x,y;scanf(“%d,%d”,&H,&F);x=(4*H-F)/2;y=(F-2*H)/2;printf(“chicken=%d\n”,x);printf(“rabbit=%d\n”,y);}18364順序結(jié)構(gòu)程序舉例(3)例6:輸入整數(shù)a和b,交換a和b后輸出。ab15解題思路:如何完成交換過(guò)程?abtemp1536temp=a;a=b;b=temp;194順序結(jié)構(gòu)程序舉例(4)例6:輸入整數(shù)a和b,交換a和b后輸出。(續(xù))編程思路流程圖:編寫程序代碼返回主菜單20本講小結(jié)了解C語(yǔ)句的分類掌握輸入/輸出語(yǔ)句的使用掌握輸入/輸出語(yǔ)句格式控制字符串的使用掌握順序結(jié)構(gòu)程序設(shè)計(jì)的方法21作業(yè)作業(yè)練習(xí)冊(cè)第3章沒(méi)有做過(guò)的題目上機(jī)實(shí)驗(yàn)2(書面完成)2223謝謝23引例的程序?qū)崿F(xiàn)

引例:從鍵盤輸入一個(gè)小寫字母,要求在屏幕上輸出對(duì)應(yīng)的大寫字母#include<stdio.h>main(){}charlowchar,upchar;putchar(字符變量)getchar()lowchar=getchar();upchar=lowchar-32;putchar(upchar);返回24輸出格式字符串(1)一般形式:%[標(biāo)志][輸出最小寬度][.精度][長(zhǎng)度]類型

類型:用以表示輸出數(shù)據(jù)的類型格式字符意義d,i以十進(jìn)制形式輸出帶符號(hào)整數(shù)(正數(shù)不輸出符號(hào))o以八進(jìn)制形式輸出無(wú)符號(hào)整數(shù)(不輸出前綴0)x,X以十六進(jìn)制形式輸出無(wú)符號(hào)整數(shù)(不輸出前綴Ox)u以十進(jìn)制形式輸出無(wú)符號(hào)整數(shù)f以小數(shù)形式輸出單、雙精度實(shí)數(shù)e,E以指數(shù)形式輸出單、雙精度實(shí)數(shù)g,G以%f或%e中較短的輸出寬度輸出單、雙精度實(shí)數(shù)c輸出單個(gè)字符s輸出字符串25輸出格式字符串(2)一般形式:%[標(biāo)志][輸出最小寬度][.精度][長(zhǎng)度]類型

標(biāo)志:標(biāo)志字符為-、+、#、空格四種

標(biāo)志意義-結(jié)果左對(duì)齊,右邊填空格+輸出符號(hào)(正號(hào)或負(fù)號(hào))空格輸出值為正時(shí)冠以空格,為負(fù)時(shí)冠以負(fù)號(hào)#對(duì)c,s,d,u類無(wú)影響;對(duì)o類,在輸出時(shí)加前綴o;對(duì)x類,在輸出時(shí)加前綴0x26輸出格式字符串(3)一般形式:%[標(biāo)志][輸出最小寬度][.精度][長(zhǎng)度]類型

輸出最小寬度:用十進(jìn)制整數(shù)來(lái)表示。精度:以“.”開(kāi)頭,后跟十進(jìn)制整數(shù)。長(zhǎng)度:格式符為h,l,L三種,h表示按短整型量輸出,l和L表示按長(zhǎng)整型量輸出。若實(shí)際位數(shù)多于定義的寬度,則按實(shí)際位數(shù)輸出,若實(shí)際位數(shù)少于定義的寬度則補(bǔ)以空格或0。如果輸出數(shù)字,則表示小數(shù)的位數(shù);如果輸出的是字符,則表示輸出字符的個(gè)數(shù);若實(shí)際位數(shù)大于所定義的精度數(shù),則截去超過(guò)的部分。返回27格式輸出函數(shù)練習(xí)(1)分析下面程序的輸出結(jié)果(例1)main(){unsignedinta=65535;intb=-2;printf(“a=%d,%o,%x,%u\n”,a,a,a,a);printf(“b=%d,%o,%x,%u\n”,b,b,b,b);}%[標(biāo)志][輸出最小寬度][.精度][長(zhǎng)度]類型

輸出(Turbo2.0):a=-1,177777,ffff,65535b=-2,177776,fffe,65534輸出(VC++6.0):a=65535,177777,ffff,65535b=-2,37777777776,fffffffe,429496729428格式輸出函數(shù)練習(xí)(2)分析下面程序的輸出結(jié)果(例2)main(){charc=‘a(chǎn)’;inti=97;printf(“%c,%d\n”,c,c);printf(“%c,%d\n”,i,i);}%[標(biāo)志][輸出最小寬度][.精度][長(zhǎng)度]類型

輸出:a,97a,9729格式輸出函數(shù)練習(xí)(3)分析下面程序的輸出結(jié)果(例3)main(){floatx=1234.789012f;doubley=123456789012.123456;printf(“x=%f,y=%f\n”,x,y)}輸出結(jié)果:1234.789063,y=123456789012.123460float型有7位有效數(shù)字double型有16位有效數(shù)字30格式輸出函數(shù)練習(xí)(4)分析下面程序的輸出結(jié)果(例4)#include<stdio.h>main(){floatf=123.456;printf(“%f,%10.2f,%10.4f\n",f,f,f);printf("%e,%10.2e,%10.4e\n",f,f,f);}輸出結(jié)果:123.456001,123.46,

123.45601234560e+002,1.23e+002,1.2346e+002返回31輸入格式字符串(1)一般形式:%[*][輸入數(shù)據(jù)寬度][長(zhǎng)度]類型類型:表示輸入數(shù)據(jù)的類型格式字符意義d,i輸入十進(jìn)制整數(shù)o輸入八進(jìn)制整數(shù)x輸入十六進(jìn)制整數(shù)u輸入無(wú)符號(hào)十進(jìn)制整數(shù)f或e輸入實(shí)型數(shù)(用小數(shù)形式或指數(shù)形式)c輸入單個(gè)字符s輸入字符串32輸入格式字符串(2)一般形式:%[*][輸入數(shù)據(jù)寬度][長(zhǎng)度]類型“*”符:用以表示該輸入項(xiàng),讀入后不賦予相應(yīng)的變量,即跳過(guò)該輸入值。寬度:用十進(jìn)制整數(shù)指定輸入的寬度(即字符數(shù))。長(zhǎng)度:長(zhǎng)度格式符為l(L)和h,l表示輸入長(zhǎng)

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論