第1章C語言概論_第1頁
第1章C語言概論_第2頁
第1章C語言概論_第3頁
第1章C語言概論_第4頁
第1章C語言概論_第5頁
已閱讀5頁,還剩20頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第1章C語言概論1.1C語言的簡單歷史1.2結(jié)構(gòu)化程序設(shè)計1.3編寫一個簡單的C語言程序1.4TurboC的基本操作1、C語言的誕生與發(fā)展(1)在C語言誕生以前,系統(tǒng)軟件主要是用匯編語言編寫的。由于匯編語言程序依賴于計算機硬件,其可讀性和可移植性都很差;但一般的高級語言又難以實現(xiàn)對計算機硬件的直接操作(這正是匯編語言的優(yōu)勢),于是人們盼望有一種兼有匯編語言和高級語言特性的新語言。(2)C語言是貝爾實驗室于70年代初研制出來的,后來又被多次改進(jìn),并出現(xiàn)了多種版本。80年代初,美國國家標(biāo)準(zhǔn)化協(xié)會(ANSI),根據(jù)C語言問世以來各種版本對C語言的發(fā)展和擴充,制定了ANSIC標(biāo)準(zhǔn)(1989年再次做了修訂)。本書以ANSIC新標(biāo)準(zhǔn)來介紹。1.1C語言的簡單歷史2.C語言的特點

C語言同時具有匯編語言和高級語言的優(yōu)勢。(1)語言簡潔、緊湊,使用方便、靈活。(2)運算符極其豐富。(3)數(shù)據(jù)結(jié)構(gòu)豐富。(4)具有結(jié)構(gòu)化的控制語句。(5)語法限制不太嚴(yán)格,程序設(shè)計自由度大(6)生成的目標(biāo)代碼質(zhì)量高,程序執(zhí)行效率高。(7)可移植性好(較之匯編語言)。(8)可以直接操縱硬件。>>>>>32個關(guān)鍵字autobreakcasecharconstcontinuedefaultdodoubleelseenumexternfloatforgotoifintlongregisterreturnshortsignedsizeofstaticstructswitchtypedefunsignedunionvoidvolatilewhile<算術(shù)運算符:+-*/%++--關(guān)系運算符:<<===>>=!=邏輯運算符:!&&||位運算符:<<>>~|^&賦值運算符:=及其擴展條件運算符:?:逗號運算符:,指針運算符:*&求字節(jié)數(shù):sizeof強制類型轉(zhuǎn)換:(類型)分量運算符:.->下標(biāo)運算符:[]其它:()-34種運算符:<

C數(shù)據(jù)類型:基本類型構(gòu)造類型指針類型空類型void定義類型typedef數(shù)值類型字符類型char枚舉類型enum整型浮點型單精度型float雙精度型double短整型short長整型long整型int數(shù)組結(jié)構(gòu)體struct共用體union<9種控制語句if()~else~for()~while()~do~while()continuebreakswitchgotoreturn<1.程序程序就是完成某項任務(wù)或事務(wù)的一種既定方式和過程。2.算法所謂算法,就是為完成某項任務(wù)或事務(wù)而采用的方法和步驟。3.程序設(shè)計程序設(shè)計就是人們編制計算機程序的工作。1.2結(jié)構(gòu)化程序設(shè)計

1.2.1算法和程序1.結(jié)構(gòu)化程序設(shè)計思想結(jié)構(gòu)化程序設(shè)計的基本含義是指一個系統(tǒng)由層次化的程序模塊構(gòu)成,每一個模塊只有一個入口和出口,每一個模塊只歸某個上級模塊調(diào)用,有模塊聯(lián)結(jié)的準(zhǔn)則和構(gòu)造模塊的標(biāo)準(zhǔn),并且用系統(tǒng)結(jié)構(gòu)圖來表達(dá)系統(tǒng)的結(jié)構(gòu),盡可能用最優(yōu)的方式將系統(tǒng)內(nèi)各個部分組織起來,而不是用若干個程序去拼湊。1.2.2結(jié)構(gòu)化程序設(shè)計的思想和方法2.結(jié)構(gòu)化程序設(shè)計方法(1)自頂向下(2)逐步細(xì)化(3)模塊化設(shè)計(4)結(jié)構(gòu)化編碼圖1.1求解2個整型數(shù)據(jù)平均值的系統(tǒng)框圖

