




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、/Simulink/C語言/C+/VC+編程方式:993878382.com編程博客:如果我不,請將問題發(fā)到郵箱,或者在博客留言,第一時間答復(fù)你!還可以為公司和科研設(shè)計各類算法,歡迎前來咨詢!鄭重:本來源于網(wǎng)絡(luò),僅限交流使用,用于商業(yè)用途!1C語言概述21.13語言的發(fā)展過程2當(dāng)代最優(yōu)秀的程序設(shè)計語言2語言版本2語言的特點2面向?qū)ο蟮某绦蛟O(shè)計語言3和3簡單的程序介紹3輸入和輸出函數(shù)5源程序的結(jié)構(gòu)特點6書寫程序時應(yīng)遵循的規(guī)則6語言的字符集6語言詞匯6Turbo C 2.0 集成開發(fā)環(huán)境的使用3.21
2、.01.13.11Turbo C 2.0 簡介和啟動8Turbo C 2.0 集成開發(fā)環(huán)境8File菜單9Edit菜單10Run菜單11Compile菜單12Project菜單13Options菜單14Debug菜單18Break/watch菜單19Turbo C 2.0 的配置文件20第 1 頁C 語言1 C語言概述1.1 語言的發(fā)展過程語言是在 70 年代初問世的。一九七八年由美國電報公司(AT&T)貝爾正式了語言。 同時由 B.W.Kernighan 和 D.M.Ritchit 合著了著名
3、的“ THE CPROGRAMMING LANGUAGE”一書。通常簡稱為K&R,也有人稱之為K&R標(biāo)準(zhǔn)。但是,在K&R中并沒有定義一個完整的標(biāo)準(zhǔn) C 語言,后來由美國American。通常標(biāo)準(zhǔn)National Standards Institute)在此基礎(chǔ)上制定了一個 C 語言標(biāo)準(zhǔn),于一九八三年稱之為 ANSI C。1.2 當(dāng)代最優(yōu)秀的程序設(shè)計語言早期的 C 語言主要是用于 UNIX 系統(tǒng)。由于語言的強大功能和各方面的優(yōu)點逐漸為人們認(rèn)識,到了八十年代,C 開始進入其它操作系統(tǒng),并很快在各類大、中、小和微型計算機上得到了廣泛的使用,成為當(dāng)代最優(yōu)秀的程序設(shè)計語言之一。1
4、.3 語言版本目前最流行的語言有以下幾種:·Microsoft C 或稱 MS C·Borland Turbo C 或稱 Turbo C·AT&T C這些語言版本不僅實現(xiàn)了 ANSI C 標(biāo)準(zhǔn),而且在此基礎(chǔ)上各自作了一些擴充,使之更加方便、完美。1.4 語言的特點1·C 語言簡潔、緊湊,使用方便、靈活。ANSI C 一共只有 32 個關(guān)鍵字:9 種語句,程序書寫自由,主要用小寫字母表示,壓縮了一切不必要的成分。Turbo C 擴充了 11 個關(guān)鍵字:第 2 頁autobreakcasecharconstcontinuedefaultdodoubl
5、eelseenumexternfloatforgotoifintlongregisterreturnshortsignedstaticsizofstructswitchtypedefunionunsignedvoidvolatilewhileasm_cs_ds_espascal_sscdeclfarhugeinterrupt near注意:在 C 語言中,關(guān)鍵字都是小寫的。2·運算符豐富。共有 34 種。C 把括號、賦值、逗號等都作為運算符處理。從而使 C 的運算類型極為豐富,可以實現(xiàn)其他高級語言難以實現(xiàn)的運算。3·數(shù)據(jù)結(jié)構(gòu)類型豐富。4·具有結(jié)構(gòu)化的語句。5
6、83;語法限制不太嚴(yán)格,程序設(shè)計自由度大。6·C 語言直接物理地址,能進行位(bit)操作,能實現(xiàn)匯編語言的大部分功能,可以直接對硬件進行操作。因此有人把它稱為中級語言。7·生成目標(biāo)代碼質(zhì)量高,程序執(zhí)行效率高。8·與匯編語言相比,用 C 語言寫的程序可移植性好。但是,C 語言對程序員要求也高,程序員用 C 寫程序會感到限制少、靈活性大,功能強,但較其他高級語言在學(xué)習(xí)上要一些。1.5 面向?qū)ο蟮某绦蛟O(shè)計語言在C 的基礎(chǔ)上,一九八三年又由貝爾的 Bjarne Strou-strup 推出了 C+。 C+進一步擴充和完善了語言,成為一種面向?qū)ο蟮某绦蛟O(shè)計語言。C+目前流
7、行的最新版本是Borland C+, Symantec C+和 Microsoft VisualC+。C+提出了一些更為深入的概念,它所支持的這些面向?qū)ο蟮母拍钊菀讓栴}空間直接地到程序空間,為程序員提供了一種與傳統(tǒng)結(jié)構(gòu)程序設(shè)計不同的思維方式和編程方法。因而也增加了整個語言的復(fù)雜性,掌握起來有一定難度。1.6 和但是,C 是 C+的基礎(chǔ),C+語言和語言在很多方面是兼容的。因此,掌握了語言, 再進一步學(xué)習(xí) C+就能以一種熟悉的語法來學(xué)習(xí)面向?qū)ο蟮恼Z言,從而達到事半功倍的目的。1.7 簡單的程序介紹為了說明語言源程序結(jié)構(gòu)的特點,先看以下幾個程序。這幾個程序由簡到難,表現(xiàn)了語言源程序在組成結(jié)構(gòu)上的特
8、點。雖然有關(guān)內(nèi)容還未介紹,但可從這些例子中了解到組成一個 C 源程序的基本部分和書寫格式。【例 1.1】main()printf("世界,您好!n");zzmain 是主函數(shù)的函數(shù)名,表示這是一個主函數(shù)。每一個 C 源程序都必須有,且只能有一個主函數(shù)(main 函數(shù))。第 3 頁zz函數(shù)調(diào)用語句,printf 函數(shù)的功能是把要輸出的內(nèi)容送到顯示器去顯示。printf 函數(shù)是一個由系統(tǒng)定義的標(biāo)準(zhǔn)函數(shù),可在程序中直接調(diào)用?!纠?1.2】#include<math.h> #include<stdio.h> main()double x,s;printf(&
9、quot;input number:n"); scanf("%lf",&x); s=sin(x);printf("sine of %lf is %lfn",x,s);zzzzzzzzinclude 稱為文件包含命令擴展名為.h 的文件稱為頭文件定義兩個實數(shù)變量,以被后面程序使用顯示提示信息從鍵盤獲得一個實數(shù) x求 x 的正弦,并把它賦給變量 s顯示程序運算結(jié)果main 函數(shù)結(jié)束程序的功能是從鍵盤輸入一個數(shù) x,求 x 的正弦值,然后輸出結(jié)果。在 main()之前的兩行稱為預(yù)處理命令(詳見后面)。預(yù)處理命令還有其它幾種,這里的 inclu
10、de 稱為文件包含命令,其意義是把尖括號<>或引號""內(nèi)指定的文件包含到本程序來,成程序的一部分。被包含的文件通常是由系統(tǒng)提供的,其擴展名為.h。因此也稱為頭文件或首部文件。語言的頭文件中包括了各個標(biāo)準(zhǔn)庫函數(shù)的函數(shù)原型。因此,凡是在程序中調(diào)用一個庫函數(shù)時,都必須包含該函數(shù)原型所在的頭文件。在本例中,使用了三個庫函數(shù):輸入函數(shù) scanf,正弦函數(shù) sin,輸出函數(shù) printf。sin 函數(shù)是數(shù)學(xué)函數(shù),其頭文件為 math.h 文件,因此在程序的主函數(shù)前用 include 命令包含了 math.h。scanf 和 printf 是標(biāo)準(zhǔn)輸入輸出函數(shù),其頭文件為 s
11、tdio.h, 在主函數(shù)前也用 include 命令包含了 stdio.h 文件。需要說明的是,C 語言規(guī)定對 scanf 和 printf 這兩個函數(shù)可以省去對其頭文件的包含命令。所以在本例中也可以刪去第二行的包含命令#include<stdio.h>。同樣,在例 1.1 中使用了 printf 函數(shù),也省略了包含命令。在例題中的主函數(shù)體中又分為兩部分,一部分為說明部分,另一部為分執(zhí)行部分。說明是指變量的類型說明。例題 1.1 中未使用任何變量,因此無說明部分。語言規(guī)定,源程序中所有用到的變量都必須先說明,后使用,否則將會出錯。這一點是編譯型高級程序設(shè)計語言的一個特點,與解釋型的
12、 BASIC 語言是不同的。說明部分是 C 源程序結(jié)構(gòu)中很重要的組成部分。本例中使用了兩個變量 x,s,用來表示輸入的自變量和 sin 函數(shù)值。由于 sin 函數(shù)要求這兩個量必須是雙精度浮點型,故用類型說明符 double 來說明這兩個變量。說明部分后的四行為執(zhí)行部分或稱為執(zhí)行語句部分,用以完成程序的功能。執(zhí)行部分的第一行是輸出語句,調(diào)用 printf 函數(shù)在顯示器上輸出提示字符串,請操作輸入自變量 x 的值。第二行為輸入語句,調(diào)用 scanf 函數(shù),接受鍵盤上輸入的數(shù)并存入變量 x 中。第三行是調(diào)用 sin 函數(shù)并把函數(shù)值送到變量 s 中。第四行是用 printf 函數(shù)輸出變量 s 的值,即
13、 x 的正弦值。程序結(jié)束。第 4 頁運行本程序時,首先在顯示器屏幕上給出提示串 input number,這是由執(zhí)行部分的第一行完成的。用戶在提示下從鍵盤上鍵入某一數(shù),如 5,按下回車鍵,接著在屏幕上給出計算結(jié)果。1.8 輸入和輸出函數(shù)在前兩個例子中用到了輸入和輸出函數(shù) scanf 和 printf,在以后要詳細(xì)介紹。這里我們先簡單介紹一下它們的格式,以便下面使用。scanf 和 printf 這兩個函數(shù)分別稱為格式輸入函數(shù)和格式輸出函數(shù)。其意義是按指定的格式輸入輸出值。因此,這兩個函數(shù)在括號中的參數(shù)表都由以下兩部分組成:“格式串”,參數(shù)表格式串是一個字符串,必須引號括起來,它表示了輸入輸出量
14、的數(shù)據(jù)類型。各種類型的格式表示法可參閱第三章。在 printf 函數(shù)中還可以在格式串內(nèi)出現(xiàn)非格式字符,這時在顯示屏幕上將原文照印。參數(shù)表中給出了輸入或輸出的量。當(dāng)有多個量時,用逗號間隔。例如:printf("sine of %lf is %lfn",x,s);其中%lf 為格式字符,表示按雙精度浮點數(shù)處理。它在格式串中兩次現(xiàn),對應(yīng)了 x 和 s 兩個變量。其余字符為非格式字符則照原樣輸出在屏幕上?!纠?1.3】int max(int a,int b); main()int x,y,z;int max(int a,int b);/*函數(shù)說明*/*主函數(shù)*/*變量說明*/*函數(shù)
15、說明*/printf("input two numbers:n"); scanf("%d%d",&x,&y); z=max(x,y);printf("maxmum=%d",z);/*輸入x,y 值*/*調(diào)用 max 函數(shù)*/*輸出*/int max(int a,int b)if(a>b)return a;else return b;/*定義 max 函數(shù)*/*把結(jié)果返回主調(diào)函數(shù)*/上面例中程序的功能是由用戶輸入兩個整數(shù),程序執(zhí)行后輸出其中較大的數(shù)。本程序由兩個函數(shù)組成,主函數(shù)和 max 函數(shù)。函數(shù)之間是并列關(guān)系。
16、可從主函數(shù)中調(diào)用其它函數(shù)。max 函數(shù)的功能是比較兩個數(shù),然后把較大的數(shù)返回給主函數(shù)。max 函數(shù)是一個用戶自定義函數(shù)。因此在主函數(shù)中要給出說明(程序第三行)??梢?,在程序的說明部分中,不僅可以有變量說明,還可以有函數(shù)說明。關(guān)于函數(shù)的詳細(xì)內(nèi)容將在以后第五章介紹。在程序的每行后用/*和*/括起來的內(nèi)容為注釋部分,程序不執(zhí)行注釋部分。上例中程序的執(zhí)行過程是,首先在屏幕上顯示提示串,請用戶輸入兩個數(shù),回車后由scanf 函數(shù)語句接收這兩個數(shù)送入變量 x,y 中,然后調(diào)用 max 函數(shù),并把 x,y 的值傳送給 max 函數(shù)的參數(shù) a,b。在 max 函數(shù)中比較 a,b 的大小,把大者返回給主函數(shù)的變
17、量 z,最后在屏幕上輸出 z 的值。第 5 頁1.9 源程序的結(jié)構(gòu)特點1. 一個語言源程序可以由一個或多個源文件組成。2. 每個源文件可由一個或多個函數(shù)組成。3. 一個源程序不論由多少個文件組成,都有一個且只能有一個 main 函數(shù),即主函數(shù)。4. 源程序中可以有預(yù)處理命令(include 命令僅為其中的一種),預(yù)處理命令通常應(yīng)放在源文件或源程序的最前面。5. 每一個說明,每一個語句都必須以分號結(jié)尾。但預(yù)處理命令,函數(shù)頭和花括號“” 之后不能加分號。6. 標(biāo)識符,關(guān)鍵字之間必須至少加一個空格以示間隔。若已有明顯的間隔符,也可不再加空格來間隔。1.10 書寫程序時應(yīng)遵循的規(guī)則從書寫清晰,便于閱讀
18、,理解,維護的角度出發(fā),在書寫程序時應(yīng)遵循以下規(guī)則:1. 一個說明或一個語句占一行。2. 用 括起來的部分,通常表示了程序的某一層次結(jié)構(gòu)。一般與該結(jié)構(gòu)語句的第一個字母對齊,并單獨占一行。3. 低一層次的語句或說明可比高一層次的語句或說明縮進若干格后書寫。以便看起來更加清晰,增加程序的可讀性。在編程時應(yīng)力求遵循這些規(guī)則,以養(yǎng)成良好的編程風(fēng)格。1.11 語言的字符集字符是組成語言的最基本的元素。語言字符集由字母,數(shù)字,空格,標(biāo)點和特殊字符組成。在字符常量,字符串常量和注釋中還可以使用漢字或其它可表示的圖形符號。1.字母小寫字母 az 共 26 個大寫字母 AZ 共 26 個2.數(shù)字09 共 10
19、個3. 空白符空格符、制表符、換行符等統(tǒng)稱為空白符。空白符只在字符常量和字符串常量中起作用。在其它地方出現(xiàn)時,只起間隔作用,編譯程序?qū)λ鼈兒雎圆挥?。因此在程序中使用空白符與否,對程序的編譯不發(fā)生影響,但在程序中適當(dāng)?shù)牡胤绞褂每瞻追麑⒃黾映绦虻那逦院涂勺x性。4. 標(biāo)點和特殊字符1.12 語言詞匯在語言中使用的詞匯分為六類:標(biāo)識符,關(guān)鍵字,運算符,分隔符,常量,注釋符等。第 6 頁1.標(biāo)識符在程序中使用的變量名、函數(shù)名、標(biāo)號等統(tǒng)稱為標(biāo)識符。除庫函數(shù)的函數(shù)名由系統(tǒng)定義外,其余都由用戶自定義。C 規(guī)定,標(biāo)識符只能是字母(AZ,az)、數(shù)字(09)、下劃線(_)組成的字符串,并且其第一個字符必須是字母
20、或下劃線。以下標(biāo)識符是合法的:a, x,x3, BOOK_1, sum5以下標(biāo)識符是的:3s s*T-3xbowy-1以數(shù)字開頭出現(xiàn)字符*以減號開頭出現(xiàn)字符-(減號)在使用標(biāo)識符時還必須注意以下幾點:(1)標(biāo)準(zhǔn)C 不限制標(biāo)識符的長度,但它受各種版本的 C 語言編譯系統(tǒng)限制,同時也受到的限制。例如在某版本 C 中規(guī)定標(biāo)識符前八位有效,當(dāng)兩個標(biāo)識符前八位相同時,具體則被認(rèn)為是同一個標(biāo)識符。(2) 在標(biāo)識符中,大小寫是有區(qū)別的。例如 BOOK 和 book 是兩個不同的標(biāo)識符。(3) 標(biāo)識符雖然可由程序員隨意定義,但標(biāo)識符是用于標(biāo)識某個量的符號。因此,命名應(yīng)盡量有相應(yīng)的意義,以便于閱讀理解,作到“顧
21、名思義”。2.關(guān)鍵字關(guān)鍵字是由語言規(guī)定的具有特定意義的字符串,通常也稱為保留字。用戶定義的標(biāo)識符不應(yīng)與關(guān)鍵字相同。語言的關(guān)鍵字分為以下幾類:(1) 類型說明符用于定義、說明變量、函數(shù)或其它數(shù)據(jù)結(jié)構(gòu)的類型。如前面例題中用到的 int,double 等(2) 語句定義符用于表示一個語句的功能。如例 1.3 中用到的 if else 就是條件語句的語句定義符。(3) 預(yù)處理命令字用于表示一個預(yù)處理命令。如前面各例中用到的 include。3.運算符語言中含有相當(dāng)豐富的運算符。運算符與變量,函數(shù)一起組成表達式,表示各種運算功能。運算符由一個或多個字符組成。4. 分隔符在語言中采用的分隔符有逗號和空格兩
22、種。逗號主要用在類型說明和函數(shù)參數(shù)表中, 分隔各個變量??崭穸嘤糜谡Z句各單詞之間,作間隔符。在關(guān)鍵字,標(biāo)識符之間必須要有一個以上的空格符作間隔,否則將會出現(xiàn)語法錯誤,例如把 int a;寫成 inta;C 編譯器會把 inta 當(dāng)成一個標(biāo)識符處理,其結(jié)果必然出錯。5. 常量C 語言中使用的常量可分為數(shù)字常量、字符常量、字符串常量、符號常量、轉(zhuǎn)義字符等多種。在后面章節(jié)中將專門給予介紹。6.注釋符C 語言的注釋符是以“/*”開頭并以“*/”結(jié)尾的串。在“/*”和“*/”之間的即為注釋。程序編譯時,不對注釋作任何處理。注釋可出現(xiàn)在程序中的任何位置。注釋用來向用戶提示或解釋程序的意義。在調(diào)試程序中對暫
23、不使用的語句也可用注釋符括起來,使翻譯跳過不作處理,待調(diào)試結(jié)束后再去掉注釋符。第 7 頁1.13 Turbo C 2.0 集成開發(fā)環(huán)境的使用1.13.1 Turbo C 2.0 簡介和啟動我們上機實習(xí)和將來都是使用 Borland Turbo C 2.0 這個版本。該系統(tǒng)是 DOS 操作系統(tǒng)支持下的軟件,在 windows 98 環(huán)境下,可以在 DOS 窗口下運行。我們機房是在 D 盤根目錄下建立一個 TC 子目 錄下安裝 Turbo C 2.0 系統(tǒng)的。 TC 下還建立了兩個了目錄 LIB 和 INCLUDE, LIB 子目錄中存放庫文件, INCLUDE 子目錄中存放所有頭文件。在 DOS
24、 環(huán)境下或在windows 98 的 DOS 窗口下運行運行Turbo C 2.0 時, 只要在TC 子目錄下鍵入 TC 并回車Turbo C 2. 0 集成開發(fā)環(huán)境。在 windows 98 環(huán)境下,也可以選運行菜單,然后鍵入 d:tctc 即可,也可以在 tc 文件夾找到 tc.exe 文件,然后用鼠標(biāo)雙擊該文件名也可進入 Turbo C 2. 0 集成開發(fā)環(huán)境。Turbo C 是美國 Borland 公司的,Borland 公司是一家專門從事軟件開發(fā)、研制的大公司。該公司相繼推出了一套 Turbo 系列軟件, 如Turbo BASIC, TurboPascal, Turbo Prolog
25、,這些軟件很受用戶歡迎。該公司在 1987 年首次推出 TurboC 1.0, 其中使用了全然一新的集成開發(fā)環(huán)境, 即使用了一系列下拉式菜單, 將文本編輯、程序編譯、連接以及程序運行, 大大方便了程序的開發(fā)。1988 年, Borland 公司又推出 Turbo C1.5 版本, 增加了圖形庫和文本窗口函數(shù)庫等, 而 Turbo C 2.0 則是該公司的。Turbo C2.0 在原來集成開發(fā)環(huán)境的基礎(chǔ)上增加了查錯功能, 并可以在 Tiny 模式下直接生成.COM (數(shù)據(jù)、代碼、堆棧處在同一 64K 內(nèi)存中) 文件。還可對數(shù)學(xué)協(xié)處理器 (支持 8087/80287/80387 等)進行Borla
26、nd 公司后來又推出了面向?qū)ο蟮某绦蜍浖?Turbo C+,它繼承發(fā)展 Turbo C的集成開發(fā)環(huán)境, 并包含了面向?qū)ο蟮幕舅枷牒驮O(shè)計方法。1991 年為了適用 Microsoft。2.0公司的 Windows 3.0 版本, Borland 公司又將 Turbo C+ 作了更新,Borlandc C+也已經(jīng)問世了。即 Turbo C的新一代1.13.2 Turbo C 2.0 集成開發(fā)環(huán)境進入 Turbo C 2.0 集成開發(fā)環(huán)境中后, 屏幕上顯示:第 8 頁其中頂上一行為Turbo C 2.0 主菜單, 中間窗口為編輯區(qū), 接下來是信息窗 口, 最底下一行為參考行。這四個窗口 了 Tu
27、rbo C 2.0 的主屏幕, 以后的編程、 編譯、調(diào)試以及運行都將在這個主屏幕中進行。主菜單在 Turbo C 2.0 主屏幕頂上一行, 顯示下列內(nèi)容:File Edit Run Compile Project Options Debug Break/watch除 Edit 外, 其它各項均有子菜單,子菜單中。只要用 Alt 加上某項中第一個字母,就可進入該項的1.13.3 File菜單按 Alt+F 可進入 File 菜單,如圖:File 菜單的子菜單共有 9 項,分別敘述如下:1.Load:裝入一個文件, 可用類似 DOS 的通配符(如*.C)來進行列表選擇。也可裝入其它第 9 頁擴展名
28、的文件, 只要給出文件名(或只給路徑)即可。該項的熱鍵為 F3, 即只要按 F3 即可進入該項, 而不需要先進入 File 菜單再選此項。Pick:將最近裝入編輯窗口的 8 個文件列成一個表讓用戶選擇, 選擇后將該程序裝入編輯區(qū), 并將光標(biāo)置在上次修改過的地方。其熱健為 Alt-F3。New:新建文件, 缺省文件名為 NONAME.C, 存盤時可改名。Save:將編輯區(qū)中的文件存盤, 若文件名是 NONAME.C 時, 將詢問是否更改文件名, 其熱鍵為 F2。Write to:可由用戶給出文件名將編輯區(qū)中的文件存盤, 若該文件已存在, 則詢問要不要 覆蓋。Directory:顯示目錄及目錄中的
29、文件, 并可由用戶選擇。Change dir:顯示當(dāng)前默認(rèn)目錄, 用戶可以改變默認(rèn)目錄。Os shell:暫時Turbo C 2.0 到 DOS 提示符下,此時可以運行 DOS 命令,若想回到 Turbo C 2.0 中, 只要在 DOS 狀態(tài)下鍵入 EXIT 即可。..Quit:Turbo C 2.0, 返回到 DOS 操作系統(tǒng)中, 其熱鍵為 Alt+X。說明:以上各項可用光標(biāo)鍵移動色棒進行選擇, 回車則執(zhí)行。也可用每一項的第一個大寫字母直接選擇。若要退到主菜單或從它的下一級菜單列表框退回均可用 Esc 鍵, Turbo C 2.0 所有菜單均采用這種方法進行操作
30、, 以下不再說明。1.13.4 Edit菜單按Alt+E 可進入編輯菜單, 若再回車, 則光標(biāo)出現(xiàn)在編輯窗口, 此時用戶可以 進行文本編輯。編輯方法基本與 wordstar 相同, 可用 F1 鍵獲得有關(guān)編輯方法的幫助信息。1.與編輯有關(guān)的功能鍵如下:F1 F5 F6F10獲得 Turbo C 2.0 編輯命令的幫助信息; 擴大編輯窗口到整個屏幕;在編輯窗口與信息窗口之間進行切換;從編輯窗口轉(zhuǎn)到主菜單。2.編輯命令簡介:PageUp PageDn Home End Ctrl+Y Ctrl+T Ctrl+KB Ctrl+KK Ctrl+KV Ctrl+KC Ctrl+KYCtrl+KR向前翻頁向
31、后翻頁將光標(biāo)移到所在行的開始將光標(biāo)移到所在行的結(jié)尾刪除光標(biāo)所在的一行刪除光標(biāo)所在處的一個詞設(shè)置塊開始設(shè)置塊結(jié)尾塊移動塊拷貝塊刪除讀文件Ctrl+KWCtrl+KP存文件塊文件打印第 10 頁Ctrl+F1Ctrl+Q Ctrl+Q如果光標(biāo)所在處為 Turbo C 2.0 庫函數(shù), 則獲得有關(guān)該函數(shù)的幫助信息查找 Turbo C 2.0 雙界符的后匹配符查找 Turbo C 2.0 雙界符的前匹配符說明:1)Turbo C 2.0 的雙界符包括以下幾種符號:a)b)c)d)e)f)g)花括符尖括符圓括符方括符注釋符雙引號單引號和<和> (和)和/*和*/ "'2)T
32、urbo C 2.0 在編輯文件時還有一種功能, 就是能夠自動縮進,非空字符對齊。在編輯窗口中, Ctrl+OL 為自動縮進開關(guān)的即光標(biāo)鍵。和上一個1.13.5 Run菜單按 Alt+R 可進入 Run 菜單,該菜單有以下各項,:1.Run:運行由 Project/Projectname 項指定的文件名或當(dāng)前編輯區(qū)的文件。如果對上次編譯后的源代碼未做過修改, 則直接運行到下一個斷點(沒有斷點則運行到結(jié)束)。否則先進行編譯、連接后才運行, 其熱鍵為 Ctrl+F9。2.3.Program reset:中止當(dāng)前的調(diào)試,分給程序的空間, 其熱鍵為 Ctrl+F2。Go to cursor::調(diào)試程序
33、時使用, 選擇該項可使程序運行到光標(biāo)所在行。光標(biāo)所在行必須為一條可執(zhí)行語句, 否則提示錯誤。其熱鍵為 F4。Trace into:在執(zhí)行一條調(diào)用其它用戶定義的子函數(shù)時, 若用 Trace into 項, 則執(zhí)行長條將跟蹤到該子函數(shù)內(nèi)部去執(zhí)行, 其熱鍵為 F7。4.5.Step over:執(zhí)行當(dāng)前函數(shù)的下一條語句, 即使用戶函數(shù)調(diào)用, 執(zhí)行長條也跟蹤進函第 11 頁數(shù) 內(nèi)部, 其熱鍵為 F8。6.User screen:顯示程序運行時在屏幕上顯示的結(jié)果。其熱鍵為 Alt+F5。1.13.6 Compile菜單按 Alt+C 可進入 Compile 菜單,該菜單有以下幾個內(nèi)容,:1.Compile
34、 to OBJ:將一個C 源文件編譯生成.OBJ 目標(biāo)文件,熱鍵為 Alt+F9。同時顯示生成的文件名。其2.Make EXE file:此命令生成一個.EXE 的文件, 并顯示生成的.EXE 文件名。其中.EXE 文件名是下面幾項之一:1)2)3)由 Project/Project name 說明的項目文件名。若沒有項目文件名, 則由 Primary C file 說明的源文件。若以上兩項都沒有文件名, 則為當(dāng)前窗口的文件名。3.4.Link EXE file:把當(dāng)前.OBJ 文件及庫文件連接在一起生成.EXE 文件。Build all:重新編譯項目里的所有文件, 并進行裝配生成.EXE 文
35、件。該命令不作過時檢查 (上面的幾條命令要作過時檢查, 即如果目前項目里源文件的日期和時間與目標(biāo)文件相同或更早, 則拒絕對源文件進行編譯)。Primary C file:當(dāng)在該項中指定了主文件后, 在以后的編譯中, 如沒有項目文件名則編譯此項中規(guī)定的主 C 文件, 如果編譯中有錯誤, 則將此文件調(diào)入編輯窗口, 不管目前窗口 中是不是主 C 文件。Get info:獲得有關(guān)當(dāng)前路徑、源文件名、源文件字節(jié)大小、編譯中的錯誤數(shù)目、可用空間等信息,如圖:5.6.第 12 頁1.13.7 Project菜單按 Alt+P 可進入 Project 菜單,該菜單包括以下內(nèi)容,:1.Project name:
36、項目名具有.PRJ 的擴展名, 其中包括將要編譯、連接的文件名。例一個程 序由 file1.c, file2.c, file3.c 組成, 要將這 3 個文件編譯裝配成一個 file.exe 的執(zhí)行文件, 可以先建立一個 file.prj 的項目文件, 其內(nèi)容如下:file1.c file2.c file3.c此時將 file.prj 放入 Project name 項中, 以后進行編譯時將自動對項目文件中規(guī)定的三個源文件分別進行編譯。然后連接成 file.exe 文件。如果其中有些文件已經(jīng)編譯成.OBJ 文第 13 頁件, 而又沒有修改過, 可直接寫上.OBJ 擴 展名。此時將不再編譯而只進
37、行連接。例如:file1.obj file2.c file3.c將不對 file1.c 進行編譯, 而直接連接。說明:當(dāng)項目文件中的每個文件無擴展名時, 均按源文件對待, 另外, 其中的文件也可以是庫文件, 但必須寫上擴展名.LIB。2.Break make on:由用戶選擇是否在有 Warining、Errors、Fatal Errors 時或 Link 之前Make 編譯。Auto dependencies:當(dāng)開關(guān)置為 on, 編譯時將檢查源文件與對應(yīng)的.OBJ 文件日期和時間, 否則不進 行檢查。Clear project:清除 Project/Project name 中的項目文件名。
38、Remove messages:把錯誤信息從信息窗口中清除掉。.13.8 Options菜單按 Alt+O 可進入 Options 菜單,該菜單對初學(xué)者來說要謹(jǐn)慎使用,該菜單有以下幾個內(nèi)容,:1.Compiler:本項選擇又有許多子菜單,可以讓用戶選擇硬件配置模型、調(diào)試技術(shù)、代碼優(yōu)化、信息和宏定義。這些子菜單:第 14 頁1)2)M:共有Tiny, small, medium, compact, large, huge 六種不同模式可由同戶選 擇。Define:打開一個宏定義框, 同戶可輸入宏定義。多重定義可同分號, 賦值可用等號。Code generation:它又有許多任選項
39、, 這些任選項告訴編譯器產(chǎn)生什么樣的目標(biāo)代碼。3)Calling convention 可選擇 C 或 Pascal 方式傳遞參數(shù)。Instruction setFloating point可選擇 8088/8086 或 80186/80286 指令系列??蛇x擇浮點、數(shù)學(xué)協(xié)處理器浮點或無浮點運算。Default char type規(guī)定 char 的類型。Alignonent規(guī)定地址對準(zhǔn)原則。Merge duplicate strings 作優(yōu)化用, 將重復(fù)的字符串合并在一起。Standard stack frame 產(chǎn)生一個標(biāo)準(zhǔn)的棧結(jié)構(gòu)。Test stack overflow 產(chǎn)生一段程序運行
40、時檢測堆棧溢出的代碼。Line number在.OBJ 文件中放進行號以供調(diào)試時用。OBJ debug information 在.OBJ 文件中產(chǎn)生調(diào)試信息。4)Optimization:它又有許多任選項。Optimize for 選擇是對程序小型化還是對程序速度進行優(yōu)化處理。Use register variable 用來選擇是否使用寄存器變量。Register optimization 盡可能使用寄存器變量以減少過多的取數(shù)操作。Jump optimization 通過去除多余的跳轉(zhuǎn)和調(diào)整循環(huán)與開關(guān)語句的辦法, 壓縮代碼。5)Source:它又有許多任選項。Indentifier leng
41、th 說明標(biāo)識符有效字符的個數(shù), 默認(rèn)為 32 個。Nested comments 是否嵌套注釋。ANSI keywords only 是只ANSI 關(guān)鍵字還是也Turbo C2.0 關(guān)鍵字。6)Error² Error stop after 多少個錯誤時停止編譯, 默認(rèn)為 25 個。² Warning stop after 多少個警告錯誤時停止編譯, 默認(rèn)為 100 個。第 15 頁Display warningPortability warning 移植性警告錯誤。ANSI Violations了 ANSI 關(guān)鍵字的警告錯誤。Common error 常見的警告錯誤。L
42、ess common error 少見的警告錯誤。7)Names :用于改變段(segment)、組(group) 和類(class)的名字,默認(rèn)值為 CODE, DATA,BSS。2.Linker:本菜單設(shè)置有關(guān)連接的選擇項,它有以下內(nèi)容,:1)2)3)4)5)6)7)Map file選擇是否產(chǎn)生.MAP 文件。Initialize segments 是否在連接時初始化沒有初始化的段。Devault libraries 是否在連接其它編譯程序產(chǎn)生的目標(biāo)文件時去尋找其缺省庫。Graphics library 是否連接 graphics 庫中的函數(shù)。Warn duplicate symbols
43、當(dāng)有重復(fù)符號時產(chǎn)生警告信息。Stack warinig 是否讓連接程序產(chǎn)生 No stack 的警告信息。Case-sensitive link 是否區(qū)分大、小寫字。3.Environment:菜單規(guī)定是否對某些文件自動存盤及制表鍵和屏幕大小的設(shè)置,它有以下內(nèi)容,:第 16 頁1)Message tracking:Current file 跟蹤在編輯窗口中的文件錯誤。All files 跟蹤所有文件錯誤。Off 不跟蹤。2)3)Keep message :編譯前是否清除 Message 窗口中的信息。Config auto save:選 on 時, 在Run, Shell 或集成開發(fā)環(huán)境之前,
44、如果Turbo C 2.0的配置被改過, 則所做的改動將存入配置文件中。選 off 時不存。4)5)6)7)8)Edit auto save:是否在 Run 或 Shell 之前, 自動編輯的源文件。Backup file:是否在源文件存盤時產(chǎn)生后備文件(.BAK 文件)。Tab size:設(shè)置制表鍵大小, 默認(rèn)為 8。Zoomed windows:將現(xiàn)行活動窗口放大到整個屏幕, 其熱鍵為 F5。Screen size 設(shè)置屏幕文本大小。4.Directories:規(guī)定編譯、連接所需文件的路徑,有下列各項,:第 17 頁(1)(2)(3)(4)(5)Include directories:包含
45、文件的路徑, 多個子目錄用""。Library directories:庫文件路徑, 多個子目錄用""。Output directoried:輸出文件(.OBJ, .EXE, .MAP 文件)的目錄。Turbo C directoried:Turbo C 所在的目錄。Pick file name:定義加載的 pick 文件名, 如不定義則從 currentpick file 中取。5.6.Arguments:用戶使用命令行參數(shù)。Save options:保存所有選擇的編譯、連接、調(diào)試和項目到配置文件中, 缺省的配置文件為 TCCONFIG.TC。Retr
46、ive options 裝入一個配置文件到 TC 中, TC 將使用該文件的選擇項。 Debug菜單按 A可選擇 Debug 菜單,該菜單主要用于查錯, 它包括以下內(nèi)容,:第 18 頁1.Evaluate1)2)3)Expression 要計算結(jié)果的表達式。Result 顯示表達式的計算結(jié)果。New value 賦給新值。2.3.4.Call stack:該項不可接觸。而在 Turbo C debuger 時用于檢查堆棧情況。Find function 在運行 Turbo C debugger 時用于顯示規(guī)定的函數(shù)。Refresh display 如果編輯窗口偶然被用戶窗口重寫
47、了可用此恢復(fù)編輯窗口的內(nèi)容。1.13.10Break/watch菜單按 Alt+B 可進入 Break/watch 菜單, 該菜單有以下內(nèi)容,:1.Add watch: 向監(jiān)視窗口一監(jiān)視表達式。第 19 頁.6.7.Delete watch:從監(jiān)視窗口中刪除當(dāng)前的監(jiān)視表達式。Edit watch:在監(jiān)視窗口中編輯一個監(jiān)視表達式。Remove all :watches 從監(jiān)視窗口中刪除所有的監(jiān)視表達式。Toggle breakpoint:對光標(biāo)所在的行設(shè)置或清除斷點。Clear all breakpoints:清除所有斷點。View next breakpoint:將光標(biāo)移動到下一
48、個斷點處。1.13.11Turbo C 2.0 的配置文件所謂配置文件是包含 Turbo C 2.0 有關(guān)信息的文件, 其中存有編譯、連接的選擇和路徑等信息。可以用下述方法建立 Turbo C 2.0 的配置:1.建立用戶自命名的配置文件:可以從 Options 菜單中選擇 Options/Save options 命令, 將當(dāng)前集成開發(fā)環(huán)境的所有配置存入一個由用戶命名的配置文件中。下次啟動 TC 時只要在 DOS 下鍵入:tc/c<用戶命名的配置文件名>就會按這個配置文件中的內(nèi)容作為 Turbo C 2.0 的選擇。2.若設(shè)置Options/Environment/Config
49、auto save 為on, 則集成開發(fā)環(huán)境時, 當(dāng)前的設(shè)置會自動存放到 Turbo C 2.0 配置文件 TCCONFIG.TC 中。Turbo C 在啟動時會自動尋找這個配置文件。3.用 TCINST 設(shè)置 Turbo C 的有關(guān)配置, 并將結(jié)果存入 TC.EXE 中。Turbo C在啟動時,若沒有找到配置文件,則取 TC.EXE 中的缺省值。第 20 頁2程序的2.4算法1算法的概念1簡單算法舉例1算法的特性4怎樣表示一個算法...6用自然語言表示算法4用流程圖表示算法4三種基本結(jié)構(gòu)和改進的流程圖8用N-S流程圖表示
50、算法9用偽代碼表示算法10用計算機語言表示算法112.5結(jié)構(gòu)化程序設(shè)計方法112 程序的算法一個程序應(yīng)包括:z對數(shù)據(jù)的描述。在程序中要指定數(shù)據(jù)的類型和數(shù)據(jù)的組織形式,即數(shù)據(jù)結(jié)構(gòu)(data structure)。對操作的描述。即操作步驟,也就是算法(algorithm)。zNikiklaus Wirth 提出的公式:數(shù)據(jù)結(jié)構(gòu)+算法=程序認(rèn)為:程序=算法+數(shù)據(jù)結(jié)構(gòu)+程序設(shè)計方法+語言工具和環(huán)境這 4 個方面是一個程序涉及所應(yīng)具備的知識。本課程的目的是使同學(xué)知道怎樣編寫一個 C 程序,進行編寫程序的初步訓(xùn)練,因此,只介紹算法的初步知識。2.1 算法的概念做任何事情都有一定的步驟。為解決一個問題而采取
51、的方法和步驟,就稱為算法。zz計算機算法:計算機能夠執(zhí)行的算法。計算機算法可分為兩大類:數(shù)值運算算法:求解數(shù)值;非數(shù)值運算算法:事務(wù)管理領(lǐng)域。2.2 簡單算法舉例【例 2.1】求 1×2×3×4×5。最原始方法:步驟 1:先求 1×2,得到結(jié)果 2。第 1 頁步驟 2:將步驟 1 得到的乘積 2 乘以 3,得到結(jié)果 6。步驟 3:將 6 再乘以 4,得 24。 步驟 4:將 24 再乘以 5,得 120。這樣的算法雖然正確,但太繁。改進的算法:S1:使t=1S2:S3:S4:使i=2使t×i, 乘積仍然放在在變量 t 中,可表示為 t
52、×it使i 的值+1,即 i+1iS5:如果i5, 返回重新執(zhí)行步驟 S3 以及其后的 S4 和 S5;否則,算法結(jié)束。如果計算 100!只需將 S5:若 i5 改成 i100 即可。如果該求 1×3×5×7×9×11,算法也只需做很少的改動: S1: 1tS2: 3iS3: t×itS4: i+2tS5:若 i11, 返回 S3,否則,結(jié)束。該算法不僅正確,而且是計算機較好的算法,因為計算機是高速運算的自輕而易舉。器,實現(xiàn)循環(huán)思考:若將 S5 寫成:S5:若 i11, 返回 S3;否則,結(jié)束?!纠?2.2】有 50 個學(xué)生
53、,要求將他們之中成績在 80 分以上者打印出來。如果,n 表示學(xué)生學(xué)號,ni 表示第個學(xué)生學(xué)號;g 表示學(xué)生成績,gi 表示第個學(xué)生成績; 則算法可表示如下:S1: 1iS2: 如果gi80,則打印ni 和 gi,否則不打印S3: i+1iS4:若 i50, 返回 S2,否則,結(jié)束?!纠?2.3】判定 2000 2500 年中的每一年是否閏年,將結(jié)果輸出。潤年的條件:1)2)能被 4 整除,但不能被 100 整除的年份;能被 100 整除,又能被 400 整除的年份;設(shè) y 為被檢測的年份,則算法可表示如下:S1: 2000y第 2 頁S2:若 y 不能被 4 整除,則輸出 y“不是閏年”,然后轉(zhuǎn)到 S6S3:若 y 能被 4 整除,不能被 100 整除,則輸出 y“是閏年”,然后轉(zhuǎn)到 S6S4:若 y 能被 100 整除,又能被 400 整除,輸出 y“是閏年” 否則輸出 y“不是閏年”, 然后轉(zhuǎn)到 S6S5:輸出 y“不是閏年”。S6:y+1yS7:當(dāng) y2500 時,返回 S2 繼續(xù)執(zhí)行,否則,結(jié)束。1 - 1 + 1 - 1 + . +-1123499100 。【例 2.4】求算
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 人教版(2024)七年級英語下冊Unit 4 單元測試卷(含答案)
- 交通標(biāo)線工程施工方案
- 防腐木六角亭施工方案
- 咸寧外墻氟碳漆施工方案
- 2025年蒙臺梭利數(shù)學(xué)教育 標(biāo)準(zhǔn)課件
- 浙江省余姚市蘭江中學(xué)2025屆中考五模生物試題含解析
- 企業(yè)注資合同范例
- 企業(yè)文化在年度計劃中的引導(dǎo)作用
- 網(wǎng)絡(luò)安全行業(yè)個人提升計劃
- 制定水體保護安全措施計劃
- 網(wǎng)絡(luò)安全事件應(yīng)急預(yù)案演練方案
- 普通工安全技術(shù)操作規(guī)程交底注意事項(8篇)
- 幼兒園主題探究活動設(shè)計和指導(dǎo)
- 《高等數(shù)學(xué)(第2版)》 高職 全套教學(xué)課件
- 雞爪買賣合同范本
- 五代十國史料輯存閱讀筆記
- 新疆烏魯木齊市天山區(qū)2024年中考數(shù)學(xué)質(zhì)量監(jiān)測試卷(附參考答案)
- 2022-2023學(xué)的人教版七年級下冊數(shù)學(xué)期末壓軸題訓(xùn)練
- 《輸變電工程綠色建造評價導(dǎo)則》
- 農(nóng)村宅基地和建房(規(guī)劃許可)申請表
- 2024年鐵嶺衛(wèi)生職業(yè)學(xué)院單招職業(yè)技能測試題庫及答案解析
評論
0/150
提交評論