當前位置:才華齋>計算機>C語言>

《C語言程式設計》課程設計報告

C語言 閱讀(1.98W)

姓名:楊鈞翔 學號:20138110254 區隊:四

《C語言程式設計》課程設計報告

第一部分 《C語言程式設計》知識點梳理

(注 《C語言程式設計》所涉及到的重要知識點及對這些知識點的理解)

一、程式設計

1、計算機語言

(1)機器語言

用二進位制表示的,能被計算機識別、接受的程式碼稱為機器指令。機器指令的集合就是 計算機語言(如:10110110000000)

(2)組合語言

為客服機器語言的缺點,用符號語言來表示指令(英文字母、數字)的符號語言為符號組合語言(又稱低階語言)。 一條符號語言指令對應轉換為一條機器指令;轉換的過程稱為“代真”或“彙編”

(3)高階語言

客服低階語言的缺點,接近人們習慣用的自然語言和數學語言;用英語單詞表示的指令及語句。功能性強,不依賴於具體機器,對任何型號計算機都適用(或做很少修改)。〔C語言、FORTRAN、QBASIC…〕

C語言特點①語言簡潔、緊湊,使用方便、靈活②運算子豐富③資料型別豐富④具有結構化的控制語句⑤語法限制不太嚴格,程式設計自由度大⑥C語言允許直接訪問實體地址,能進行位(bit)操作,能實現組合語言的大部分功能,可以直接對硬體進行操作⑦用C語言編寫的程式可移植性好⑧生成目標程式碼質量高,程式執行效率高

2、執行C程式的步驟及方法

①上機輸入和編輯源程式,以檔案形式存檔。 .c作為字尾,生成源程式檔案f.c

②對源程式進行編譯。進行預處理,連線其它部分組成完整的、可進行正式編譯的源程式 (檢查、轉換)

③進行連線處理。把所有編譯後得到的目標模組連線裝配,與函式庫想連線成一個整體,生成一個可供計算機執行的目標程式

④執行可執行程式,得到執行結果。

二、演算法

1、演算法的概念

廣義的說是 解決一個問題所採用的方法和步驟(太極拳動作圖解、樂譜)

計算機演算法分為兩大類:1.數值運算演算法(求數值解)

2.非數值運算演算法(常用於事務管理領域)

2、演算法的特性

①有窮性:一個演算法應包含有限的操作步驟

②確定性:演算法中的每一個步驟都應當是確定的,而不是含糊的、模稜兩可的(演算法的含義應當是唯一的,而不應當產生“歧義性”)

③有零個或多個輸入:在執行演算法時需要從外界取得必要的資訊

④有一個或多個輸出:

⑤有效性:演算法中的每一個步驟都應當有效的執行,並得到確定的結果

3、演算法描述

(1)自然語言

即人們日常使用的語言。用自然語言表示通俗易懂,但文字冗長,有歧義。在描述包含分支和迴圈時不方便

(2)流程圖

流程圖是用一些圖框來表示各種操作。用圖形法表示演算法,直觀形象,易於理解。 流程圖包括:①表示操作的框②帶剪頭的流程線(流程線不要忘記畫箭頭,反應流程的先後)③框內外必要的文字說明

流程圖三種基本結構:

①順序結構

②選擇結構

③迴圈結構:{ⅰ當型(while)迴圈; ⅱ直到(until)型迴圈}

N-S流程圖 表示演算法:全部演算法寫在一個矩形框內

特點:比文字描述直觀、形象、易於理解;比傳統流程圖緊湊易畫,廢除了流程線,演算法由各個基本結構按順序組成;流程圖中的上下順序就是執行時的順序;

表示的演算法都是結構化的演算法。

結構化的演算法是由一些基本結構順序組成的`;在基本結構之間不存在向前或

向後的跳轉,流程的轉移只存在於一個基本結構範圍之內

三種基本結構的圖示:

順序結構選擇結構

迴圈結構的圖示:

當型(While型)

迴圈結構直到型(Until型)迴圈

(3)虛擬碼:介於自然語言和計算機語言之間的文字和符號來描述演算法。它不用圖形符號,書寫方便,格式緊湊,修改方便,容易看懂,便於向計算機語言演算法過渡。

虛擬碼寫演算法並無固定的、嚴格的語法規則,可以用多種語言。只需把意思表達清楚,便於書寫和閱讀,書寫的格式要寫成清晰易讀的格式

用虛擬碼寫的演算法易於修改

設計演算法的目的是為了實現演算法,所以不僅要考慮如何設計一個演算法,也要考慮如何實現一個演算法。在用流程圖或虛擬碼描述一個演算法後還要轉換成C語句。

三、基本資料型別及C語句