版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、會計(jì)學(xué)1 語言第程序設(shè)計(jì)概述語言第程序設(shè)計(jì)概述 第2頁 第一章第一章 C C語言程序設(shè)計(jì)概述語言程序設(shè)計(jì)概述 C語言 既可作為系統(tǒng)軟件的程序設(shè)計(jì)語 言,又可作為應(yīng)用軟件的程序設(shè)計(jì)語言。 尤其是當(dāng)今計(jì)算機(jī)應(yīng)用極為廣泛,軟件的設(shè)計(jì) 、編寫質(zhì)量要求高,經(jīng)常與硬件部分打交道,如 :界面設(shè)計(jì)等,所以用C語言編寫是最理想的。因 而C語言也是當(dāng)前計(jì)算機(jī)語言中用得最廣泛的語言 之一。 第1頁/共53頁 第3頁 1.1 1.1 程序與程序設(shè)計(jì)語言程序與程序設(shè)計(jì)語言 一、程序一、程序是用計(jì)算機(jī)語言描述的某一問題的解是用計(jì)算機(jī)語言描述的某一問題的解 決步驟,是符合一定語法規(guī)則的符號序決步驟,是符合一定語法規(guī)則的符號
2、序 列列 。 二、程序設(shè)計(jì)語言的幾個(gè)階段包括:二、程序設(shè)計(jì)語言的幾個(gè)階段包括: 1、機(jī)器語言 2、匯編語言 3、算法語言 4、面向任務(wù)的程序設(shè)計(jì)語言 5、面向?qū)ο蟮某绦蛟O(shè)計(jì)語言 第2頁/共53頁 第4頁 二、語言的二、語言的發(fā)展過程發(fā)展過程 1960年出現(xiàn)了Algol60語言,但該語言主要面 向問題,與硬件較遠(yuǎn),故英國劍橋大學(xué)推出 了CPL(Combined Programming Language) 1967年,Matin Richards對CPL進(jìn)行改進(jìn)、簡 化、推出了BCPL (Basic Combined Programming Language) 1970年,美國貝爾實(shí)驗(yàn)室Ken T
3、homson 以 BCPL為基礎(chǔ),再次簡化推出了B語言,并 寫了第一個(gè)UNIX系統(tǒng)。 第3頁/共53頁 第5頁 美國貝爾實(shí)驗(yàn)室D.M. Ritchie 在B語言基礎(chǔ)上設(shè) 計(jì)出了C語言,并用其將UNIX系統(tǒng)全部改寫并 實(shí)現(xiàn)。 經(jīng)進(jìn)一步改進(jìn),至1977年出現(xiàn)了與具體機(jī)器無 關(guān)的C編譯文本,從而使C語言廣泛應(yīng)用,各種 機(jī)器皆可使用。 1978年,美國Brain W.Kernighan與Dennis. M. Ritchie 聯(lián)合出版一書The C Programming Language成為 ANSI C之基礎(chǔ)。 第4頁/共53頁 第6頁 1983年,美國標(biāo) 準(zhǔn)化協(xié)會(ANSI) 制 定了ANSI C
4、。 ANSI C 為基礎(chǔ): 不同機(jī)器有不 同版本,尤其是函 數(shù)均應(yīng)參考相應(yīng)的 機(jī)器。 第5頁/共53頁 第7頁 1.2 C語言的發(fā)展及特點(diǎn)語言的發(fā)展及特點(diǎn) 只有通過學(xué)習(xí),方可理解C之特點(diǎn),先簡敘之: 1. 簡潔、緊湊、方便、靈活簡潔、緊湊、方便、靈活 32個(gè)關(guān)鍵字,9種控制語句, 主要用小寫字母,壓縮一切不必要成分 2. 運(yùn)算符豐富運(yùn)算符豐富 除了最基本的、%等運(yùn)算外 ,還將括號、賦值、類型強(qiáng)制轉(zhuǎn)換等均作為運(yùn)算 符,共有34種運(yùn)算符。 第6頁/共53頁 第8頁 3. 數(shù)據(jù)結(jié)構(gòu)豐富數(shù)據(jù)結(jié)構(gòu)豐富 除基本類型外, 有指針, 結(jié)構(gòu)體、共同體等類型。 4. 具有結(jié)構(gòu)化的控制語句具有結(jié)構(gòu)化的控制語句 模塊
5、完整,控制中的語句可完整化 。 5. 語法限制不太嚴(yán)格,程序設(shè)計(jì)自由度大語法限制不太嚴(yán)格,程序設(shè)計(jì)自由度大 如:數(shù)據(jù)類型可相互通用:整型、字符型通用 。 第7頁/共53頁 第9頁 6. 可與機(jī)器硬件打交道,直接訪問內(nèi)存地址,具可與機(jī)器硬件打交道,直接訪問內(nèi)存地址,具 有有“ 高高”、“ 低低”級語言之功能。級語言之功能。 7. 生成目標(biāo)代碼質(zhì)量高,執(zhí)行效率高。生成目標(biāo)代碼質(zhì)量高,執(zhí)行效率高。 8. 可移植性優(yōu)于匯編語言可移植性優(yōu)于匯編語言 。 第8頁/共53頁 第10頁 買電視機(jī)的步驟: 選好貨物 開票付款拿發(fā)票取貨 回家 考大學(xué)上大學(xué)的步驟 填報(bào)名單 交報(bào)名費(fèi) 拿準(zhǔn)考證 參加考試 得到錄取通
6、知書報(bào)到注冊 第9頁/共53頁 第11頁 算法:是指在有限步內(nèi)解決一個(gè)具體問題而規(guī)定 的意義明確的解題步驟的有限集合。 概括地說,算法是指解題方案的準(zhǔn)確而 完整的描述。從程序來說,也可以說算法是 一個(gè)有限條指令的集合,這些指令確定了解 決某一特定類型問題的運(yùn)算序列。 第10頁/共53頁 第12頁 第11頁/共53頁 第13頁 得到的p就是5!的值。 第12頁/共53頁 第14頁 第13頁/共53頁 第15頁 第14頁/共53頁 第16頁 第15頁/共53頁 第17頁 第16頁/共53頁 第18頁 第17頁/共53頁 第19頁 第18頁/共53頁 第20頁 第19頁/共53頁 第21頁 小練習(xí)小
7、練習(xí) (200)打印出100筆收入的總和。 解(1)將第一筆收入輸入給計(jì)算機(jī); (2)將第二筆收入輸入給計(jì)算機(jī); (3)將以上兩筆收入相加; (4)將第三筆收入輸入給計(jì)算機(jī); (5)將它和前二筆收入的和相加; (198) 將第100筆收入輸入給計(jì)算機(jī); (199)將它和前99筆收入之和相加; 第20頁/共53頁 第22頁 算法說算法說 明明 第21頁/共53頁 第23頁 算法總算法總 結(jié)結(jié) 第22頁/共53頁 第24頁 求下列級數(shù)的求下列級數(shù)的 值值 可以寫出下面的算法可以寫出下面的算法 第23頁/共53頁 第25頁 算法必須在有限時(shí)間內(nèi)完成,必須執(zhí)行有限算法必須在有限時(shí)間內(nèi)完成,必須執(zhí)行有限
8、 個(gè)步驟終止。個(gè)步驟終止。 算法的每個(gè)步驟必須明確定義,不允許算法的每個(gè)步驟必須明確定義,不允許 模棱兩可的理解,也不允許有多義性。模棱兩可的理解,也不允許有多義性。 所謂輸入是指在需要從外界所謂輸入是指在需要從外界 取得必要的信息。一個(gè)算法可以有多個(gè)輸入,也可沒取得必要的信息。一個(gè)算法可以有多個(gè)輸入,也可沒 有輸入。有輸入。 算法的目的就是為了求解算法的目的就是為了求解 ,“解解”就是輸出就是輸出 算法的每個(gè)步驟都能實(shí)現(xiàn),算法執(zhí)行的結(jié)算法的每個(gè)步驟都能實(shí)現(xiàn),算法執(zhí)行的結(jié) 果能達(dá)到預(yù)期目的。果能達(dá)到預(yù)期目的。 第24頁/共53頁 第26頁 為了表示一個(gè)算法,可以使用不同的方法。 常用的算法有:
9、 自然語言、 傳統(tǒng)流程圖、結(jié)構(gòu)化流程圖、 偽代碼、PAD圖 第25頁/共53頁 第27頁 自然語言就是人們常用的語言,可以是漢 語、英語或其他語言。 用自然語言表示通俗易懂; 但文字冗長,容易出現(xiàn)“歧義”性; 而且,用自然語言描述包含分支和循環(huán)的 算法,不很方便。 一般不使用自然語言描述算法 第26頁/共53頁 第28頁 自然語言描述舉例自然語言描述舉例 第27頁/共53頁 第29頁 算法描述語算法描述語 言言 第28頁/共53頁 第30頁 及功能的重新設(shè)計(jì)或控制流程 的變化,而只需考慮程序設(shè)計(jì) 語言所規(guī)定的語法要求以及一 細(xì)節(jié)問題。 流程的描流程的描 述述 第29頁/共53頁 第31頁 流程
10、圖:用一些約定的幾何圖形來描述算法。流程圖:用一些約定的幾何圖形來描述算法。 傳統(tǒng)流程圖(的符號及意義)傳統(tǒng)流程圖(的符號及意義) 第30頁/共53頁 第32頁 數(shù)據(jù)數(shù)據(jù) 平行四邊形表示數(shù)據(jù),其中可注明數(shù)據(jù)名稱、來源、用途或其他文字說明。平行四邊形表示數(shù)據(jù),其中可注明數(shù)據(jù)名稱、來源、用途或其他文字說明。 處理處理 矩形表示各種處理功能。矩形內(nèi)可注明處理名稱或其簡要功能。矩形表示各種處理功能。矩形內(nèi)可注明處理名稱或其簡要功能。 特定處理特定處理 帶有雙豎邊線的矩形。矩形內(nèi)可注明特定處理名稱或簡要功能,表示已命名的處理。該處理為在另外地方已得到詳細(xì)說明的一個(gè)操作或一組操作。帶有雙豎邊線的矩形。矩形
11、內(nèi)可注明特定處理名稱或簡要功能,表示已命名的處理。該處理為在另外地方已得到詳細(xì)說明的一個(gè)操作或一組操作。 判斷判斷 菱形表示判斷。菱形內(nèi)可注明判斷的條件。它只有一個(gè)入口,但可以有若干個(gè)可供選擇的出口。菱形表示判斷。菱形內(nèi)可注明判斷的條件。它只有一個(gè)入口,但可以有若干個(gè)可供選擇的出口。 循環(huán)界限循環(huán)界限 循環(huán)界限包含循環(huán)的上界和下界,中間是要循環(huán)執(zhí)行的處理內(nèi)容,稱為循環(huán)體。循環(huán)界限由去上角的矩形循環(huán)界限包含循環(huán)的上界和下界,中間是要循環(huán)執(zhí)行的處理內(nèi)容,稱為循環(huán)體。循環(huán)界限由去上角的矩形( (表示上界限表示上界限) )和去下角的矩形和去下角的矩形( (表示下界限表示下界限) )構(gòu)成。構(gòu)成。 端點(diǎn)端
12、點(diǎn) 扁圓形表示轉(zhuǎn)向外部環(huán)境或外部環(huán)境轉(zhuǎn)入的端點(diǎn)符。例如,程序流程的起始點(diǎn)。扁圓形表示轉(zhuǎn)向外部環(huán)境或外部環(huán)境轉(zhuǎn)入的端點(diǎn)符。例如,程序流程的起始點(diǎn)。 注解注解 注解是程序的編寫者向閱讀者提供的說明。它用虛線連接到被注解的符號或符號組上。注解是程序的編寫者向閱讀者提供的說明。它用虛線連接到被注解的符號或符號組上。 第31頁/共53頁 第33頁 例:例: 求求5 5! 開始開始 t=1 i=2 t=t*i i=i+1 i5 結(jié)束 N Y 第32頁/共53頁 第34頁 第33頁/共53頁 第35頁 執(zhí)行執(zhí)行a塊塊 執(zhí)行執(zhí)行b塊塊 a塊塊 b塊塊 A B 例如,令例如,令a、b的值的值 分別為分別為5、1
13、0; a = 5; b = 10; 第34頁/共53頁 第36頁 滿足條件否滿足條件否 滿足滿足 不滿足不滿足 執(zhí)行執(zhí)行a塊塊執(zhí)行執(zhí)行b塊塊 條件成立?條件成立? 執(zhí)行執(zhí)行a塊塊執(zhí)行執(zhí)行b塊塊 b max? Max = a; 成立成立不成立不成立max = b; 第35頁/共53頁 第37頁 直到條件滿足為止直到條件滿足為止 執(zhí)行循環(huán)中的指令執(zhí)行循環(huán)中的指令 當(dāng)條件滿足時(shí)當(dāng)條件滿足時(shí) 執(zhí)行循環(huán)中指令執(zhí)行循環(huán)中指令 i5 打印打印t 第40頁/共53頁 第42頁 第41頁/共53頁 第43頁 例題例題 例例2.20 求求5!,用!,用C語言表示語言表示 Main ( ) int I,t; t=1
14、; I=2; while(I=5) t=t*I; I=I+1; printf(“%d”,t); 第42頁/共53頁 第44頁 例例 求級數(shù)的值求級數(shù)的值 Main( ) int sign=1; float deno=2.0,sun=1.0,term; while (deno100) sign=-sign; term=sign/deno; sum=sum+term; deno=deno+1; printf(“%f”,sum); 第43頁/共53頁 第45頁 調(diào)試與運(yùn)行調(diào)試與運(yùn)行 第44頁/共53頁 第46頁 為了更好、更快地掌握C程序,我們先看幾個(gè)C 語言程序: 例1. #include mai
15、n() /* 一個(gè)簡單的程序 */ int num; num = 1; printf(“我是一臺簡單的”); printf(“計(jì)算機(jī)。n”); printf(“我喜歡的數(shù)字是 %d, 因?yàn)樗堑谝坏?。n”,num); 第45頁/共53頁 第47頁 第46頁/共53頁 第48頁 例2.已知三個(gè)整型數(shù)8、12、6,按公式sa+bc計(jì)算,并顯示結(jié)果。 #include /*標(biāo)準(zhǔn)輸入輸出頭文件*/ main() int a,b,c,s; /*定義四個(gè)整型變量*/ a=8;b=12;c6; /*變量賦初值*/ sa+b*c; /*算術(shù)運(yùn)算并賦值*/ printf(s=dn,s); /*輸出結(jié)果*/ 第4
16、7頁/共53頁 第49頁 例3.main( ) /* 主函數(shù)*/ int a, b, c; /*定義變量*/ scanf(%d, %d, /*輸入變量a和b的值*/ c=max(a, b);/*調(diào)用max函數(shù),將得到的值賦給c*/ printf(max=%d,c); /*輸出c的值*/ 第48頁/共53頁 第50頁 int max (x, y) int x, y; /*對形參x、y作類型定義*/ int z; /*max函用到的變量z,也要加以定義 */ z=y; if (xy) z=x; return (z); /*將z的值返回,通過max帶回調(diào)用處 */ 第49頁/共53頁 第51頁 通過分析,初步看到通過分析,初步看到: 1. C程序全部由一個(gè)一個(gè)的函數(shù)構(gòu)成。至少有一 個(gè)主函數(shù)main ( ), 其它函數(shù)可被主函數(shù)調(diào)用或相 互調(diào)用。其它函數(shù)可為C 函數(shù)庫中函數(shù),也可為自 己編的函數(shù)。 上述特點(diǎn)稱為程序的模塊
溫馨提示
- 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024大數(shù)據(jù)分析與商業(yè)決策支持合同
- 2024不銹鋼來料加工合同
- 2024寺廟仿古建筑施工合同技術(shù)支持合同
- 2024年建筑外墻清洗維護(hù)合同
- 2024年度二手房出售交接事項(xiàng)及保修條款合同
- 2024年度設(shè)備租賃合同設(shè)備類型與租賃期限
- 2024光電子技術(shù)研發(fā)與合作合同
- 2024年度N95口罩生產(chǎn)線擴(kuò)建貸款合同
- 2024年建筑工程經(jīng)紀(jì)代理協(xié)議
- 2024年度企業(yè)品牌形象設(shè)計(jì)及VI手冊整編服務(wù)合同
- 《嬰幼兒行為觀察、記錄與評價(jià)》習(xí)題庫 (項(xiàng)目三) 0 ~ 3 歲嬰幼兒語言發(fā)展觀察、記錄與評價(jià)
- 英語漫談膠東海洋文化知到章節(jié)答案智慧樹2023年威海海洋職業(yè)學(xué)院
- 環(huán)保產(chǎn)品管理規(guī)范
- 幼兒園:我中獎了(實(shí)驗(yàn)版)
- 趙學(xué)慧-老年社會工作理論與實(shí)務(wù)-教案
- 《世界主要海峽》
- 住院醫(yī)師規(guī)范化培訓(xùn)師資培訓(xùn)
- 中央企業(yè)商業(yè)秘密安全保護(hù)技術(shù)指引2015版
- 螺旋果蔬榨汁機(jī)的設(shè)計(jì)
- 《脊柱整脊方法》
- 會計(jì)與財(cái)務(wù)管理專業(yè)英語智慧樹知到答案章節(jié)測試2023年哈爾濱商業(yè)大學(xué)
評論
0/150
提交評論