版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、第1章 程序設計基本概念,本章主要介紹C語言程序的結構和書寫規(guī)則,以及Turbo C V2.0的基本操作。 1.1 C語言出現(xiàn)的歷史背景 1.2 語言特點 1.3 簡單的C程序介紹 1.4 C程序的上機步驟,內容提要:,1.1 C語言的歷史背景,語言的誕生與發(fā)展 在C語言誕生以前,系統(tǒng)軟件主要是用匯編語言編寫的。由于匯編語言程序依賴于計算機硬件,其可讀性和可移植性都很差;但一般的高級語言又難以實現(xiàn)對計算機硬件的直接操作(這正是匯編語言的優(yōu)勢),于是人們盼望有一種兼有匯編語言和高級語言特性的新語言。 本書以ANSI C新標準來介紹。,2、語言是貝爾實驗室于70年代初研制出來的,后來又被多次改進,
2、并出現(xiàn)了多種版本。80年初,美國國家標準化協(xié)會(ANSI),根據(jù)語言問世以來各種版本對語言的發(fā)展和擴充,制定了ANSI C標準(1989年再次做了修訂)。,ALGOL CPL BCPL B C語言,由一個國際委員會1957-1958設計,是許多程序語言的“開山鼻祖”,1963由英國的劍橋大學推出了combinde programming language語言,1970年由美國貝爾實驗室在BCPL基礎上并寫出了UNIX操作系統(tǒng),目前,在微機上廣泛使用的語言編譯系統(tǒng)有Microsoft C、Turbo C 、Borland C等。雖然它們的基本部分都是相同的,但還是有一些差異, 所以請大家注意自己
3、所使用的編譯系統(tǒng)的特點和規(guī)定(參閱相應的手冊)。 本書選定的上機環(huán)境是TC V2.0(DOS操作系統(tǒng))。,1.2 C語言的特點,C語言同時具有匯編語言和高級語言的優(yōu)勢。 語言簡潔、緊湊,使用方便、靈活。共只有32個關鍵字,9種控制語句。程序書寫自由,主要用小寫字母表示。 運算符極其豐富。共有34種運算符。 數(shù)據(jù)結構豐富,具有現(xiàn)代化語言的各種數(shù)據(jù)結構。數(shù)據(jù)類型有整型、實型、字符型、數(shù)組、指針、結構體等。,C語言的特點,具有結構化的控制語句。如:if-else、while、do-while、switch、for語句等。 語法限制不太嚴格,程序設計自由度大。 允許直接訪問物理地址,直接對硬件操作。
4、生成的目標代碼質量高,程序執(zhí)行效率高。 可移植性好。(與匯編語言相比),簡單的程序設計一般包括下面的幾個部分: 1.確定的數(shù)據(jù)結構 2.確定的算法 3.編碼 4.在計算機上調試 5.整理并寫出文檔,1.3 C程序的上機步驟,1.運行一個語言程序的一般過程 2.TC的啟動、退出與命令菜單 3.編輯并保存一個語言源程序 4.編譯、連接單個源程序文件 5.運行與查看結果 6.編輯下一個新的源程序,1.運行一個語言程序的一般過程 urbo 是一個集源程序編輯、編譯、連接、運行與調試于一體、 用菜單驅動的集成軟件環(huán)境。 運行一個語言程序的一般過程: (1)啟動TC,進入TC集成環(huán)境。 (2)編輯(或修改
5、)源程序。 (3)編譯。如果編譯成功,則可進行下一步操作;否則,返回(2)修改源程序,再重新編譯,直至編譯成功。 (4)連接。如果連接成功,則可進行下一步操作;否則,根據(jù)系統(tǒng)的錯誤提示,進行相應修改,再重新連接,直至連接成功。 (5)運行。通過觀察程序運行結果,驗證程序的正確性。如果出現(xiàn)邏輯錯誤,則必須返回(2)修改源程序,再重新編譯、連接和運行,直至程序正確。 (6)退出TC集成環(huán)境,結束本次程序運行。,主菜單 在Turbo C 2.0主屏幕頂上一行, 顯示下列內容: File Edit Run Compile Project Options Debug Break/watch 除Edit外
6、, 其它各項均有子菜單, 只要用Alt加上某項中第一個字母(即大寫字 母), 就可進入該項的子菜單中。 說明: 以上各項可用光標鍵移動色棒進行選擇, 回車則執(zhí)行。也可用每一項的第一個大寫字母直接選擇。若要退到主菜單或從它的下一級菜單列表框退回均可用Esc鍵, Turbo C 2.0所有菜單均采用這種方法進行操作, 以下不再說明。,一、File(文件)菜單 按Alt+F可進入File菜單, 該菜單包括以下內容: .Load(加載) 裝入一個文件, 可用類似DOS的通配符(如*.C)來進行列表選擇。也可裝入其它 擴展名的文件, 只要給出文件名(或只給路徑)即可。該項的熱鍵為F3, 即只要在主 菜單
7、中按F3即可進入該項, 而不需要先進入File菜單再選此項。 .Pick(選擇) 將最近裝入編輯窗口的8個文件列成一個表讓用戶選擇, 選擇后將該程序裝入 編輯區(qū), 并將光標置在上次修改過的地方。其熱健為Alt-F3。 .New(新文件) 說明文件是新的, 缺省文件名為NONAME.C, 存盤時可改名。 .Save(存盤) 將編輯區(qū)中的文件存盤, 若文件名是NONAME.C時, 將詢問是否更改文件名, 其熱鍵為F2。,.Write to(存盤) 可由用戶給出文件名將編輯區(qū)中的文件存盤, 若該文件已存在, 則詢問要不要 覆蓋。 .Directory(目錄) 顯示目錄及目錄中的文件, 并可由用戶選擇
8、。 .Change dir(改變目錄) 顯示當前目錄, 用戶可以改變顯示的目錄。 .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。,二、Edit(編輯)菜單 按Alt+E可進入編輯菜單, 若再回車, 則光標出現(xiàn)在編輯窗口, 此時用戶可以進行文本編輯。 編輯方法基本與wordstar相同, 可用F1鍵獲得有關編輯方法的幫助信息。 與編輯有關的功能鍵如下: F1 獲得
9、Turbo C 2.0編輯命令的幫助信息 F5 擴大編輯窗口到整個屏幕 F6 在編輯窗口與信息窗口之間進行切換 F10 從編輯窗口轉到主菜單,編輯命令簡介: PageUp 向前翻頁 PageDn 向后翻頁 Home 將光標移到所在行的開始 End 將光標移到所在行的結尾 Ctrl+Y 刪除光標所在的一行 Ctrl+T 刪除光標所在處的一個詞 Ctrl+KB 設置塊開始 Ctrl+KK 設置塊結尾 Ctrl+KV 塊移動 Ctrl+KC 塊拷貝 Ctrl+KY 塊刪除 Ctrl+KR 讀文件 Ctrl+KW 存文件 Ctrl+KP 塊文件打印 Ctrl+F1 如果光標所在處為Turbo C 2.
10、0庫函數(shù), 則獲得有關該函數(shù)的幫助信息 Ctrl+Q 查找Turbo C 2.0雙界符的后匹配符 Ctrl+Q 查找Turbo C 2.0雙界符的前匹配符,說明: 1. Turbo C 2.0的雙界符包括以下幾種符號: 花括符 和 尖括符 圓括符 (和) 方括符 和 注釋符 /*和*/ 雙引號 單引號 2. Turbo C 2.0在編輯文件時還有一種功能, 就是能夠自動縮進, 即光標定位和上一個非空字符對齊。在編輯窗口中, Ctrl+OL為自動縮進開關的控制鍵。,三、Run(運行)菜單 按Alt+R可進入Run菜單, 該菜單有以下各項: .Run(運行程序) 運行由Project/Projec
11、t name項指定的文件名或當前編輯區(qū)的文件。如果對上次編譯后的源代碼未做過修改, 則直接運行到下一個斷點(沒有斷點則運行到結束)。否則先進行編譯、連接后才運行, 其熱鍵為Ctrl+F9。 .Program reset(程序重啟) 中止當前的調試, 釋放分給程序的空間, 其熱鍵Ctrl+F2。 .Go to cursor(運行到光標處) 調試程序時使用, 選擇該項可使程序運行到光標所在行。光標所在行必須為一 條可執(zhí)行語句, 否則提示錯誤。其熱鍵為F4。,.Trace into(跟蹤進入) 在執(zhí)行一條調用其它用戶定義的子函數(shù)時, 若用Trace into項, 則執(zhí)行長條將 跟蹤到該子函數(shù)內部去執(zhí)
12、行, 其熱鍵為F7。 .Step over(單步執(zhí)行) 執(zhí)行當前函數(shù)的下一條語句, 即使用戶函數(shù)調用, 執(zhí)行長條也不會跟蹤進函數(shù)內部, 其熱鍵為F8。 .User screen(用戶屏幕) 顯示程序運行時在屏幕上顯示的結果。其熱鍵Alt+F5。,四、Compile(編譯)菜單 按Alt+C可進入Compile菜單, 該菜單有以下幾個內容: .Compile to OBJ(編譯生成目標碼) 將一個C源文件編譯生成.OBJ目標文件, 同時顯示生成的文件名。其熱鍵為Alt+F9。 .Make EXE file(生成執(zhí)行文件) 此命令生成一個.EXE的文件, 并顯示生成的.EXE文件名。其中.EXE文
13、件名是下面幾項之一。 1. 由Project/Project name說明的項目文件名。 2. 若沒有項目文件名, 則由Primary C file說明的源文件。 3. 若以上兩項都沒有文件名, 則為當前窗口的文件名。 .Link EXE file(連接生成執(zhí)行文件) 把當前.OBJ文件及庫文件連接在一起生成.EXE文件。,.Build all(建立所有文件) 重新編譯項目里的所有文件, 并進行裝配生成.EXE文件。該命令不作過時檢查 (上面的幾條命令要作過時檢查, 即如果目前項目里源文件的日期和時間與目標文件相同或更早, 則拒絕對源文件進行編譯)。 .Primary C file(主C文件)
14、 當在該項中指定了主文件后, 在以后的編譯中, 如沒有項目文件名則編譯此項中規(guī)定的主C文件, 如果編譯中有錯誤, 則將此文件調入編輯窗口, 不管目前窗口中是不是主C文件。 .Get info(獲得有關當前路徑、源文件名、源文件字節(jié)大小、編譯中的錯誤數(shù)目、可用空間等信息。,五、Project(項目)菜單 按Alt+P可進入Project菜單, 該菜單包括以下內容: .Project name(項目名) 項目名具有.PRJ的擴展名, 其中包括將要編譯、連接的文件名。例如有一個程序由file1.c, file2.c, file3.c組成, 要將這3個文件編譯裝配成一個file.exe的執(zhí)行文件, 可
15、以先建立一個file.prj的項目文件, 其內容如下: file1.c file2.c file3.c 此時將file.prj放入Project name項中, 以后進行編譯時將自動對項目文件中規(guī)定的三個源文件分別進行編譯。然后連接成file.exe文件。,如果其中有些文件已經編譯成.OBJ文件, 而又沒有修改過, 可直接寫上.OBJ擴展名。此時將不再編譯而只進行連接。 例如:file1.obj file2.c file3.c 將不對file1.c進行編譯, 而直接連接。 說明: 當項目文件中的每個文件無擴展名時, 均按源文件對待, 另外, 其中的文件也可以是庫文件, 但必須寫上擴名.LIB。
16、,.Break make on(中止編譯) 由用戶選擇是否在有Warining(警告)、Errors(錯誤)、Fatal Errors( 致命錯誤)時或Link(連接)之前退出Make編譯。 .Auto dependencies(自動依賴) 當開關置為on, 編譯時將檢查源文件與對應的.OBJ文件日期和時間, 否則不進行檢查。 .Clear project(清除項目文件) 清除Project/Project name中的項目文件名。 .Remove messages(刪除信息) 把錯誤信息從信息窗口中清除掉。,六、Options(選擇菜單) 按Alt+O可進入Options菜單, 該菜單對初學
17、者來說要謹慎使用。 .Compiler(編譯器) 本項選擇又有許多子菜單, 可以讓用戶選擇硬件配置、存儲模型、調試技術、代碼優(yōu)化、對話信息控制和宏定義。這些子菜單如下:,Model 共有Tiny, small, medium, compact, large, huge 六種不同模式可由同戶選擇。,Define 打開一個宏定義框, 同戶可輸入宏定義。多重定義可同分號, 賦值可用等號。 Code generation 它又有許多任選項, 這些任選項告訴編譯器產生什么樣的目標代碼。 Calling convention 可選擇C或Pascal方式傳遞參數(shù)。 Instruction set 可選擇80
18、88/8086或80186/80286指令系列。 Floating point 可選擇仿真浮點、數(shù)學協(xié)處理器浮點或無浮點運算。 Default char type 規(guī)定char的類型。 Alignonent 規(guī)定地址對準原則。 Merge duplicate strings 作優(yōu)化用, 將重復的字符串合并在一起。 Standard stack frame 產生一個標準的棧結構。 Test stack overflow 產生一段程序運行時檢測堆棧溢出的代碼。 Line number 在.OBJ文件中放進行號以供調試時用。 OBJ debug information 在.OBJ文件中產生調試信息。,Optimization Optimize for 選擇是對程序小型化還是對程序速度進行優(yōu)化處理。 Use register variable 用來選擇是否允許使用寄存器變量。 Register optimization 盡可能使用寄存器變量以減少過多的取數(shù)操作。 Jump optimization通過去除多余的跳轉和調整循環(huán)與開關語句的辦法, 壓縮代碼。 Source Indentifier length 說明標識符有效字符的個數(shù), 默認為32個。 Nested comments 是否允許嵌套注釋。 ANSI keywords only是只允許ANSI
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 馬鞍山安徽馬鞍山博望區(qū)政府相關部門招聘派遣制工作人員7人筆試歷年參考題庫附帶答案詳解
- 南通2025年江蘇南通如東縣教育體育系統(tǒng)招聘教師8人筆試歷年參考題庫附帶答案詳解
- 職業(yè)性肌肉骨骼疾病的遠程康復方案
- 上海上海戲劇學院近期招聘18人筆試歷年參考題庫附帶答案詳解
- 2026年金融分析師CFA考試精講練習題
- 2026年物流行業(yè)黨建在供應鏈優(yōu)化中的功能試題
- 2026年軟件測試工程師專業(yè)水平測試軟件測試技術與方法題
- 2026年英語口語商務交流實戰(zhàn)練習題
- 2026年智能科技產品經理專業(yè)認證題目庫
- 2026年金融投資分析師考試題庫策略與技巧的實戰(zhàn)練習
- 2026中國電信四川公用信息產業(yè)有限責任公司社會成熟人才招聘備考題庫及答案詳解參考
- 南瑞9622型6kV變壓器差動保護原理及現(xiàn)場校驗實例培訓課件
- 統(tǒng)編版(2024)七年級上冊道德與法治期末復習必背知識點考點清單
- 2026年春節(jié)放假前員工安全培訓
- 《春秋》講解課件
- 青少年抑郁障礙的護理與康復訓練
- 農業(yè)養(yǎng)殖認養(yǎng)協(xié)議書
- T-CAPC 019-2025 零售藥店常見輕微病癥健康管理規(guī)范
- 康定情歌音樂鑒賞
- 2025年四川省解除(終止)勞動合同證明書模板
- 2025年焊工證考試模擬試題含答案
評論
0/150
提交評論