版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、會(huì)計(jì)學(xué)1C語言算法和基本程序設(shè)計(jì)語言算法和基本程序設(shè)計(jì)第1頁/共43頁第2頁/共43頁第3頁/共43頁用自然語言表示算法用自然語言表示算法用流程圖表示算法用流程圖表示算法用用N-S流程圖表示算法流程圖表示算法用偽代碼表示算法用偽代碼表示算法用計(jì)算機(jī)語言表示算法用計(jì)算機(jī)語言表示算法 歧義性,描述分支、循環(huán)算法不方便歧義性,描述分支、循環(huán)算法不方便第4頁/共43頁第5頁/共43頁起止框起止框輸入輸出框輸入輸出框處理框處理框判斷框判斷框流程線流程線連接點(diǎn)連接點(diǎn)第6頁/共43頁開始x+y+z = sum輸出sum的值結(jié)束輸入x,y,z圖3.2 求三個(gè)整數(shù)和的算法第7頁/共43頁m,n為正整數(shù)開始結(jié)束輸
2、入m,n求m/n的余數(shù)rr = 0 ?n =m, r =n輸出n是否第8頁/共43頁最大公因數(shù)的算法求最大公因數(shù)的最普遍的算法是歐幾里得算法,它最初是公元前由歐幾里得提出來的,有時(shí)也稱它為輾轉(zhuǎn)相除法表述如下:設(shè)給定m,n(mn),令r0=m,r1=n,有 則得rk=gcd(rk-1,rk)=gcd(rk-2,rk-1)=gcd(r2,r3)=gcd(r1,r2)=gcd(r0,r1)=gcd(m,n)b|a 表示b整除a或者a整除以b 則 a是b的倍數(shù),b是a的約數(shù)rk-2 = qk-1 qk rk + rk =(qk-1 qk +1) rk第9頁/共43頁驟,太可驟,太可怕了。怕了。案例案例
3、 求求12341000 S1: 1 p (p:被乘被乘數(shù)數(shù)) S2: 2 i (i:乘數(shù)乘數(shù)) S3: pi p S4: i+1 i S5: 若若i1000,返回返回S3;否則,結(jié)束。;否則,結(jié)束。 只需只需5個(gè)步驟,簡單個(gè)步驟,簡單。第10頁/共43頁第11頁/共43頁第12頁/共43頁3.3 程序的基本結(jié)構(gòu)程序的基本結(jié)構(gòu)第13頁/共43頁pA 3 3 結(jié)構(gòu)內(nèi)的每一部分都有機(jī)會(huì)被執(zhí)行結(jié)構(gòu)內(nèi)的每一部分都有機(jī)會(huì)被執(zhí)行到到AB 4 4 結(jié)構(gòu)內(nèi)沒有死循環(huán)結(jié)構(gòu)內(nèi)沒有死循環(huán)第14頁/共43頁ABabAB傳統(tǒng)流程傳統(tǒng)流程圖圖N-S流程流程圖圖第15頁/共43頁Ap成立不成立BAp成立不成立傳統(tǒng)流程傳統(tǒng)流程
4、圖圖第16頁/共43頁成立不成立ApBN-S流程流程圖圖第17頁/共43頁Ap1成立不成立ab不成立Ap2成立ab傳統(tǒng)流程傳統(tǒng)流程圖圖While型型Until型型第18頁/共43頁直到直到p1成立成立A當(dāng)當(dāng)p1成立成立AWhile型型Until型型N-S流程流程圖圖第19頁/共43頁第20頁/共43頁 一個(gè)非結(jié)構(gòu)化算法可以用一個(gè)等價(jià)的結(jié)一個(gè)非結(jié)構(gòu)化算法可以用一個(gè)等價(jià)的結(jié)構(gòu)化算法代替,其功能不變。構(gòu)化算法代替,其功能不變。 如果一個(gè)算法不能分解為若干個(gè)節(jié)本結(jié)如果一個(gè)算法不能分解為若干個(gè)節(jié)本結(jié)構(gòu),則它必然不是一個(gè)結(jié)構(gòu)化算法。構(gòu),則它必然不是一個(gè)結(jié)構(gòu)化算法。第21頁/共43頁第22頁/共43頁第23
5、頁/共43頁C第24頁/共43頁5C語言無I/O語句,I/O操作由函數(shù)實(shí)現(xiàn)5 #include 字符輸出函數(shù)格式格式: putchar( c ): putchar( c )參數(shù)參數(shù): c: c為字符常量、變量或表達(dá)式為字符常量、變量或表達(dá)式功能:把字符功能:把字符c c輸出到顯示器上輸出到顯示器上返值:正常,為顯示的代碼值;出錯(cuò),為返值:正常,為顯示的代碼值;出錯(cuò),為EOF(-1EOF(-1)第25頁/共43頁運(yùn)行后,在屏幕上顯示:red 第26頁/共43頁 數(shù)據(jù)輸入數(shù)據(jù)輸入字符輸入函數(shù) 格式格式:getchar( ):getchar( )功能:從鍵盤讀一字符功能:從鍵盤讀一字符返值:正常,返
6、回讀取的代碼值;出錯(cuò)返值:正常,返回讀取的代碼值;出錯(cuò), ,返回返回EOF(-1)EOF(-1)注意:getchar()函數(shù)的括號(hào)中沒有參數(shù),該函數(shù)的輸入一直到“回車”才結(jié)束?;剀嚽暗乃休斎胱址紩?huì)逐個(gè)顯示在屏幕上,但只有第一個(gè)字符作為函數(shù)的返回值只有第一個(gè)字符作為函數(shù)的返回值。 第27頁/共43頁第28頁/共43頁若輸入b,在屏幕上顯示: bB 第29頁/共43頁第30頁/共43頁當(dāng)輸入為“How are you?”,則輸出為:How are you?第31頁/共43頁格式:格式:printf(“printf(“格式控制串格式控制串”,輸出表,輸出表) )功能:按指定格式向顯示器輸出數(shù)據(jù)功
7、能:按指定格式向顯示器輸出數(shù)據(jù)返值:正常,返回輸出字節(jié)數(shù);出錯(cuò),返回返值:正常,返回輸出字節(jié)數(shù);出錯(cuò),返回EOF(-1)EOF(-1) 輸出表:要輸出的數(shù)據(jù)(可以沒有,多個(gè)時(shí)以輸出表:要輸出的數(shù)據(jù)(可以沒有,多個(gè)時(shí)以“,”分隔)分隔) 格式控制串:包含兩種信息格式控制串:包含兩種信息 格式說明:格式說明: %修飾符修飾符格式字符格式字符 ,用于指,用于指定輸出格式定輸出格式 普通字符或轉(zhuǎn)義序列:原樣輸出普通字符或轉(zhuǎn)義序列:原樣輸出 格式字符格式字符第32頁/共43頁d,ix,Xoucse,Efg%格式字符:十六進(jìn)制無符號(hào)整數(shù)不帶符號(hào)十進(jìn)制整數(shù)十進(jìn)制整數(shù)指數(shù)形式浮點(diǎn)小數(shù)單一字符字符串八進(jìn)制無符號(hào)
8、整數(shù)小數(shù)形式浮點(diǎn)小數(shù)e和f中較短一種百分號(hào)本身int a=567;printf ( “%d”,a);int a=255;printf(“%x”,a);int a=65;printf(“%o”,a);int a=567;printf(“%u”,a);char a=65;printf(“%c”,a);printf(“%s”,“ABC”);float a=567.789;printf(“%e”,a);float a=567.789;printf(“%f”,a);float a=567.789;printf(“%g”,a);printf(“%”);567ff101567AABC5.677890e+02
9、567.789000567.789% 說明 格式字符要用小寫 格式字符與輸出項(xiàng)個(gè)數(shù)應(yīng)相同,按先后順序一一對應(yīng) 輸出轉(zhuǎn)換:格式字符與輸出項(xiàng)類型不一致,自動(dòng)按指定格式輸出例 main() unsigned int u=65535; printf(”u=%dn,u); 輸出結(jié)果:u=-1例 int a=3,b=4; printf(“%d %dn”,a,b); printf(“a=%d , b=%dn”,a,b); 例 int a=3,b=4; printf(“%d %dn”,a,b); printf(“a=%d , b=%dn”,a,b);輸出結(jié)果: 3 4 a=3, b=411 11 11 11
10、11 11 11 1165535第33頁/共43頁格式格式: scanf(: scanf(“格式控制串格式控制串”,地址表),地址表)功能:按指定格式從鍵盤讀入數(shù)據(jù),存入地址表指定的功能:按指定格式從鍵盤讀入數(shù)據(jù),存入地址表指定的 存儲(chǔ)單元中存儲(chǔ)單元中, ,并按回車鍵結(jié)束并按回車鍵結(jié)束返值:正常,返回輸入數(shù)據(jù)個(gè)數(shù)返值:正常,返回輸入數(shù)據(jù)個(gè)數(shù)地址表:變量的地址,常用取地址運(yùn)算符&格式字符:d,i,o,x,u,c,s,f,e例 scanf(“%d”,&a); 輸入:10 則 a=10例 scanf(“%x”,&a); 輸入:11 則 a=17第34頁/共43頁例 scanf(“%4d%2d%2d”
11、,&yy,&mm,&dd); 輸入 19991015 則1999yy, 10 mm, 15 dd例 scanf(“%3d%*4d%f”,&k,&f); 輸入 12345678765.43 則123k, 8765.43f例 scanf(“%2d%*3d%2d”,&a,&b); 輸入 1234567 則12a, 67b例 scanf(“%3c%2c”,&c1,&c2); 輸入 abcde 則ac1, d c2l修飾符功 能hm*用于d,o,x前,指定輸入為short型整數(shù)用于d,o,x前,指定輸入為long型整數(shù)用于e,f前,指定輸入為double型實(shí)數(shù)指定輸入數(shù)據(jù)寬度,遇空格或不可轉(zhuǎn)換字符則結(jié)束
12、抑制符,指定輸入項(xiàng)讀入后不賦給變量第35頁/共43頁例 scanf(“%d%o%x”,&a,&b,&c); printf(“a=%d,b=%d,c=%dn”,a,b,c); 輸入 123 123 123 輸出 a=123,b=83,c=291例 scanf(“%d:%d:%d”,&h,&m,&s); 輸入 12:30:45 則12 h, 30 m, 45 s例 scanf(“%d,%d”,&a,&b) 輸入 3,4 則3a, 4 b例 scanf(“a=%d,b=%d,c=%d”,&a,&b,&c); 輸入 a=12,b=24,c=36 第36頁/共43頁如 scanf(“%c%c%c”,&c
13、1,&c2,&c3); 若輸入abc 則ac1, c2, b c3輸入數(shù)據(jù)時(shí),遇以下情況認(rèn)為該數(shù)據(jù)結(jié)束:遇空格、TAB、或回車遇寬度結(jié)束遇非法輸入如 scanf(“%d%c%f”,&a,&b,&c); 若輸入1234a123o.26 則 1234 a, a b, 123 c輸入函數(shù)留下的“垃圾”:例 int x; char ch; scanf(“%d”,&x); ch=getchar(); printf(“x=%d,ch=%dn”,x,ch);執(zhí)行:123輸出:x=123,ch=10例 int x; char ch; scanf(“%d”,&x); scanf(“%c”,&ch); printf(“x=%d,ch=%dn”,x,ch);執(zhí)行:123輸出:x=123,ch=10解決方法:(1)用getchar()清除(2)用函數(shù)fflush(stdin)清除全部剩余內(nèi)容 (3) 用格式串中空格或“%*c”來“吃掉”例 int x; char ch; scanf(“%d”,&x); getchar(); scanf(“ %c”,&ch);或 scanf(“%*c%c”
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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ǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2022年湖南省永州市公開招聘警務(wù)輔助人員輔警筆試自考題1卷含答案
- 2024年江蘇省淮安市公開招聘警務(wù)輔助人員輔警筆試自考題1卷含答案
- 2024年內(nèi)蒙古自治區(qū)巴彥淖爾市公開招聘警務(wù)輔助人員輔警筆試自考題2卷含答案
- 2021年浙江省溫州市公開招聘警務(wù)輔助人員輔警筆試自考題1卷含答案
- 江蘇省無錫市(2024年-2025年小學(xué)六年級(jí)語文)統(tǒng)編版質(zhì)量測試((上下)學(xué)期)試卷及答案
- 2025年燃?xì)鈸交煸O(shè)備項(xiàng)目提案報(bào)告模式
- 2025年生活垃圾焚燒爐項(xiàng)目立項(xiàng)申請報(bào)告模板
- 2025年新能源發(fā)電項(xiàng)目提案報(bào)告模范
- 2025年漁業(yè)服務(wù)項(xiàng)目提案報(bào)告
- 方案公司3篇資料
- 日拱一卒行穩(wěn)致遠(yuǎn)
- 培訓(xùn)內(nèi)驅(qū)力的課件
- 管理后臺(tái)策劃方案
- 人防、物防、技防工作措施
- 市場部培訓(xùn)課程課件
- 八年級(jí)歷史上冊論述題匯總
- 資產(chǎn)評(píng)估學(xué)教程(第八版)習(xí)題及答案 喬志敏
- 提高留置針規(guī)范使用率
- 垃圾清運(yùn)服務(wù)投標(biāo)方案(技術(shù)方案)
- 《民俗旅游學(xué)》教學(xué)大綱(含課程思政元素)
- 人教版小學(xué)三年級(jí)上學(xué)期期末數(shù)學(xué)試卷(及答案)
評(píng)論
0/150
提交評(píng)論