第 一 講 引言_第1頁
第 一 講 引言_第2頁
第 一 講 引言_第3頁
第 一 講 引言_第4頁
第 一 講 引言_第5頁
已閱讀5頁,還剩30頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、授課教師:信息工程學院授課教師:信息工程學院 鄢鄢 靖靖 豐豐聯(lián)系方式:聯(lián)系方式高級語言程序設計高級語言程序設計高級語言程序設計高級語言程序設計 教學要求教學要求 1.掌握程序設計語言的基本知識。 2.掌握常用算法的基本應用。 3.掌握程序設計能力、具備調(diào)試程序能力。 學習方法學習方法 1.自主學習 2.重視上機實踐高級語言程序設計高級語言程序設計如何盡快學會用如何盡快學會用C語言進行程序設計語言進行程序設計了解程序設計語言了解程序設計語言(C語言語言)模仿、改寫、編寫模仿、改寫、編寫通過不斷的編程實踐,逐步領(lǐng)會和掌握程序設通過不斷的編程實踐,逐步領(lǐng)會和掌握程序設計的

2、基本思想和方法。計的基本思想和方法。高級語言程序設計高級語言程序設計教材和參考書教材和參考書所選教材:所選教材:uC語言程序設計,何欽銘、顏暉主編,高等教育出版社,語言程序設計,何欽銘、顏暉主編,高等教育出版社,2008參考教材:參考教材:uC語言編程(第語言編程(第3版),版),美美Stephen, G.Kochan,張,張小潘譯,電子工業(yè)出版社,小潘譯,電子工業(yè)出版社,2006uC語言教程(第語言教程(第4版),版),美美Al Kelley, Ira Pohl,徐波,徐波譯,機械工業(yè)出版社,譯,機械工業(yè)出版社,2007u標準標準C語言基礎教程(第語言基礎教程(第4版),版),美美Gary

3、J. Bronson,單先余等譯,電子工業(yè)出版社,單先余等譯,電子工業(yè)出版社,20061.C程序設計語言,程序設計語言,美美Brian W. Kernighan, Dennis M. Ritchie,徐寶文等譯,機械工業(yè)出版社,徐寶文等譯,機械工業(yè)出版社,2006高級語言程序設計高級語言程序設計 一個一個C語言程序語言程序 程序與程序設計語言程序與程序設計語言 C語言的發(fā)展歷史與特點語言的發(fā)展歷史與特點 實現(xiàn)問題求解的過程實現(xiàn)問題求解的過程1.11.21.31.4第一章第一章 引言引言高級語言程序設計高級語言程序設計本講要點簡介本講要點簡介什么是程序?程序設計語言包含哪些功能?什么是程序?程序

4、設計語言包含哪些功能?程序設計語言在語法上包含哪些內(nèi)容?程序設計語言在語法上包含哪些內(nèi)容?結(jié)構(gòu)化程序設計有哪些基本的控制結(jié)構(gòu)?結(jié)構(gòu)化程序設計有哪些基本的控制結(jié)構(gòu)?C語言有哪些特點?語言有哪些特點?C語言程序的基本框架如何?語言程序的基本框架如何?形成一個可運行的形成一個可運行的C語言程序需要經(jīng)過哪些步驟?語言程序需要經(jīng)過哪些步驟?如何用流程圖描述簡單的算法?如何用流程圖描述簡單的算法?高級語言程序設計高級語言程序設計1.1 一個一個C語言程序語言程序例例1-1求階乘問題。輸入一個正整數(shù)求階乘問題。輸入一個正整數(shù)n,輸出輸出n!。 #include /* 編譯預處理命令 */int main(v

