C語言程序設計基礎與實訓教程-第1章:基礎知識ppt課件_第1頁
C語言程序設計基礎與實訓教程-第1章:基礎知識ppt課件_第2頁
C語言程序設計基礎與實訓教程-第1章:基礎知識ppt課件_第3頁
C語言程序設計基礎與實訓教程-第1章:基礎知識ppt課件_第4頁
C語言程序設計基礎與實訓教程-第1章:基礎知識ppt課件_第5頁
已閱讀5頁,還剩20頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、http:/ http:/ 程序設計基礎n1.2 C語言簡介 n1.3 C語言程序結構與書寫規(guī)則 n1.4 C語言的基本符號 http:/ 今天,人們所講的計算機是一個計算機系統(tǒng),而不是一臺“裸機”。一個完整的計算機系統(tǒng)由計算機硬件系統(tǒng)和計算機軟件系統(tǒng)俗稱程序系統(tǒng)組成。前者一般為組成計算機的物資設備,后者為管理和使用計算機的各種程序。計算機每做一次動作、一個步驟,都是按照已經(jīng)用計算機語言編好的程序來執(zhí)行的。程序是計算機要執(zhí)行的指令集合,而程序全部都是用人們所掌握的計算機語言來編寫的。所以人們要控制計算機就一定要通過計算機語言向計算機發(fā)出命令。http:/ 因此可以說,程序設計就是程序員根據(jù)實際

2、任務提出問題,然后確定計算方法,構造數(shù)學模型,畫出流程圖,選擇合適的語言,編寫程序并上機反復調(diào)試,直到滿足實際需要為止。程序設計基礎是掌握計算機語言。計算機語言的種類非常多,總的來說可以分成機器語言、匯編語言、高級語言3大類。計算機所能識別的語言只有機器語言,即由0和1構成的代碼。但通常人們編程時不采用機器語言,因為它非常難以記憶和識別。目前通用的編程語言有兩種形式:匯編語言和高級語言。http:/ 匯編語言的實質(zhì)和機器語言是相同的,都是直接對硬件進行操作,只不過指令采用了英文縮寫的標識符,這樣更容易識別和記憶。它同樣需要編程者將每一步具體的操作用命令的形式寫出來。匯編程序的每一句指令只能對應

3、實際操作過程中的一個很細微的動作,因此匯編程序一般比較冗長、復雜、容易出錯,而且使用匯編語言編程需要有更多的計算機專業(yè)知識。但匯編語言的優(yōu)點也是顯而易見的,用匯編語言所能完成的操作不是一般高級語言所能實現(xiàn)的,而且源程序經(jīng)匯編生成的可執(zhí)行文件比較小,而且執(zhí)行速度很快。http:/ 高級語言是目前絕大多數(shù)編程者的選擇。與匯編語言相比,它不但能將許多相關的機器指令合成單條指令,并且去掉了與具體操作有關但與完成工作無關的細節(jié),例如使用堆棧、寄存器等,這樣就大大地簡化了程序中的指令。同時,由于省略了很多的細節(jié),因此編程者也就不需要有太多的專業(yè)知識。高級語言主要是針對匯編語言而言,它并不是特指某一具體的語

4、言,而是包括了很多的編程語言,如目前流行的VB、VC、Foxpro、C等,這些語言的語法、命令格式不相同。用高級語言所編寫的程序不能直接被計算機識別,必須經(jīng)過轉(zhuǎn)換才能被執(zhí)行。http:/ 按照轉(zhuǎn)換的方式可將它們分為以下兩類:解釋類:執(zhí)行方式類似我們?nèi)粘I畹摹巴暦g”,應用程序源代碼一邊用相應語言的解釋器“翻譯成目標代碼機器語言),一邊執(zhí)行,而且不能生成可獨立執(zhí)行的可執(zhí)行文件,應用程序不能脫離其解釋器。但這種方式比較靈活,可以動態(tài)地調(diào)整、修改應用程序。編譯類:編譯是指應用源程序執(zhí)行之前,就將程序源代碼“翻譯成目標代碼機器語言),因此其目標程序可以脫離其語言環(huán)境獨立執(zhí)行,使用比較方便、效率較高

