




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、.,1,一、基本概念,數(shù)據(jù)結(jié)構(gòu)+算法=程序1、算法:是對特定問題求解步驟的一種描述2、數(shù)據(jù)結(jié)構(gòu):數(shù)據(jù)的組織形式及其相互關(guān)系,.,2,二、算法舉例,1、求1*2*3*4*5的值。2、判斷一個數(shù)n是否為素數(shù)。(n2),.,3,四、算法的表示,1、自然語言2、流程圖3、偽代碼4、計算機(jī)語言,.,4,五、結(jié)構(gòu)化程序設(shè)計方法,1、含義:規(guī)范程序設(shè)計風(fēng)格和程序結(jié)構(gòu)。2、思路:將復(fù)雜的問題分階段處理3、方法:自頂向下、逐步細(xì)化、模塊化設(shè)計、結(jié)構(gòu)化編碼,.,5,S1:求12,得到結(jié)果2.S2:將第1步所得結(jié)果2乘以3,得到結(jié)果6.S3:將6乘以4,得24.S4:將24乘以5,得120.,求1*2*3*4*5的
2、值。(思路一),.,6,設(shè)p為被乘數(shù),i為乘數(shù)S1:使p=1.S2:使i=2.S3:使pi,乘積賦給p.S4:使i的值加1.S5:若i=5,執(zhí)行S3;否則程序結(jié)束.,求1*2*3*4*5的值。(思路二),.,7,S1:輸入n的值.S2:置變量i的值為2.S3:求解m=n%i;若m=0,轉(zhuǎn)向S6,否則執(zhí)行S4.S4:變量i的值自加1.S5:判斷i0)printf(|x|=%d,x);elseprintf(|x|=%d,-x);,.,14,:用括起來的一組語句一般形式:數(shù)據(jù)說明部分;執(zhí)行語句部分;說明:“”后不加分號語法上和單一語句相同復(fù)合語句可嵌套,復(fù)合語句,.,15,算法的基本控制結(jié)構(gòu),問題的
3、提出:(1)-1(x0)(2)統(tǒng)計任意一個人群的平均身高算法算法的基本控制結(jié)構(gòu):順序結(jié)構(gòu)分支結(jié)構(gòu)循環(huán)結(jié)構(gòu)程序流程圖,.,16,結(jié)構(gòu)化程序設(shè)計基本思想:任何程序都可以用三種基本結(jié)構(gòu)表示,限制使用無條件轉(zhuǎn)移語句(goto)結(jié)構(gòu)化程序:由三種基本結(jié)構(gòu)反復(fù)嵌套構(gòu)成的程序叫優(yōu)點:結(jié)構(gòu)清晰,易讀,提高程序設(shè)計質(zhì)量和效率三種基本結(jié)構(gòu)順序結(jié)構(gòu),程序的三種基本結(jié)構(gòu),.,17,二分支選擇結(jié)構(gòu),多分支選擇結(jié)構(gòu),選擇結(jié)構(gòu),.,18,當(dāng)型循環(huán)結(jié)構(gòu),直到型循環(huán)結(jié)構(gòu),注:A,B,A1.An可以是一個簡單語句,也可以是一個基本結(jié)構(gòu),循環(huán)結(jié)構(gòu),.,19,賦值語句,格式:賦值表達(dá)式;賦值語句與賦值表達(dá)式的區(qū)別:賦值表達(dá)式可以包含
4、在其它表達(dá)式中,而賦值語句不可。例:if(a=b)0)t=a;不可寫為:if(a=b;)0)t=a;,.,20,這是C中新加的非常簡單易用的輸入、輸出方式,C+中沒有專門的輸入輸出語句,是用I/O流類來實現(xiàn)。在程序的開頭增加一行:#include1)用插入操作符“”向標(biāo)準(zhǔn)輸出流cout中插入字符。向標(biāo)準(zhǔn)輸出設(shè)備(顯示器)輸出例:intx;cout“x=“”從標(biāo)準(zhǔn)輸入流cin中抽取字符從標(biāo)準(zhǔn)輸入設(shè)備(鍵盤)輸入例:intx;cinx;inta,b;cinab;,)使用控制符有時缺省輸出格式不能滿足要求,這時可以用控制符控制輸出的格式。在程序的開頭增加一行:#include,.,22,例:,#in
5、clude#includevoidmain()coutsetw(5)setprecision(3)3.1415endl;3.14,.,23,C語言無I/O語句,I/O操作由函數(shù)實現(xiàn),#include,C語言中的輸入輸出,.,24,printf和scanf,printf函數(shù)(1)printf函數(shù)的一般格式為:printf(格式控制字符串,輸出項1,輸出項2,)括號中的格式控制字符串和輸出項都是函數(shù)參數(shù)。printf()函數(shù)的功能是將后面的參數(shù)按給定的格式輸出。格式控制字符串中有格式說明,也有普通字符。格式說明由”%”和格式字符組成,如%d,%f等。它的作用是將輸出的數(shù)據(jù)轉(zhuǎn)換成指定的格式輸出。普通
6、字符按原樣輸出,如:#includestdio.hvoidmain()inta=10,b=20;printf(%d,%d,a,b);,輸出結(jié)果為:10,20,.,25,(2)%d格式符用來輸出10進(jìn)制整數(shù),可以有長度修飾。如:#includestdio.hvoidmain()inta=28,b=38;longc=123456;printf(%5d,%5dn%ldn,a,b,c);printf(%3ldn%7ldn%dn,c,c,c);輸出結(jié)果為:28,38123456123456123456123456,%5d表示輸出寬度為5,%ld表示輸出為長整型如果整數(shù)的位數(shù)多于指定寬度,則按實際位數(shù)輸出
7、,.,26,(3)%o和%x格式符用來輸出8進(jìn)制、16進(jìn)制整數(shù)。8進(jìn)制和16進(jìn)制都是無符號整數(shù),輸出時不帶符號。如:#includestdio.hvoidmain()inta=1200;printf(%d,%o,%x,%X,%6xn,a,a,a,a,a);輸出結(jié)果為:1200,2260,4b0,4B0,4b0,.,27,(4)%u格式符用來輸出無符號10進(jìn)制整數(shù)。(5)%c格式符用來輸出一個字符。如果一個整數(shù),其值在0255之間,也可以字符方式輸出。它們都可以指定格式寬度。例如:charch=a;inta=65;printf(%c,%d,%3cn,ch,ch,ch);printf(%c,%d,
8、%3dn,a,a,a);輸出結(jié)果為:a,97,aA,65,65,.,28,(6)%s格式符用來輸出字符串。可以指定格式寬度,如果字符串長小于指定的寬度時,可以選擇左對齊或右對齊。另外,還可以選擇輸出字符中的前n個字符。例如:printf(%s,Hellon);printf(Hellon);printf(%3s,%-5.3s,%5.2sn,Hello,Hello,Hello);輸出結(jié)果為:HelloHelloHello,Hel,He如果輸出的只有一個字符串,可以省略格式參數(shù),因為格式參數(shù)本身可以是原樣輸出的普通字符串?!?-5.3s”中的負(fù)號表示左對齊,如果沒有負(fù)號,則默認(rèn)為右對齊。5表示格式寬
9、度,3表示截取字符串中3個字符。,.,29,(7)%f格式符用來以小數(shù)方式輸出??芍付ǜ袷綄挾?,也可以指定小數(shù)位數(shù),還可以規(guī)定左對齊或右對齊。如:floatx=123.456;doubley=321.654321;printf(%f,%-7.2f,%10.4fn,x,x,x);printf(%lf,%-7.2lf,%10.4lfn,y,y,y);輸出結(jié)果為:123.456001,123.46,123.4560321.654321,321.65,321.6543以%f格式輸出時,默認(rèn)的小數(shù)位數(shù)是6位。%-7.2f表示左對齊,總長度為7位,小數(shù)位數(shù)為2位。,.,30,(8)%e,%E,%g,%G格
10、式符用來以指數(shù)方式輸出浮點數(shù)。默認(rèn)的小數(shù)位數(shù)為6,指數(shù)位數(shù)為3(不包括e+和e-):floatx=123.456;doubley=321.654321;printf(%e,%-7.2e,%10.4en,x,x,x);printf(%e,%-7.2e,%10.4en,y,y,y);輸出結(jié)果為:1.234560e+002,1.23e+002,1.2346e+0023.216543e+002,3.22e+002,3.2165e+002%E格式同%e,只是將輸出的小寫e改為大寫E。%g根據(jù)數(shù)值的大小,自動選取f格式或e格式。,.,31,(9)注意事項除X,E,G格式外,其他格式必須用小寫字母,例如%d
11、不能寫成%D可以在printf函數(shù)中的“格式控制”字符串內(nèi)使用“轉(zhuǎn)義字符”?!案袷娇刂啤弊址?,在%后的d、o、x、u、c、s、f、e、g做為格式符,否則做為普通字符,如:printf(“c=%c,f=%f,s=%s”,c,f,s);如果想輸出字符%,則應(yīng)該在“格式控制”字符串中連續(xù)用兩個%表示,如:printf(“%f%”,1.0/3);,.,32,inti,j;scanf(“%3d%3d”,/輸入3,4,.,33,(3)注意事項scanf函數(shù)中的“格式控制”后面應(yīng)當(dāng)是變量地址,而不是變量名。如果在“格式控制”字符串中除了格式說明以外還有其他字符,則在輸入數(shù)據(jù)時在對應(yīng)位置應(yīng)輸入與這些字符相
12、同的字符。在使用%c格式輸入字符時,空格字符和“轉(zhuǎn)義字符”都作為有效字符輸入在輸入數(shù)據(jù)時,遇以下情況時該數(shù)據(jù)認(rèn)為結(jié)束遇空格,或按“回車”,或”Tab”鍵按指定的寬度結(jié)束,如%3d,只取3列遇非法輸入。,.,34,/*ch3_12.c*/#include#includemain()floata,b,c,s,area;scanf(%f,%f,%f,輸入:3,4,6輸出:a=3.00,b=4.00,c=6.00s=6.50area=5.33,例輸入三角形邊長,求面積,.,35,字符輸出,格式:putchar(c)參數(shù):c為字符常量、變量或表達(dá)式功能:把字符c輸出到顯示器上返值:正常,為顯示的代碼值;
13、出錯,為EOF(-1),字符輸出函數(shù),.,36,/*ch3_13.c*/#includestdio.hmain()charc1,c2;c1=getchar();printf(%c,%dn,c1,c1);c2=c1+32;printf(%c,%dn,c2,c2);,輸入:A輸出:A,65a,97,例從鍵盤輸入大寫字母,用小寫字母輸出,.,第三章程序設(shè)計初步,選擇結(jié)構(gòu)設(shè)計,.,38,條件運算符與條件表達(dá)式,一般形式:表達(dá)式1?表達(dá)式2:表達(dá)式3表達(dá)式1必須是bool類型執(zhí)行順序:先求解表達(dá)式1,若表達(dá)式1的值為true,則求解表達(dá)式2,表達(dá)式2的值為最終結(jié)果若表達(dá)式1的值為false,則求解表達(dá)式
14、3,表達(dá)式3的值為最終結(jié)果,例x=ab?a:cd?c:d即ab?a:(cd?c:d)(3)條件表達(dá)式與一般if的語句的關(guān)系coutb?a:b;()表達(dá)式2、3的類型可以不同,條件表達(dá)式的最終類型為2和3中較高的類型。,.,40,if(表達(dá)式)語句例:if(xy)couty)coutx;elsecoutage;if(age10)cout=0)if(x50)cout“xisokn”;elsecout“xisnotokn”;,If語句的嵌套二義性因為if可以嵌套,所有在嵌套時有時會出歧義,例如上例中,else是與第一個if配對,還是與第二個if配對?這種時候,系統(tǒng)就認(rèn)為:else與最近的一個if相對應(yīng),.,二義性:(1)if()if()coutendl;/輸出能被整除,能被整除elsecoutendl;/輸出能被整除,不能被整除(2)if()if()coutendl;/輸出能被
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 中國胸墜行業(yè)市場發(fā)展前景及發(fā)展趨勢與投資戰(zhàn)略研究報告(2024-2030)
- 河北省承德市寬城滿族自治縣龍須門鎮(zhèn)中學(xué)2025屆高二化學(xué)第二學(xué)期期末學(xué)業(yè)質(zhì)量監(jiān)測試題含解析
- 2025年中國數(shù)控玻璃刻花機(jī)行業(yè)競爭格局分析及投資規(guī)劃研究報告
- “剪紙藝術(shù)”傳統(tǒng)藝術(shù)游戲商業(yè)計劃書
- 中國自推進(jìn)的采(截)煤機(jī)行業(yè)全景評估及投資規(guī)劃建議報告
- 2025屆四川省瀘州市瀘縣一中高二化學(xué)第二學(xué)期期末教學(xué)質(zhì)量檢測試題含解析
- 2025年中國互聯(lián)網(wǎng)+聚甲醛(POM)未來發(fā)展趨勢分析及投資規(guī)劃建議研究報告
- 2025年中國滅火器的零件行業(yè)市場調(diào)研分析及投資戰(zhàn)略咨詢報告
- 2025年中國鋁合金百葉窗行業(yè)市場調(diào)查研究及投資前景展望報告
- 中國網(wǎng)絡(luò)婚戀交友行業(yè)發(fā)展運行現(xiàn)狀及投資潛力預(yù)測報告
- 2025年全國普通高校招生全國統(tǒng)一考試數(shù)學(xué)試卷(新高考Ⅰ卷)含答案
- 2025年河南省豫地科技集團(tuán)有限公司社會招聘169人筆試參考題庫附帶答案詳解析集合
- DZ/T 0269-2014地質(zhì)災(zāi)害災(zāi)情統(tǒng)計
- 北京市海淀區(qū)2023-2024學(xué)年高二下學(xué)期期末考試英語試卷(含答案)
- 【KAWO科握】2025年中國社交媒體平臺指南報告
- 棄土租地合同協(xié)議書
- TCEC691-2022故障錄波及行波測距一體化裝置技術(shù)規(guī)范
- 高級衛(wèi)生專業(yè)技術(shù)資格-副高級(護(hù)理學(xué))真題庫-14
- 長螺旋鉆孔灌注樁施工培訓(xùn)
- 歷史明清時期的科技與文化課件-2024-2025學(xué)年統(tǒng)編版七年級歷史下冊
- 爆破三員培訓(xùn)
評論
0/150
提交評論