5、oid) /* 主函數(shù) */int n; /* 變量定義 */int factorial(int n); /* 函數(shù)聲明 */ scanf(%d, &n); /* 輸入一個整數(shù) */printf(“%dn”, factorial(n); /* 調(diào)用函數(shù)計算階乘 */ return 0; int factorial(int n) /* 定義計算 n! 的函數(shù) */int i, fact = 1; for(i = 1; i (大于)。高級語言程序設計高級語言程序設計程序設計語言的語法程序設計語言的語法 C語言的主要語法單位語言的主要語法單位(1)表達式: 運算符與運算對象組合就形成了表達試

6、。如,2 + 3 * 4。(2)變量定義: 變量也有數(shù)據(jù)類型,所以在定義變量時要說明相應變量的類型。如: int i;(3)語句: 語句是程序最基本的執(zhí)行單位,程序的功能就是通過對一系列語句的執(zhí)行來實現(xiàn)。(4)函數(shù)定義與調(diào)用 。高級語言程序設計高級語言程序設計程序設計語言的語法程序設計語言的語法語句:語句:表達式語句:表達式加分號“;” 分支語句:實現(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)語句循環(huán)語句 */ sum =

7、 sum + i; i = i + 1;復合語句:用一對“ ”,將若干語句順序組合在一起就形成了一個程序段。高級語言程序設計高級語言程序設計程序設計語言的語法程序設計語言的語法函數(shù)定義與調(diào)用函數(shù)定義與調(diào)用 函數(shù)是完成特定任務的獨立模塊,函數(shù)的使用最主要涉及到函數(shù)的定義與調(diào)用。輸入輸出:輸入輸出: C語言沒有輸入輸出語句,用庫函數(shù)printf、scanf等實現(xiàn)。高級語言程序設計高級語言程序設計程序的編譯與編程環(huán)境程序的編譯與編程環(huán)境 程序的編譯程序的編譯程序通過編譯,變成計算機直接能理解的指令序列編譯器:編譯器:對源程序進行詞法分析、語法與語義分析,生成可執(zhí)行的代碼。直接指出程序中的語法錯誤。編

8、程環(huán)境編程環(huán)境包括編輯程序(Edit)、編譯(Compile)、調(diào)試Debug 等過程。掌握程序設計語言:根據(jù)語言語法,用語言表達數(shù)據(jù)、實現(xiàn)程序控制,會使用編程環(huán)境。高級語言程序設計高級語言程序設計C 語言上機過程語言上機過程編譯編譯編輯編輯鏈接鏈接執(zhí)行執(zhí)行源程序源程序.c程序程序.OBJ程序程序.exe高級語言程序設計高級語言程序設計1.3 C語言的發(fā)展歷史與特點語言的發(fā)展歷史與特點 歷史歷史1.1972年:貝爾實驗室的Dennis Ritchie在B語言的基礎上設計并實現(xiàn)了C語言。2.1978年:B.W.Kernighan和D.Ritchie(簡稱K & R)合著的The C Pr

9、ogramming Language是各種C語言版本的基礎,稱之為舊標準C語言。3.1983年:美國國家標準化協(xié)會(ANSI)制定了新的C語言標準,稱ANSI C。高級語言程序設計高級語言程序設計C語言的特點語言的特點 1C語言是一種結(jié)構(gòu)化語言。2C語言語句簡潔、緊湊,使用方便、靈活。32個關(guān)鍵字,9種控制語句,程序書寫形式自由。3C語言程序易于移植。C語言將與硬件有關(guān)的因素從語言主體中分離出來,通過庫函數(shù)或其他實用程序?qū)崿F(xiàn)它們。 4C語言有強大的處理能力。5生成的目標代碼質(zhì)量高,運行效率高。 6數(shù)據(jù)類型檢查不嚴格,表達式出現(xiàn)二義性,不具備數(shù)據(jù)越界自動檢查功能,運算符的優(yōu)先級與結(jié)合性對初學者難

10、于掌握。 C 語言中大小寫字母代表不同含義。語言中大小寫字母代表不同含義。高級語言程序設計高級語言程序設計1.4 實現(xiàn)問題求解的過程實現(xiàn)問題求解的過程 問題:求問題:求1100間所有偶數(shù)的和。間所有偶數(shù)的和。 問題分析與算法設計問題分析與算法設計 :求在一定范圍內(nèi)(1100)、滿足一定條件(偶數(shù))的若干整數(shù)的和,求累加和。 思路:思路:設置一個變量(sum),其初值為0,然后在1100的數(shù)中(i)尋找偶數(shù),將它們一個一個累加到sum中。一步累加:sum = sum + i; 重復累加,用循環(huán)語句實現(xiàn),在循環(huán)過程中:(1)判別 i 是不是偶數(shù):用分支控制語句來實現(xiàn)。(2) 對循環(huán)次數(shù)進行控制:通

11、過 i 值的變化。高級語言程序設計高級語言程序設計問題分析與算法設計問題分析與算法設計 一組明確的解決問題的步驟,它產(chǎn)生結(jié)果并可在有限的時間內(nèi)終止。 自然語言 偽代碼 流程圖:算法的圖形表示法sum = 0i = 1i = 100i 是偶數(shù)是偶數(shù)sum=sum+ii=i+1輸出輸出sum真真真真假假假假1算法思路框架算法思路框架高級語言程序設計高級語言程序設計實現(xiàn)問題求解的過程實現(xiàn)問題求解的過程2編輯程序編輯程序生成程序的源文件,C語言源文件的后綴為 .c / .cpp#include int main(void)int i, sum = 0; for(i = 1; i = 100; i+)

12、if (i%2 = 0) sum = sum + i; printf(%d, sum); return 0; 高級語言程序設計高級語言程序設計實現(xiàn)問題求解的過程實現(xiàn)問題求解的過程3程序編譯連接程序編譯連接編輯程序后,用該語言的編譯程序?qū)ζ溥M行編譯,以生成二進制代碼表示的目標程序(.obj),與編程環(huán)境提供的庫函數(shù)進行連接(Link)形成可執(zhí)行的程序(.exe)。高級語言程序設計高級語言程序設計實現(xiàn)問題求解的過程實現(xiàn)問題求解的過程4運行與調(diào)試運行與調(diào)試經(jīng)過編輯、編譯、連接,生成執(zhí)行文件后,就可以在編程環(huán)境或操作系統(tǒng)環(huán)境中運行該程序。如果程序運行所產(chǎn)生的結(jié)果不是你想要的結(jié)果,這是程序的語義錯誤(邏輯錯誤)。調(diào)試:調(diào)試:在程序中查找錯誤并修改錯誤的過程。調(diào)試的方法:調(diào)試的方法:設置斷點單步跟蹤高級語言程序設計高級語言程序設計開始結(jié)果語法錯誤源程序.c / .cpp目標程序.obj可執(zhí)行程序.exe編輯

溫馨提示

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

最新文檔

評論

0/150

提交評論