




已閱讀5頁,還剩30頁未讀, 繼續(xù)免費閱讀
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1,程序設計基礎,2,C程序的上機步驟,C語言發(fā)展歷史,C語言的特點,簡單的C程序介紹,第一章 C語言概述,3,計算機唯一能識別和處理的語言,由0、1序列構成的指令代碼,用10000000表示“+”,用助記符號描述的指令系統(tǒng) 用 ADD A, B 表示“ A+B ”,面向機器的語言,用 sum=a+b;來實現(xiàn)求和,面向過程、面向對象的語言,程序設計語言的發(fā)展,C語言出現(xiàn)的歷史背景,4,產生過程 時間:19721973 地點:美國貝爾實驗室 目的:UNIX操作系統(tǒng) 設計人: Ken.Thompson和D.M.Ritchie,C語言發(fā)展過程,5,C標準 標準C: K&R合著The C Programming Language ANSI C: 1983年 87 ANSI C: 1987年(通過ISO認證) C版本 Microsoft C 或稱 MS-C Turbo C 或稱 TC,C語言發(fā)展過程,6,C兼有高級語言和 低級語言的特點,語言簡潔、緊湊、靈活 運算符和數據類型豐富 程序設計結構化、模塊化 語法限制不太嚴格 允許直接訪問物理地址 生成目標代碼質量高 可移植性好,C語言特點,7,32個關鍵字:(由系統(tǒng)定義,不能重作其它定義) auto break case char const continue default do double else enum extern float for goto if int long register return short signed sizeof static struct switch typedef unsigned union void volatile while,ANSI C一共只有32個關鍵字,見365頁 附錄B,在C語言中關鍵字都是小寫的!,C語言簡潔、緊湊,使用方便、靈活,8,34種運算符: 算術運算符:+ - * / % + - 關系運算符: = != 邏輯運算符:! & | 位運算符 : | & 賦值運算符:= 及其擴展 條件運算符:?: 逗號運算符:, 指針運算符:* & 求字節(jié)數 :sizeof 強制類型轉換:(類型) 分量運算符:. - 下標運算符: 其它 :( ) -,C語言運算符豐富,9,C語言數據結構豐富,10,9種控制語句: if( )else for( ) while( ) dowhile( ) continue break switch goto return,C語言有 9 種控制語句,程序書寫形式自由,主要用小寫字母表示,壓縮了一切不必要的成分。,11,12,常用的高級語言,BASIC語言 Beginners All-purpose Symbolic Instruction Code FORTRAN語言 FORmula TRANslator Cobol語言 COmmon Business Oriented Language Pascal語言 C語言 Java,13,1.例1.1 第一個程序Hello,World!,/* example1.1 The first C Program*/ main() printf(“Hello,World! n”); ,Hello,World!,輸出:,printf語句中的“n”是換行符,簡單的C程序介紹,14,例1.2 兩數求和運算,main() int a,b,sum; /*定義變量*/ a=123; b=456; sum=a+b; printf(“sum is %d n”,sum); ,sum is 579,輸出:,main() int a,b,sum; /*定義變量*/ a=123; b=456; sum=a+b; printf(“sum is %d n”,sum); ,如何計算123456的積?,printf語句中的“ %d ”是表示“十進制整數類型”,15,例1.3 從鍵盤輸入兩個整數,輸出其中較大的數,main() int a,b,c; scanf(“%d,%d”, ,main() int a,b,c; scanf(“%d,%d”, ,scanf語句中“&a”的含義是“取地址”,16,例: /*This is the main /* of example1.1*/ */,C語言結構特點,函數與主函數 C程序是由函數構成的 一個程序中有且只能有一個主函數main() 程序執(zhí)行從main開始,在main中結束,其它函數通過嵌套調用得以執(zhí)行。 程序語句 C程序書寫格式自由,一行可有多個語句 用“;”作為語句終止符 注釋 /* */為注釋,不能嵌套 不產生編譯代碼,17,main( ) . . . . ,main( ) int i , sum; sum=0; for(i=1; i100;i+) sum+=i;/*求和*/ printf(“%dn”,sum); ,優(yōu)秀程序員的素質之一: 使用TAB縮進 對齊 有足夠的注釋 有合適的空行,習慣用小寫字母,大小寫敏感 不使用行號,無程序行概念 可使用空行和空格 常用鋸齒形書寫格式,格式特點,18,程序代碼的錄入, 生成源程序 *.c,語法分析查錯,翻譯 生成目標程序 *.obj,與其它目標程序或庫 鏈接裝配,生成可執(zhí)行 程序 *.exe,軟件用戶得到的僅僅是可執(zhí)行程序!,C程序執(zhí)行步驟,C程序的上機步驟,19,第二章 程序的靈魂算法,(Algorithm),20,Nikiklaus Wirth提出:,教材認為:,程序,=算法+數據結構+程序設計方法+語言工具和環(huán)境,靈魂,加工對象,VC或者Java,程序的要素,結構化程序設計,21,算法的概念,算法,為解決一個問題而采取的方法和步驟,在有限步驟內求解某一問題所使用的 一組定義明確的規(guī)則,22,【例2.1】求12345。 最原始方法: 步驟1:先求12,得到結果2。 步驟2:將步驟1得到的乘積2乘以3,得到結果6。 步驟3:將6再乘以4,得24。 步驟4:將24再乘以5,得120。 這樣的算法雖然正確,但太繁。 改進的算法: S1: 使t=1 S2: 使i=2 S3: 使ti, 乘積仍然放在在變量t中,可表示為tit S4: 使i的值+1,即i+1i S5: 如果i5, 返回重新執(zhí)行步驟S3以及其后的S4和S5;否則,算法結束。,23,24,【例2.3】判定2000 2500年中的每一年是否閏年,將結果輸出。 潤年的條件: 能被4整除,但不能被100整除的年份; 能被100整除,又能被400整除的年份; 設y為被檢測的年份,則算法可表示如下: S1: 2000y S2:若y不能被4整除,則輸出y“不是閏年”,然后轉到S6 S3:若y能被4整除,不能被100整除,則輸出y“是閏年”,然后轉到S6 S4:若y能被100整除,又能被400整除,輸出y“是閏年” 否則輸出y“不是閏年”,然后轉到S6 S5:輸出y“不是閏年”。 S6:y+1y S7:當y2500時, 返回S2繼續(xù)執(zhí)行,否則,結束。,25,26,27,算法的特征,確定性,有零個或多個輸入,有效性,有一個或多個輸出,有窮性,28,自然語言表示 流程圖表示 N-S流程圖表示 偽代碼表示 計算機語言表示,順序結構 選擇結構 循環(huán)結構,怎樣表示一個算法,29,流程圖要素,30,結構化程序設計 基本思想:任何程序都可以用三種基本結構表示,限制使用無條件轉移語句(goto) 結構化程序:由三種基本結構反復嵌套構成的程序 優(yōu)點:結構清晰,易讀,提高程序設計質量和效率,程序的三種基本結構,31,順序結構,32,二分支選擇結構,多分支選擇結構,選擇結構,33,當型循環(huán)結構,直到型循環(huán)結構,注:A,B,A1.An
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 亞馬遜雨傘訂購合同范本
- 農村住房修建合同范例
- 廠區(qū)工人雇傭合同范本
- 企業(yè)采購紅酒合同范本
- 吧臺主理人合同范本
- 品牌供貨合作合同范例
- 前臺課程顧問合同范本
- 壓手續(xù)不押車合同范本
- 北京二手房服務合同范本
- 危險建筑拆除合同范本
- 統(tǒng)編版語文四年級下冊第六單元教材解讀解讀與集體備課課件
- 2024年新蘇教版六年級下冊科學全冊知識點(精編版)
- 華為十六字方針解析以崗定級-以級定薪-人崗匹配、易崗易薪
- 食堂遇特殊天氣應急預案
- 礦山機電專業(yè)課程標準范本
- 食品風味化學(第二版) 課件 第8、9章 風味物質的提取與分析、食品中風味的釋放和穩(wěn)定化
- 自考《組織行為學》全
- 變電站建設工程造價影響因素分析及控制策略研究
- 【銅版畫“飛塵”技法實踐研究4900字(論文)】
- 人教版道德與法治五年級下冊全冊課件(完整版)
- 角磨機施工方案
評論
0/150
提交評論