5、。但應用程序一旦需要修改就必須先修改源代碼,再重新編譯生成新的目標文件(*.OBJ才能執(zhí)行?,F(xiàn)在大多數(shù)編程語言都是編譯型的,例如 C、Visual C+、Foxpro 等。http:/ 語語 言言 名名 設設 計計 者者 年年 份份CPLC.Strachey 等等1968BCPLM.Richards1969BK.Thompson1970C D.M.Ritchie 1972http:/ W.Kernighan和Dennis M.Ritchie合稱K&R合著了影響深遠的名著n ? m : n ); main( ) int num1,num2;printf(“Input the first

6、integer number: ”);scanf(“%d”, &num1);printf(“Input the second integer number: ”);scanf(“%d”, &num2);printf(“max=%dn”, max(num1, num2);http:/ )函數(shù)的作用,相當于其它高級語言中的主程序;其它函數(shù)的作用,相當于子程序。2C語言程序總是從main( )函數(shù)開始執(zhí)行。一個語言程序,總是從main( )函數(shù)開始執(zhí)行,而不論其在程序中的位置。當主函數(shù)執(zhí)行完畢時,亦即程序執(zhí)行完畢。習慣上,將主函數(shù)main( )放在最前頭。http:/ )main(

7、))都是由)都是由函數(shù)說明和函數(shù)體兩部分組成。其一般結構函數(shù)說明和函數(shù)體兩部分組成。其一般結構如下:如下: 函數(shù)類型函數(shù)類型 函數(shù)名函數(shù)名( (函數(shù)參數(shù)表函數(shù)參數(shù)表) ) 說明語句部分;說明語句部分; 執(zhí)行語句部分;執(zhí)行語句部分; http:/ 1使用的語法符號約定使用的語法符號約定 . . 方括號表示可選即可以指定,也可以缺省)方括號表示可選即可以指定,也可以缺?。?省略號表示前面的項可以重復省略號表示前面的項可以重復 | | 多含多含2 2中選中選1 12 2函數(shù)說明函數(shù)說明由函數(shù)類型可缺?。?、函數(shù)名和函數(shù)參數(shù)表三部分組成,由函數(shù)類型可缺?。?、函數(shù)名和函數(shù)參數(shù)表三部分組成,其中函數(shù)參數(shù)表的

