




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
C語言程序設計及應用教學內容:
C語言程序設計的基本語法、基本句法、基本結構和基本程序設計方法。教學目的:
學習結束學生應達到三會——會讀程序、會編程序、會調程序。課程要求課前請做好預習保持課堂安靜,頭腦清醒,思維活躍認真、獨立、按時完成并提交作業重視上機實踐,有效利用寶貴的上機時間第1章程序設計基礎1.1程序設計基本概念1.2一般程序設計方法1.3結構化程序設計1.4程序設計風格1.5C語言簡介1.1程序設計基本概念1.1.1程序1.1.2算法1.1.3數據結構1.1.4程序設計語言1.1.1程序一個程序是完成某一特定任務的一組指令序列,或者說,是為實現某一算法的指令序列。1.1.2算法
為解決一個問題而采取的方法和步驟,稱為“算法”(algorithm)。一個算法應具有以下特點:(1)有窮性。(2)確定性。(3)有零個或多個輸入。(4)有一個或多個輸出。(5)有效性。1.1.2算法
【例1-1】求n!(即求n的階乘)。設SUM代表累乘之積,A代表乘數。(1)置SUM=1,A=1。(2)使SUM*A,得到的結果放在SUM中。(3)使A增加1。(4)如果A≤n,跳到步驟(2);如果A>n,則算法終止,此時SUM中的值就是所求的結果。1.1.2算法
1.自然語言前面的【例1-1】就是用自然語言描述的。2.傳統流程圖
【例1-1】的傳統流程圖表示如下一頁的圖示。用傳統的流程圖表示算法,邏輯清楚,形象化,容易理解。
1.1.2算法
1.1.2算法
3.偽代碼偽代碼是用一種介于自然語言和計算機語言之間的文字和符號來描述算法。前面的【例1-1】例子可以用偽代碼如下表示:前面的例子可以用偽代碼如下表示: 輸入n
使A和SUM的值為1 DOSUM=SUM*A A=A+1 UNTILA>n
輸出SUM的值1.1.2算法
4.N-S結構流程圖
1966年Bobra和Jacopini提出了三種基本結構:(1)順序結構,如左左圖所示。(2)選擇結構,如右下圖所示。1.1.2算法
(3)循環結構,如下圖所示。分當型循環結構和直到型循環結構兩種。1.1.2算法
這三種結構有以下幾個特點:(1)只有一個入口。(2)只有一個出口。(3)結構內的每個部分都有可能被執行到。(4)結構內沒有死循環。已經證明,由這三種基本結構組成的算法結構可以解決任何復雜的問題。由基本結構所構成的算法叫做結構化算法。1.1.2算法
1973年美國學者I.Nassi和B.Shneiderman提出了一種新的流程圖形式。(1)順序結構,如左下圖所示。(2)選擇結構,如右下圖所示,1.1.2算法(3)循環結構。當型循環如左下圖所示。直到型循環如右下圖所示。1.1.3數據結構
數據結構是指數據對象及其相互關系和構造方法。一個數據結構S可以形式地用一個二元組表示:S=(D,R)其中,D是數據結構中的數據(又稱為“結點”的非空有限集合),R是定義在D上的關系的非空有限集合。舉例說明:【例1-2】在計算機科學中,復數可以如下定義:
COMPLEX=(C,R)其中C是含兩個實數的集合{c1,c2};R={P},而P是定義在集合C上的一種關系{<c1,c2>},其中c1是復數的實部,c2是復數的虛部。1.1.4程序設計語言
程序語言可以分為低級語言和高級語言兩大類。低級語言又叫面向機器的語言,它是特定的計算機系統所固有的語言。它又可分為機器語言和符號語言(匯編語言)兩類。機器語言就是計算機能夠直接識別和執行的指令集合。符號語言是從機器語言發展演變而來的,它用一些“助記符號”來代替那些冗長的二進制指令。
1.1.4程序設計語言
高級語言的特點是:用一種接近自然語言和數學語言的專用語言來表示算法,而且與具體的計算機無關,即用它所寫的程序可以在任一種計算機上運行。常見的高級語言如下:FORTRAN語言。BASIC語言。COBOL語言。PASCAL語言。ADA語言。C語言。1.2一般程序設計方法1.2.1建立數學模型1.2.2選定算法1.2.3編程1.2.4測試及調試1.2.1建立數學模型建立數學模型是程序設計中最復雜、最困難的一步,好的數學模型本身就是一個定律,它要通過大量觀察、分析、推理、驗證等工作才可以得到。在進行程序設計時往往都是利用已有的基本數學模型去構造出問題的模型。各種數學,如微積分、運籌學、圖論、高等數學等都是不同的基本數學模型。1.2.2選定算法算法是解決問題的方法與步驟。設計算法也是一件非常困難的工作,經常采用的算法設計技術主要有迭代法、窮舉搜索法、遞推法、貪婪法、回溯法、分治法、動態規劃法等等。通常設計一個好的算法應考慮達到以下要求:(1)正確性。(2)可讀性。(3)健壯性。(4)效率與存儲空間需求。1.2.3編程編程就是將選定的算法從非計算機語言的描述形式轉換為計算機語言的語句形式描述出來。為一個特定的項目選擇語言時通常可以考慮以下因素:(1)應用領域。(2)算法和計算的復雜性。(3)軟件運行的環境(包括可使用的編譯程序)。(4)用戶需求(特別是性能需求)。(5)數據結構的復雜性。(6)開發人員的水平。1.2.3編程在程序設計中要特別注意以下三點: (1)語法。 (2)語義。 (3)語用。1.2.4測試及調試編程完成以后,首先應該靜態審查程序,然后將高級語言源程序輸入計算機,經過編譯、連接,然后運行。如果在某一步發現錯誤,就必須找到錯誤并改正,然后再從重新編譯運行,直到得到正確結果為止。程序測試的目的是盡可能多地發現程序中的錯誤和缺陷。1.3結構化程序設計前面已經提到過,只用三種基本的控制結構,通過組合和嵌套就能實現任何單入口單出口的程序——這就是結構化程序設計基本原理。這三種結構是順序結構、選擇結構和循環結構。要設計出結構的程序,應當采用以下的方法:(1)自頂向下。(2)逐步細化。(3)模塊化。1.4程序設計風格(1)選擇合適的標識符名字。(2)添加良好的注解。(3)注意程序的視覺效果。(4)數據說明。(5)語句構造。(6)輸入和輸出。1.5C語言簡介1.5.1C語言的特點1.5.2C程序的結構1.5.2C程序的結構1.5.3C語句概述1.5.4C程序的上機過程1.5.1C語言的特點一九七八年由美國電話電報公司(AT&T)貝爾實驗室正式發表了C語言。C語言是一種成功的系統描述語言,它主要有以下一些特點:(1)語言表達能力強。C語言是面向數據結構的程序設計語言,通用性好。(2)語言簡潔、緊湊,使用靈活,易于學習和使用。(3)數據類型豐富,具有很強的結構化控制語句。(4)語言生成的代碼質量高。(5)語法限制不嚴格,程序設計自由度大。(6)可移植性好。1.5.2C程序的結構可從下面的例子中了解到組成一個C源程序的基本部分和書寫格式。【例1-3】輸出“hello,world!”main(){
printf("hello,world!\n");}【例1-3】程序運行結果如下圖所示。1.5.2C程序的結構【例1-4】求正弦值。#include<math.h>/*include稱為文件包含命令, 擴展名為.h的文件稱為頭文件*/#include<stdio.h>main(){doublex,s;/*定義兩個實數變量,以 被后面程序使用*/
printf("inputnumber:\n");/*顯示提示信息*/
scanf("%lf",&x);/*從鍵盤獲得一個實數x*/1.5.2C程序的結構
s=sin(x);/*求x的正弦,并把它賦給變量s*/
printf(“sineof%lfis%lf\n”,x,s);/*顯示程序運算 結果*/}/*main函數結束*/【例1-4】程序運行結果如下圖所示。1.5.2C程序的結構歸納起來C語言的程序結構為:(1)C語言程序可由一個或多個函數組成。(2)C語言程序不論由多少個函數組成,都有且僅有一個main函數,即主函數。(3)源程序中可以有預處理命令(include命令僅為其中的一種),預處理命令通常應放在源程序的最前面。(4)每行可以寫一個或多個語句,一個語句也可以寫在多行上,但每一個語句都必須以分號結尾。預處理命令,函數頭和花括號“}”之后不能加分號。1.5.2C程序的結構(5)可以用“/*”和“*/”對C中的任意部分做注釋,提高程序的可讀性。(6)函數由函數頭和函數體組成,函數說明的一般形式如下:函數類型
函數名(形參表){說明語句執行語句}(7)組成一個程序的若干個函數可以保存在一個或幾個源程序文件中。1.5.2C程序的結構C語言的結構圖如下圖所示。1.5.3C語句概述1.表達式語句表達式語句由表達式加上分號“;”組成。其一般形式為:
表達式;2.函數調用語句函數調用語句由函數名、實際參數加上分號“;”組成。其一般形式為:
函數名(實際參數表);1.5.3C語句概述3.控制語句
C語言有九種控制語句,可分成以下三類: 條件判斷語句:if語句、switch語句。 循環執行語句:dowhile語句、while 語句、for語句。 轉移語句:break語句、goto語句、 continue語句、return語句.1.5.3C語句概述4.復合語句把多個語句用括號{}括起來組成的一個語句稱復合語句。在程序中應把復合語句看成是單條語句,而不是多條語句。5.空語句只有分號“;”組成的語句稱為空語句。空語句是什么也不執行的語句。1.5.4C程序的上機過程在DOS環境下或在Windows的DOS窗口下運行TurboC2.0時,只要在TC子目錄下鍵入TC并按回車鍵即可進入TurboC2.0集成開發環境。也可在windows環境下直接雙擊tc.exe文件,就會進入窗口模式的開發環境,如下圖所示。1.5.4C程序的上機過程啟動TurboC以后將處于編輯程序(Edit)狀態,即光標處于中間的藍色編輯窗口中,用鍵盤上的方向鍵可以移動屏幕上的光標。下面是編輯、運行C語言程序的基本過程:1.新建或打開文件啟動TurboC以后系統就默認新建了一個叫NONAME.C的文件,這時可以直接在編輯窗口中輸入源程序。2.編輯源文件可以在Edit窗口中輸入或修改源程序。1.5.4C程序的上機過程3.編譯源程序只需要按F9鍵,就可以進行源程序的編譯和連接
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 藥品計劃采購管理制度
- 藥品食品倉庫管理制度
- 藥店醫保統籌管理制度
- 藥店消防培訓管理制度
- 菌類種植基地管理制度
- 設備事故考核管理制度
- 設備售后出差管理制度
- 設備工具領取管理制度
- 設備檢修費用管理制度
- 設備維護成本管理制度
- 2025春季學期國開電大本科《管理英語3》一平臺機考真題及答案(第十套)
- 2025年社區工作者考試題目及答案
- 定額〔2025〕1號文-關于發布2018版電力建設工程概預算定額2024年度價格水平調整的通知
- 《云南省建筑工程資料管理規程應用指南)(上下冊)
- 數列求和中常見放縮方法和技巧(含答案)
- 寶興縣中藥材生產現狀及發展思路
- 胸外科圍手術期的氣道管理.ppt
- 小兒霧化吸入課件.ppt
- 國際經濟法案例分析(匯總)
- 鎖骨骨折幻燈片
- 高填方、深挖路塹邊坡和軟基監測方案
評論
0/150
提交評論