一般來說完成一個程序的設(shè)計主要包括下面4個步驟:(1)分析問題。(2)構(gòu)造問題模型及求解步驟。(3)模塊的代碼實現(xiàn)。(4)調(diào)試與優(yōu)化代碼,完善程序。1.3編寫一個簡單的C語言程序

1.3.1程序設(shè)計的一般方法例題1.1求任意兩個整型數(shù)的平均值。/*本函數(shù)計算2個整型數(shù)的平均值*/#include<stdio.h>-----預(yù)處理命令行main()-----函數(shù)首部{/*變量聲明及初始化-----數(shù)據(jù)輸入*/intinumber1,inumber2,sum;floataverage;printf("Pleaseentertwonumbers:");scanf("%d%d",&inumber1,&inumber2);/*求解平均值-----數(shù)據(jù)處理*/sum=inumber1+inumber2;average=sum/20;/*輸出平均值-----數(shù)據(jù)輸出*/printf("AVERAGE=%f\n",average);}

(1)C語言程序由函數(shù)構(gòu)成。

(2)C語言程序的第一行include稱為文件包含命令。(3)函數(shù)包括函數(shù)的首部main()和函數(shù)體。C語言程序都有主函數(shù)main(),且總是從main()函數(shù)開始執(zhí)行。每一個C語言程序都必須有,且只能有一個主函數(shù)。函數(shù)體包括兩部分,即聲明部分和執(zhí)行部分。例題1.1中,聲明部分包括聲明了3個整型數(shù)據(jù)inumber1,inumber2,sum和1個實型數(shù)據(jù)average。(4)語句以分號結(jié)束,一個分號就是一個語句。(5)用/*……*/做注釋。1.3.2C語言程序的一般組成

一般來說,衡量一個程序設(shè)計的優(yōu)劣,可以從下面幾個方面考慮:(1)功能較符合要求,保證可靠性。(2)時間特性。(3)空間特性。(4)可移植性。(5)易維護(hù)性。(6)可擴展性。1.3.3程序的質(zhì)量1.C語言程序書寫中應(yīng)當(dāng)注意的問題

(1)用分號作為語句的結(jié)束符,不可省略(即便是最后一個語句也不能省略)。但預(yù)處理命令、函數(shù)頭和花括號(})之后不能加分號。(2)第一行是預(yù)處理命令行,其中的指令必須以符號“#”開始,所指定的頭文件也必須用引號或尖括號標(biāo)識。例如,#include"stdio.h"或#include<stdio.h>。(3)主函數(shù)main()后的括號不能缺省。1.3.4書寫程序時應(yīng)遵循的規(guī)則2.編碼風(fēng)格(1)源程序通常使用小寫字母,只有符號常量或其他特殊用途的符號才大寫。(2)C語言可以一個語句占一行,也可多個語句占一行。(3)程序代碼采用縮進(jìn)格式。(4)建議同一層次的語句應(yīng)左對齊。(5)用花括號對({})表示各個結(jié)構(gòu)層次的范圍。它可以表示函數(shù),也可以表示循環(huán)體等。(6)一個語句中不同成分之間應(yīng)使用空格隔開。標(biāo)識符、關(guān)鍵字之間必須至少加一個空格以示間隔。若已有明顯的間隔符,也可以不再加空格來間隔。

(7)程序中的空白行不影響程序的執(zhí)行。(8)建議使用注釋語句,以增加程序的可讀性。(9)程序塊的分界符(即花括號“{”和“}”)應(yīng)各獨占一行并且位于同一列,同時與引用它們的語句左對齊。1.運行一個C語言程序的一般過程TurboC是一個集源程序編輯、編譯、連接、運行與調(diào)試于一體、用菜單驅(qū)動的集成軟件環(huán)境。運行一個C語言程序的一般過程:(1)啟動TC,進(jìn)入TC集成環(huán)境。(2)編輯(或修改)源程序。(3)編譯。如果編譯成功,則可進(jìn)行下一步操作;否則,返回(2)修改源程序,再重新編譯,直至編譯成功。(4)連接。如果連接成功,則可進(jìn)行下一步操作;否則,根據(jù)系統(tǒng)的錯誤提示,進(jìn)行相應(yīng)修改,再重新連接,直至連接成功。(5)運行。通過觀察程序運行結(jié)果,驗證程序的正確性。如果出現(xiàn)邏輯錯誤,則必須返回(2)修改源程序,再重新編譯、連接和運行,直至程序正確。(6)退出TC集成環(huán)境,結(jié)束本次程序運行。1.4TurboC的基本操作2.TC的啟動、退出與命令菜單(1)啟動啟動TurboC后,其主菜單條橫向排列在屏幕頂端,并被激活,其中File主項成為當(dāng)前項。主菜單的下面,是Edit(編輯)窗口和Message(消息)窗口。兩個窗口中,頂端橫線為雙線顯示的,表示該窗口是活動窗口。編輯窗口的頂端為狀態(tài)行,其中:.Line1Col1:顯示光標(biāo)所在的行號和列號,即光標(biāo)位置。.Insert:表示編輯狀態(tài)處于“插入”。當(dāng)處于“改寫”狀態(tài)時,此處為空白。.c:NONAME.C:顯示當(dāng)前正在編輯的文件名。顯示為“NONAME.C”時,表示用戶尚未給文件命名。屏幕底端是7個功能鍵的說明,以及NumLock鍵的狀態(tài)(顯示“NUM”時,表示處于“數(shù)字鍵”狀態(tài);空白,表示“控制鍵”狀態(tài))。

