思考個(gè)人收獲_第1頁
思考個(gè)人收獲_第2頁
思考個(gè)人收獲_第3頁
思考個(gè)人收獲_第4頁
思考個(gè)人收獲_第5頁
已閱讀5頁,還剩23頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、思考個(gè)人收獲應(yīng)能初步寫出簡(jiǎn)單的順序結(jié)構(gòu)程序應(yīng)能較為熟練運(yùn)用各種語法知識(shí)應(yīng)該較為熟練使用vc6.0初步理解什么是程序2022/8/8最近一個(gè)月的目標(biāo)寫出結(jié)構(gòu)良好的C程序?qū)W會(huì)斷點(diǎn)調(diào)試進(jìn)行程序跟蹤能夠熟練運(yùn)用三種控制結(jié)構(gòu)解決問題初步培養(yǎng)嚴(yán)密的邏輯思維和獨(dú)立、靈活解決問題的能力初步認(rèn)識(shí)算法和數(shù)學(xué)的重要性完成3個(gè)大作業(yè)2022/8/8重慶郵電大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院馮 瀟算法和分支結(jié)構(gòu)2022/8/83主要內(nèi)容什么是算法什么算法是好的算法為什么說:“算法是程序的靈魂”算法的描述方式分支結(jié)構(gòu)2022/8/8重點(diǎn) & 難點(diǎn)針對(duì)問題尋找較好的算法能夠利用分支結(jié)構(gòu)靈活解決實(shí)際問題2022/8/8按部就班的人生規(guī)

2、劃出生-求學(xué)-工作-結(jié)婚-生子-退休面臨抉擇-就業(yè)?工作?勤勞的清潔工生活中事物發(fā)展的基本模式讀研本科畢業(yè)完成學(xué)業(yè)工作YN工作時(shí)間內(nèi)做清潔休息NY2022/8/8控制結(jié)構(gòu)用于控制程序的執(zhí)行流向,分為順序、分支和循環(huán)3種基本控制結(jié)構(gòu)已經(jīng)證明,任何程序均可只用順序、分支和循環(huán)結(jié)構(gòu)描述只用這三種結(jié)構(gòu)描述的程序叫結(jié)構(gòu)化程序設(shè)計(jì)程序的控制結(jié)構(gòu)2022/8/8為解決一個(gè)具體問題而采取的確定的、有限的操作步驟算法的特點(diǎn)有窮性確定性有效性0個(gè)或多個(gè)輸入(一定要有原始數(shù)據(jù))1個(gè)或多個(gè)輸出算法沒有對(duì)錯(cuò),只有好壞之分什么是算法2022/8/8當(dāng)軟件運(yùn)行速度很慢時(shí),是升級(jí)機(jī)器還是采用更好的算法?已經(jīng)證明,對(duì)于復(fù)雜度最

3、高的算法,即使換一臺(tái)運(yùn)算速度快10倍的計(jì)算機(jī),也只能將解決問題的規(guī)模由原有的1000提升到1003算法是提升軟件速度的根本之道怎樣衡量一個(gè)算法的好壞執(zhí)行該算法所需的時(shí)間多少(CPU)執(zhí)行該算法所需的空間大小(內(nèi)存)找準(zhǔn)問題的切入點(diǎn)舉一反三,打破慣性思維算法是程序設(shè)計(jì)的靈魂2022/8/8算法的流程圖表示2022/8/8從鍵盤上鍵入1個(gè)整數(shù),判斷該數(shù)的正負(fù)和奇偶判斷整數(shù)的正負(fù)和奇偶2022/8/8分為if和ifelse兩種if形式: if(表達(dá)式) 語句;ifelse形式 if(表達(dá)式) 語句1; else 語句2;根據(jù)表達(dá)式的值為0或非0決定程序執(zhí)行流向利用if-else語句構(gòu)建分支結(jié)構(gòu)模塊1

4、模塊2條件YN模塊1模塊2條件YN2022/8/8#include void main() int m; /定義待判斷的整數(shù) printf(“Please input an integer:”); scanf(“%d”,&m); 問題的求解2022/8/8 if (num = 0) if(num != 0) /if(num) if(num % 2) printf(“positive, oddn”); else printf(“positive, evenn”); else printf(“0,evenn”); else if (num % 2) printf(“negative,oddn”);

