浙江大學C語言1_引言_第1頁
浙江大學C語言1_引言_第2頁
浙江大學C語言1_引言_第3頁
浙江大學C語言1_引言_第4頁
浙江大學C語言1_引言_第5頁
已閱讀5頁,還剩27頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、C語言程序設計語言程序設計浙江大學C語言程序設計語言程序設計l教學要求掌握程序設計語言的基本知識常用算法初步的程序設計能力l學習方法自主學習重視上機實踐l如何盡快學會用C語言進行程序設計 了解程序設計語言(C語言)模仿、改寫、編寫通過不斷的編程實踐,逐步領會和掌握程序設計的基本思想和方法。l教材和參考書C語言程序設計,何欽銘、顏暉主編,浙江科技出版社,2004The C Programming Languagem, Second Edition, Brian W.Kernighan & Dennis M.Ritchie, 清華大學出版社,Prentice-Hall Internatio

2、nal, Inc. ,1997C程序設計(第二版),潭浩強等,清華大學出版社,1999Chap 1 引引 言言l一個C語言程序l程序與程序設計語言lC語言的發(fā)展歷史與特點l實現(xiàn)問題求解的過程本章要點本章要點l什么是程序?程序設計語言包含哪些功能?l程序設計語言在語法上包含哪些內容?l結構化程序設計有哪些基本的控制結構?lC語言有哪些特點?lC語言程序的基本框架如何?l形成一個可運行的C語言程序需要經(jīng)過哪些步驟?l如何用流程圖描述簡單的算法?例1-1求階乘問題。輸入一個正整數(shù)n,輸出n!。 #include /* 編譯預處理命令 */void main() /* 主函數(shù) */int n; /*

3、變量定義 */int factorial(int n); /* 函數(shù)聲明 */ scanf(%d, &n); /* 輸入一個整數(shù) */printf(%dn, factorial(n); /* 調用函數(shù)計算階乘 */ int factorial(int n) /* 定義計算 n! 的函數(shù) */int i, fact = 1; for(i = 1; i (大于)程序設計語言的語法l C語言的主要語法單位(1)表達式: 運算符與運算對象組合就形成了表達試。如,2 + 3 * 4(2)變量定義: 變量也有數(shù)據(jù)類型,所以在定義變量時要說明相應變量的類型。如: int i;(3)語句: 語句是程序

4、最基本的執(zhí)行單位,程序的功能就是通過對一系列語句的執(zhí)行來實現(xiàn)的。(4)函數(shù)定義與調用 程序設計語言的語法其中,(3)語句:表達式語句:表達式加分號“;” 分支語句:實現(xiàn)分支控制過程 if (a b) x = a;else x = b;循環(huán)語句:實現(xiàn)循環(huán)控制的過程 sum = 0; /* 初始化sum和i */i = 1; while (i = 100) /* while循環(huán)語句 */ sum = sum + i; i = i + 1;復合語句:用一對“ ”,將若干語句順序組合在一起就形成了一個程序段。程序設計語言的語法其中,(4)函數(shù)定義與調用 函數(shù)是完成特定任務的獨立模塊,函數(shù)的使用最主要涉

5、及到函數(shù)的定義與調用。輸入輸出:C語言沒有輸入輸出語句,用庫函數(shù)printf()、scanf()等實現(xiàn)。程序的編譯與編程環(huán)境 l 程序的編譯 編譯器 程序 計算機直接能理解的指令序列編譯器:對源程序進行詞法分析、語法與語義分析,生成可執(zhí)行的代碼。直接指出程序中的語法錯誤l 編程環(huán)境包括編輯程序(Edit)、編譯(Compile)、調試(Debug)等過程。掌握程序設計語言:根據(jù)語言的語法,用語言表達數(shù)據(jù)、實現(xiàn)程序的控制,并會使用編程環(huán)境。C 語言上機過程語言上機過程源程序 test.c test.obj 可執(zhí)行代碼 test.exe編譯連接 運行1.3 C語言的發(fā)展歷史與特點語言的發(fā)展歷史與特

6、點 l 歷史 1972年:貝爾實驗室的Dennis Ritchie在B語言的基礎上設計并實現(xiàn)了C語言。1978年:B.W.Kernighan和D.Ritchie(簡稱K & R)合著的The C Programming Language是各種C語言版本的基礎,稱之為舊標準C語言。1983年:美國國家標準化協(xié)會(ANSI)制定了新的C語言標準,稱ANSI C。C語言的特點語言的特點 1C語言是一種結構化語言2C語言語句簡潔、緊湊,使用方便、靈活32個關鍵字,9種控制語句,程序書寫形式自由。3C語言程序易于移植C語言將與硬件有關的因素從語言主體中分離出來,通過庫函數(shù)或其他實用程序實現(xiàn)它們。

7、 4C語言有強大的處理能力5生成的目標代碼質量高,運行效率高C語言的特點語言的特點 6數(shù)據(jù)類型檢查不嚴格,表達式出現(xiàn)二義性,不具備數(shù)據(jù)越界自動檢查功能,運算符的優(yōu)先級與結合性對初學者難于掌握。C 語言中大小寫字母代表不同含義1.4 實現(xiàn)問題求解的過程實現(xiàn)問題求解的過程 l 問題:求1100間所有偶數(shù)的和。1問題分析與算法設計 求在一定范圍內(1100)、滿足一定條件(偶數(shù))的若干整數(shù)的和,求累加和。 思路:設置一個變量(sum),其初值為0,然后在1100的數(shù)中(i)尋找偶數(shù),將它們一個一個累加到sum中。l一步累加:sum = sum + i; l重復累加,用循環(huán)語句實現(xiàn),在循環(huán)過程中:(1

8、) 判別 i 是不是偶數(shù):用分支控制語句來實現(xiàn)。(2) 對循環(huán)次數(shù)進行控制:通過 i 值的變化問題分析與算法設計問題分析與算法設計 思路 確定算法算法:一組明確的解決問題的步驟,它產生結果并可在有限的時間內終止。算法的描述:l自然語言l偽代碼l流程圖:算法的圖形表示法 sum = 0i = 1i = 100i 是偶數(shù)?sum=sum+ii=i+1輸出sum真真假假實現(xiàn)問題求解的過程實現(xiàn)問題求解的過程2編輯程序生成程序的源文件,C語言源文件的后綴為.c/.cpp#include void main( )int i, sum = 0; for(i = 1; i = 100; i+) if (i%2 = 0) sum = sum + i; printf(%d, sum); 實現(xiàn)問題求解的過程實現(xiàn)問題求解的過程3程序編譯連接編輯程序后,用該語言的編譯程序對其進行編譯,以生成二進制代碼表示的目標程序(.obj),與編程環(huán)境提供的庫函數(shù)進行連接(Link)形成可執(zhí)行的程序(.exe)。編譯程序指出語法錯誤 實現(xiàn)問題求解的過程實現(xiàn)問題求解的過程4運行與調試經(jīng)過編輯、編譯、連接,生成執(zhí)行文件后,就可以在編程環(huán)境或操作系統(tǒng)環(huán)境中運行該程序。如果程序運行所產生的結果不是你想要的結果,這是程序的語義錯誤(邏輯錯誤)。調試:在

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論