8、格式為:其中函數(shù)參數(shù)表的格式為: 數(shù)據(jù)類型數(shù)據(jù)類型 形參形參 , , 數(shù)據(jù)類型數(shù)據(jù)類型 形參形參22例如,例例如,例1.21.2中的函數(shù)中的函數(shù)max( )max( ),其函數(shù)說明各部分如下所示。,其函數(shù)說明各部分如下所示。 函數(shù)類型函數(shù)類型 函數(shù)名函數(shù)名 函數(shù)參數(shù)表函數(shù)參數(shù)表 int max (int x , int y) int max (int x , int y)http:/ 3函數(shù)體函數(shù)體在函數(shù)說明部分的下面、大括號必須配對使用在函數(shù)說明部分的下面、大括號必須配對使用內(nèi)的部分。內(nèi)的部分。函數(shù)體一般由說明語句和可執(zhí)行語句兩部分構成:函數(shù)體一般由說明語句和可執(zhí)行語句兩部分構成:(1 1說

9、明語句部分說明語句部分說明語句部分由變量定義、自定義類型定義、自定說明語句部分由變量定義、自定義類型定義、自定義函數(shù)說明、外部變量說明等組成。義函數(shù)說明、外部變量說明等組成。(2 2可執(zhí)行語句可執(zhí)行語句一般由若干條可執(zhí)行語句構成。一般由若干條可執(zhí)行語句構成。 http:/ 4闡明闡明(1 1函數(shù)體中的變量定義語句,必須在所有可執(zhí)行語句之前。函數(shù)體中的變量定義語句,必須在所有可執(zhí)行語句之前。下面程序中變量定義語句下面程序中變量定義語句“ “int maxint max;” ”的位置是非法的:的位置是非法的:main( )main( ) int m,n; / int m,n; /* *變量定義語句

10、:定義變量定義語句:定義2 2個整型變量個整型變量x x、y y* */ /m=3; /m=3; /* *可執(zhí)行的賦值語句:將可執(zhí)行的賦值語句:將3 3賦值給變量賦值給變量x x* */ /n=6; /n=6; /* *可執(zhí)行的賦值語句:將可執(zhí)行的賦值語句:將6 6賦值給變量賦值給變量y y* */ /int max; /int max; /* *變量定義出現(xiàn)在可執(zhí)行的賦值語句變量定義出現(xiàn)在可執(zhí)行的賦值語句“ “m=3; m=3; n=6;” n=6;”之后,非法!之后,非法!* */ /max=xy?x:y;max=xy?x:y;printf(“max=%dn”,max); printf(“

11、max=%dn”,max); 解決辦法很簡單,請讀者自己思考。解決辦法很簡單,請讀者自己思考。(2 2如果不需要,也可以缺省變量定義語句。如果不需要,也可以缺省變量定義語句。http:/ 1所有語句都必須以分號所有語句都必須以分號“ “;” ”終了,函數(shù)的最后一個語句也不例外。終了,函數(shù)的最后一個語句也不例外。2 2程序行的書寫格式自由,既允許程序行的書寫格式自由,既允許1 1行內(nèi)寫幾條語句,也允許行內(nèi)寫幾條語句,也允許1 1條條語句分寫在幾行上。語句分寫在幾行上。例如,例例如,例1.21.2的主函數(shù)的主函數(shù)main( )main( ),也可改寫成如下所示的格式:,也可改寫成如下所示的格式:

12、main( )main( ) int num1,num2; int num1,num2;printf(“Input the first integer number: ”);scanf(“%d”, printf(“Input the first integer number: ”);scanf(“%d”, &num1);&num1);printf(“Inputthe second integer number: ”);scanf(“%d”, printf(“Inputthe second integer number: ”);scanf(“%d”, &num2);&am

13、p;num2);printf(“max=%dn”, max(num1, num2);printf(“max=%dn”, max(num1, num2); http:/ 3允許使用注釋。允許使用注釋。C C語言的注釋格式為:語言的注釋格式為: / /* * * */ /例如,在例例如,在例1.11.1和例和例1.21.2中,以及本節(jié)其它部分給出的源程序中,以及本節(jié)其它部分給出的源程序中,凡是用中,凡是用“/ /* *”和和“* */”/”括起來的文字,都是注釋。注釋可以出括起來的文字,都是注釋。注釋可以出現(xiàn)在程序的任何部分,在簡單的程序中可以沒有注釋?,F(xiàn)在程序的任何部分,在簡單的程序中可以沒有注

14、釋。(1 1)“/ /* *”和和“* */”/”必須成對使用,且必須成對使用,且“/”/”和和“* *”、以、以及及“* *”和和“/”/”之間不能有空格,否則都出錯。之間不能有空格,否則都出錯。技巧技巧 (2 2注釋的位置,可以單占注釋的位置,可以單占1 1行,也可以跟在語句的行,也可以跟在語句的后面。后面。(3 3如果如果1 1行寫不下,可另起行寫不下,可另起1 1行繼續(xù)寫。行繼續(xù)寫。( (4(4注釋中允許使用漢字。在非中文操作系統(tǒng)下,看注釋中允許使用漢字。在非中文操作系統(tǒng)下,看到的是一串亂碼,但不影響程序運行。到的是一串亂碼,但不影響程序運行。http:/ C語言與其它語言一樣。它的基

15、本符號有英語言與其它語言一樣。它的基本符號有英文字母、阿拉伯數(shù)字以及其它特殊符號。其中有:文字母、阿拉伯數(shù)字以及其它特殊符號。其中有:英文字母英文字母 2626個包括大寫和小寫)個包括大寫和小寫)阿拉伯數(shù)字阿拉伯數(shù)字 1010,即從,即從0 0 到到9 9其它特殊符號主要指運算符,運算符通常由一至兩個特殊符其它特殊符號主要指運算符,運算符通常由一至兩個特殊符號組成。比如:號組成。比如:+ +,- -,* *,/ /,% %, , =,=,等。,等。標識符用來表示函數(shù)、類型或變量的名稱,它是字母和數(shù)字標識符用來表示函數(shù)、類型或變量的名稱,它是字母和數(shù)字的排列,但必須是字母開頭。連字符的排列,但必

16、須是字母開頭。連字符_(_(低短橫線低短橫線) )也稱為字母。它也稱為字母。它在書寫名稱時很方便,大小寫字母含義不同。標識符中只有前八個在書寫名稱時很方便,大小寫字母含義不同。標識符中只有前八個字符有意義,可以相互區(qū)別。但各種匯編程序和裝入程序使用的外字符有意義,可以相互區(qū)別。但各種匯編程序和裝入程序使用的外部標識符限制較多,用戶必須注意有關資料的規(guī)定。部標識符限制較多,用戶必須注意有關資料的規(guī)定。http:/ C語言的習慣,變量名用小寫字母,符號常數(shù)全部用大寫字語言的習慣,變量名用小寫字母,符號常數(shù)全部用大寫字母,函數(shù)名及外部變量名由六個字符組成。母,函數(shù)名及外部變量名由六個字符組成。根據(jù)程

17、序設計的經(jīng)驗,標識符的選擇采用根據(jù)程序設計的經(jīng)驗,標識符的選擇采用“常用從簡,專用從常用從簡,專用從繁的原則。一般不必太長,通常在六個字符之內(nèi)能適應各種系統(tǒng)。繁的原則。一般不必太長,通常在六個字符之內(nèi)能適應各種系統(tǒng)。應盡量做到應盡量做到“見名知意見名知意”,即選有含義的英文單詞或其縮寫,即選有含義的英文單詞或其縮寫或其漢語拼音作標識符,如或其漢語拼音作標識符,如sumsum,namename,yearyear,totaltotal,zongshuzongshu等。等。在操作系統(tǒng)中,在操作系統(tǒng)中,C C語言源程序的文件屬性為語言源程序的文件屬性為“.c”.c”。因此,完整。因此,完整的文件名稱為

18、的文件名稱為* * * * *.c.c,這樣有利于編譯程序?qū)?,這樣有利于編譯程序?qū) C語言源程序進行編譯。語言源程序進行編譯。C C語言與其它語言一樣,有一些具有特定含義的關鍵字,它們不語言與其它語言一樣,有一些具有特定含義的關鍵字,它們不允許做為用戶標識符使用,一旦使用了就會出錯。允許做為用戶標識符使用,一旦使用了就會出錯。http:/ C語言的關鍵字共有語言的關鍵字共有3232個,根據(jù)關鍵字的作用,可分其為數(shù)據(jù)類個,根據(jù)關鍵字的作用,可分其為數(shù)據(jù)類型關鍵字、控制語句關鍵字、存儲類型關鍵字和其它關鍵字四類。型關鍵字、控制語句關鍵字、存儲類型關鍵字和其它關鍵字四類。(1 1數(shù)據(jù)類型關鍵字數(shù)據(jù)類型關鍵字1212個):個):char, double, enum, float, char, double, enum, float, int, long, short, signed, struct, union, unsigned, voidint, long, short, signed, struct, union, unsigned, void(2 2控制語句關鍵字控制語句關鍵字1212個):個):break, case, continue, break, case

溫馨提示

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

評論

0/150

提交評論