5、 else printf(“negative,evenn”);2022/8/8if-else中嵌套if-else格式幾點(diǎn)說明2022/8/8else總是和最上面一個(gè)沒有匹配的if配對(duì)if-else語句整體構(gòu)成一個(gè)復(fù)合語句盡量用將屬于if和else部分的語句括起來形成一個(gè)邏輯上的整體屬于if或else的語句應(yīng)相對(duì)這兩個(gè)關(guān)鍵字縮緊兩個(gè)空格2022/8/8C語言中唯一的三目運(yùn)算符表達(dá)式1 ? 表達(dá)式2 : 表達(dá)式3含義:如果表達(dá)式1的值非0(為真),則該條件表達(dá)式的結(jié)果就是表達(dá)式2的值,否則,就是表達(dá)式3的值例: (x = 0) ? (y = 1) : (y = -1) (x % 2)? print

6、f(“oddn”) : printf(“evenn”);條件運(yùn)算符可以用一個(gè)if-else語句實(shí)現(xiàn)條件運(yùn)算符2022/8/8輸入三角形三邊,判斷是否能構(gòu)成三角形,如果能,則指出是什么三角形(等腰、直角還是一般三角形)判斷三角形構(gòu)成情況2022/8/8float a,b,c;scanf (%f%f%f,&a,&b,&c);if(a + b c) & (a + c b)&(b + c a)if(a = b)|(a = c)|(b = c)printf(It is a isoceles triangle!);else if(a*a+b*b=c*c)|(a*a+c*c=b*b)|(c*c+b*b=a*

7、a)printf(It is a right-angled triangle!);else printf(It is a general triangle!);elseprintf(It is not a triangle);錯(cuò)在哪里?案例- x4-7-12022/8/8錯(cuò)誤案例分析一般三角形不是三角形等邊等腰直角三角形等腰直角有交叉關(guān)系的用并列的if非此即彼的用ifelse2022/8/8案例- x4-7-2void main()float a, b, c;int flag = 1;/值1表示一般三角形,0表示特殊三角形if (a+bc & b+ca & a+cb)/*三角形的基本條件*/i

8、f (a=b | b=c | c=a)printf(等腰);flag = 0;if (a*a+b*b=c*c | a*a+c*c=b*b | b*b+c*c=a*a)printf(直角);flag = 0;if (flag)printf(一般);printf(三角形n);elseprintf(不是三角形n);2022/8/8案例-x4-7-3void main()if (a+bc & b+ca & a+cb) /*三角形的基本條件*/if (a=b & b=c & c=a)printf(等邊);flag = 0;if (a=b | b=c | c=a)printf(等腰);flag = 0;i

9、f (a*a+b*b=c*c | a*a+c*c=b*b | b*b+c*c=a*a)printf(直角);flag = 0;if (flag)printf(一般);printf(三角形n);elseprintf(不是三角形n);錯(cuò)在哪里?2022/8/8void main()if (a+bc & b+ca & a+cb) /*三角形的基本條件*/if (a=b & b=c & c=a)printf(等邊);flag = 0;else if (a=b | b=c | c=a)printf(等腰);flag = 0;if (a*a+b*b=c*c | a*a+c*c=b*b | b*b+c*c=

10、a*a)printf(直角);flag = 0;if (flag)printf(一般);printf(三角形n);elseprintf(不是三角形n);案例- x4-7-42022/8/8案例-x4-7-5void main()if (a+bc & b+ca & a+cb) /*三角形的基本條件*/if (a=b | b=c | c=a)printf(等腰);flag = 0;else if (a=b & b=c & c=a)printf(等邊);flag = 0;if (a*a+b*b=c*c | a*a+c*c=b*b | b*b+c*c=a*a)printf(直角);flag = 0;i

11、f (flag)printf(一般);printf(三角形n);elseprintf(不是三角形n);等腰在先等邊在后是否可以?2022/8/8錯(cuò)誤案例/*等腰三角形的條件*/if (a=b | b=c | c=a)#define LIMIT 1e-7if (fabs(a-b)=LIMIT | fabs(b-c)=LIMIT | fabs(c-a)=LIMIT)/*直角三角形的條件 */if (a*a+b*b=c*c | a*a+c*c=b*b | b*b+c*c=a*a)if (fabs(a*a+b*b-c*c)=LIMIT| fabs(a*a+c*c-b*b)=LIMIT| fabs(c*c+b*b-a*a)=LIMIT) 2022/8/8格式:多分支處理語句switchswitch(表達(dá)式) case 常量表達(dá)式1:語句1 ;break; case 常量表達(dá)式2:語句2 ;break; case 常量表達(dá)式n:語句n ;break; default:語句n+1 說明:switch語句后表達(dá)式的值可以是整型、字符型、枚舉型2022/8/8要求:80分以上輸出A,7079分為B,6069分為C,60分以下為D分段輸出學(xué)生成績(jī)等級(jí)switch(score/10) case 10: case 9: case 8: printf(“your g

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論