(2)命令菜單的使用1)按下功能鍵F10,激活主菜單。如果主菜單已經(jīng)被激活,則直接轉(zhuǎn)下一步。2)用左、右方向鍵移動光帶,定位于需要的主項上,然后再按回車鍵,打開其子菜單(縱向排列)。3)用上、下方向鍵移動光帶,定位于需要的子項上,回車即可。執(zhí)行完選定的功能后,系統(tǒng)自動關(guān)閉菜單。注意:菜單激活后,又不使用,可再按F10/Esc鍵關(guān)閉,返回原來狀態(tài)。

(3)退出TurboC

退出TC有兩種方法:1)菜單法:File|Quit(先選擇File主項,再選擇并執(zhí)行Quit子項)2)快捷鍵法:Alt+“X”(先按下Alt鍵并保持,再按字母鍵X,然后同時放開)3.編輯并保存一個C語言源程序(1)激活主菜單,選擇并執(zhí)行File|Load項(快捷鍵:F3)。(2)在“LoadFileName”窗口,輸入源程序文件名。文件名的輸入有兩種方法:直接輸入和選擇輸入。1)直接輸入按照文件名的組成字符串,逐個字符輸入即可。如果是已經(jīng)存在的文件,系統(tǒng)就在編輯窗口顯示該文件的內(nèi)容,可供編輯、修改。如果是新文件,則給出一個空白編輯窗口,可供輸入新的源程序。如果該文件不在當(dāng)前目錄下,則需要冠以路徑名和(或)盤符。2)選擇文件(僅適用于已經(jīng)存在的源程序文件)①空回車,打開當(dāng)前目錄下、后綴為.C的所有文件的文件名窗口。②用上、下、左、右方向鍵,將光帶定位于所需的文件名上。③按回車鍵。(3)常用編輯操作在編輯源程序過程中,隨時都可以按F2鍵(或File|Save),將當(dāng)前編輯的文件存盤,然后繼續(xù)編輯。這是一個良好的習(xí)慣!關(guān)于在線幫助:在任何窗口(或狀態(tài))下,按F1鍵激活活動窗口(或狀態(tài))的在線幫助:.下一頁──PageDown,返回上一頁──PageUp.關(guān)閉在線幫助、返回原窗口(或狀態(tài))──Esc.返回前一個在線幫助屏──Alt+F1(無論在線幫助是否被激活).返回在線幫助索引──F1:激活在線幫助后,再按F1,則返回在線幫助索引,以便查詢其它類別在線幫助信息。.查詢庫函數(shù)的在線幫助信息──^F1:將光標(biāo)移到需要查詢函數(shù)名的首字符上,然后鍵入^F1,即可獲得該庫函數(shù)的在線幫助信息。注:為簡化描述,用“^”代表“Ctrl”鍵。^Fn就是Ctrl+Fn,下同。

4.編譯、連接──單個源程序文件

選擇并執(zhí)行Compile|MakeEXEFile項(快捷鍵:F9),則TC將自動完成對當(dāng)前正在編輯的源程序文件的編譯、連接,并生成可執(zhí)行文件。如果源程序有語法錯誤,系統(tǒng)將在屏幕中央的“Compiling”(編譯)窗口底端提示“Error:Pressanykey”(錯誤:按任意鍵)。此時,按空格鍵,屏幕下端的“Message”(消息)窗口被激活,顯示出錯(或警告)信息,光帶停在第一

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論