版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第1章C語言概論1.1C語言的簡單歷史1.2結(jié)構(gòu)化程序設(shè)計(jì)1.3編寫一個(gè)簡單的C語言程序1.4TurboC的基本操作1、C語言的誕生與發(fā)展(1)在C語言誕生以前,系統(tǒng)軟件主要是用匯編語言編寫的。由于匯編語言程序依賴于計(jì)算機(jī)硬件,其可讀性和可移植性都很差;但一般的高級語言又難以實(shí)現(xiàn)對計(jì)算機(jī)硬件的直接操作(這正是匯編語言的優(yōu)勢),于是人們盼望有一種兼有匯編語言和高級語言特性的新語言。(2)C語言是貝爾實(shí)驗(yàn)室于70年代初研制出來的,后來又被多次改進(jìn),并出現(xiàn)了多種版本。80年代初,美國國家標(biāo)準(zhǔn)化協(xié)會(huì)(ANSI),根據(jù)C語言問世以來各種版本對C語言的發(fā)展和擴(kuò)充,制定了ANSIC標(biāo)準(zhǔn)(1989年再次做了修訂)。本書以ANSIC新標(biāo)準(zhǔn)來介紹。1.1C語言的簡單歷史2.C語言的特點(diǎn)
C語言同時(shí)具有匯編語言和高級語言的優(yōu)勢。(1)語言簡潔、緊湊,使用方便、靈活。(2)運(yùn)算符極其豐富。(3)數(shù)據(jù)結(jié)構(gòu)豐富。(4)具有結(jié)構(gòu)化的控制語句。(5)語法限制不太嚴(yán)格,程序設(shè)計(jì)自由度大(6)生成的目標(biāo)代碼質(zhì)量高,程序執(zhí)行效率高。(7)可移植性好(較之匯編語言)。(8)可以直接操縱硬件。>>>>>32個(gè)關(guān)鍵字autobreakcasecharconstcontinuedefaultdodoubleelseenumexternfloatforgotoifintlongregisterreturnshortsignedsizeofstaticstructswitchtypedefunsignedunionvoidvolatilewhile<算術(shù)運(yùn)算符:+-*/%++--關(guān)系運(yùn)算符:<<===>>=!=邏輯運(yùn)算符:!&&||位運(yùn)算符:<<>>~|^&賦值運(yùn)算符:=及其擴(kuò)展條件運(yùn)算符:?:逗號運(yùn)算符:,指針運(yùn)算符:*&求字節(jié)數(shù):sizeof強(qiáng)制類型轉(zhuǎn)換:(類型)分量運(yùn)算符:.->下標(biāo)運(yùn)算符:[]其它:()-34種運(yùn)算符:<
C數(shù)據(jù)類型:基本類型構(gòu)造類型指針類型空類型void定義類型typedef數(shù)值類型字符類型char枚舉類型enum整型浮點(diǎn)型單精度型float雙精度型double短整型short長整型long整型int數(shù)組結(jié)構(gòu)體struct共用體union<9種控制語句if()~else~for()~while()~do~while()continuebreakswitchgotoreturn<1.程序程序就是完成某項(xiàng)任務(wù)或事務(wù)的一種既定方式和過程。2.算法所謂算法,就是為完成某項(xiàng)任務(wù)或事務(wù)而采用的方法和步驟。3.程序設(shè)計(jì)程序設(shè)計(jì)就是人們編制計(jì)算機(jī)程序的工作。1.2結(jié)構(gòu)化程序設(shè)計(jì)
1.2.1算法和程序1.結(jié)構(gòu)化程序設(shè)計(jì)思想結(jié)構(gòu)化程序設(shè)計(jì)的基本含義是指一個(gè)系統(tǒng)由層次化的程序模塊構(gòu)成,每一個(gè)模塊只有一個(gè)入口和出口,每一個(gè)模塊只歸某個(gè)上級模塊調(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)各個(gè)部分組織起來,而不是用若干個(gè)程序去拼湊。1.2.2結(jié)構(gòu)化程序設(shè)計(jì)的思想和方法2.結(jié)構(gòu)化程序設(shè)計(jì)方法(1)自頂向下(2)逐步細(xì)化(3)模塊化設(shè)計(jì)(4)結(jié)構(gòu)化編碼圖1.1求解2個(gè)整型數(shù)據(jù)平均值的系統(tǒng)框圖
一般來說完成一個(gè)程序的設(shè)計(jì)主要包括下面4個(gè)步驟:(1)分析問題。(2)構(gòu)造問題模型及求解步驟。(3)模塊的代碼實(shí)現(xiàn)。(4)調(diào)試與優(yōu)化代碼,完善程序。1.3編寫一個(gè)簡單的C語言程序
1.3.1程序設(shè)計(jì)的一般方法例題1.1求任意兩個(gè)整型數(shù)的平均值。/*本函數(shù)計(jì)算2個(gè)整型數(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í)行。每一個(gè)C語言程序都必須有,且只能有一個(gè)主函數(shù)。函數(shù)體包括兩部分,即聲明部分和執(zhí)行部分。例題1.1中,聲明部分包括聲明了3個(gè)整型數(shù)據(jù)inumber1,inumber2,sum和1個(gè)實(shí)型數(shù)據(jù)average。(4)語句以分號結(jié)束,一個(gè)分號就是一個(gè)語句。(5)用/*……*/做注釋。1.3.2C語言程序的一般組成
一般來說,衡量一個(gè)程序設(shè)計(jì)的優(yōu)劣,可以從下面幾個(gè)方面考慮:(1)功能較符合要求,保證可靠性。(2)時(shí)間特性。(3)空間特性。(4)可移植性。(5)易維護(hù)性。(6)可擴(kuò)展性。1.3.3程序的質(zhì)量1.C語言程序書寫中應(yīng)當(dāng)注意的問題
(1)用分號作為語句的結(jié)束符,不可省略(即便是最后一個(gè)語句也不能省略)。但預(yù)處理命令、函數(shù)頭和花括號(})之后不能加分號。(2)第一行是預(yù)處理命令行,其中的指令必須以符號“#”開始,所指定的頭文件也必須用引號或尖括號標(biāo)識。例如,#include"stdio.h"或#include<stdio.h>。(3)主函數(shù)main()后的括號不能缺省。1.3.4書寫程序時(shí)應(yīng)遵循的規(guī)則2.編碼風(fēng)格(1)源程序通常使用小寫字母,只有符號常量或其他特殊用途的符號才大寫。(2)C語言可以一個(gè)語句占一行,也可多個(gè)語句占一行。(3)程序代碼采用縮進(jìn)格式。(4)建議同一層次的語句應(yīng)左對齊。(5)用花括號對({})表示各個(gè)結(jié)構(gòu)層次的范圍。它可以表示函數(shù),也可以表示循環(huán)體等。(6)一個(gè)語句中不同成分之間應(yīng)使用空格隔開。標(biāo)識符、關(guān)鍵字之間必須至少加一個(gè)空格以示間隔。若已有明顯的間隔符,也可以不再加空格來間隔。
(7)程序中的空白行不影響程序的執(zhí)行。(8)建議使用注釋語句,以增加程序的可讀性。(9)程序塊的分界符(即花括號“{”和“}”)應(yīng)各獨(dú)占一行并且位于同一列,同時(shí)與引用它們的語句左對齊。1.運(yùn)行一個(gè)C語言程序的一般過程TurboC是一個(gè)集源程序編輯、編譯、連接、運(yùn)行與調(diào)試于一體、用菜單驅(qū)動(dòng)的集成軟件環(huán)境。運(yùn)行一個(gè)C語言程序的一般過程:(1)啟動(dòng)TC,進(jìn)入TC集成環(huán)境。(2)編輯(或修改)源程序。(3)編譯。如果編譯成功,則可進(jìn)行下一步操作;否則,返回(2)修改源程序,再重新編譯,直至編譯成功。(4)連接。如果連接成功,則可進(jìn)行下一步操作;否則,根據(jù)系統(tǒng)的錯(cuò)誤提示,進(jìn)行相應(yīng)修改,再重新連接,直至連接成功。(5)運(yùn)行。通過觀察程序運(yùn)行結(jié)果,驗(yàn)證程序的正確性。如果出現(xiàn)邏輯錯(cuò)誤,則必須返回(2)修改源程序,再重新編譯、連接和運(yùn)行,直至程序正確。(6)退出TC集成環(huán)境,結(jié)束本次程序運(yùn)行。1.4TurboC的基本操作2.TC的啟動(dòng)、退出與命令菜單(1)啟動(dòng)啟動(dòng)TurboC后,其主菜單條橫向排列在屏幕頂端,并被激活,其中File主項(xiàng)成為當(dāng)前項(xiàng)。主菜單的下面,是Edit(編輯)窗口和Message(消息)窗口。兩個(gè)窗口中,頂端橫線為雙線顯示的,表示該窗口是活動(dòng)窗口。編輯窗口的頂端為狀態(tài)行,其中:.Line1Col1:顯示光標(biāo)所在的行號和列號,即光標(biāo)位置。.Insert:表示編輯狀態(tài)處于“插入”。當(dāng)處于“改寫”狀態(tài)時(shí),此處為空白。.c:NONAME.C:顯示當(dāng)前正在編輯的文件名。顯示為“NONAME.C”時(shí),表示用戶尚未給文件命名。屏幕底端是7個(gè)功能鍵的說明,以及NumLock鍵的狀態(tài)(顯示“NUM”時(shí),表示處于“數(shù)字鍵”狀態(tài);空白,表示“控制鍵”狀態(tài))。
(2)命令菜單的使用1)按下功能鍵F10,激活主菜單。如果主菜單已經(jīng)被激活,則直接轉(zhuǎn)下一步。2)用左、右方向鍵移動(dòng)光帶,定位于需要的主項(xiàng)上,然后再按回車鍵,打開其子菜單(縱向排列)。3)用上、下方向鍵移動(dòng)光帶,定位于需要的子項(xiàng)上,回車即可。執(zhí)行完選定的功能后,系統(tǒng)自動(dòng)關(guān)閉菜單。注意:菜單激活后,又不使用,可再按F10/Esc鍵關(guān)閉,返回原來狀態(tài)。
(3)退出TurboC
退出TC有兩種方法:1)菜單法:File|Quit(先選擇File主項(xiàng),再選擇并執(zhí)行Quit子項(xiàng))2)快捷鍵法:Alt+“X”(先按下Alt鍵并保持,再按字母鍵X,然后同時(shí)放開)3.編輯并保存一個(gè)C語言源程序(1)激活主菜單,選擇并執(zhí)行File|Load項(xiàng)(快捷鍵:F3)。(2)在“LoadFileName”窗口,輸入源程序文件名。文件名的輸入有兩種方法:直接輸入和選擇輸入。1)直接輸入按照文件名的組成字符串,逐個(gè)字符輸入即可。如果是已經(jīng)存在的文件,系統(tǒng)就在編輯窗口顯示該文件的內(nèi)容,可供編輯、修改。如果是新文件,則給出一個(gè)空白編輯窗口,可供輸入新的源程序。如果該文件不在當(dāng)前目錄下,則需要冠以路徑名和(或)盤符。2)選擇文件(僅適用于已經(jīng)存在的源程序文件)①空回車,打開當(dāng)前目錄下、后綴為.C的所有文件的文件名窗口。②用上、下、左、右方向鍵,將光帶定位于所需的文件名上。③按回車鍵。(3)常用編輯操作在編輯源程序過程中,隨時(shí)都可以按F2鍵(或File|Save),將當(dāng)前編輯的文件存盤,然后繼續(xù)編輯。這是一個(gè)良好的習(xí)慣!關(guān)于在線幫助:在任何窗口(或狀態(tài))下,按F1鍵激活活動(dòng)窗口(或狀態(tài))的在線幫助:.下一頁──PageDown,返回上一頁──PageUp.關(guān)閉在線幫助、返回原窗口(或狀態(tài))──Esc.返回前一個(gè)在線幫助屏──Alt+F1(無論在線幫助是否被激活).返回在線幫助索引──F1:激活在線幫助后,再按F1,則返回在線幫助索引,以便查詢其它類別在線幫助信息。.查詢庫函數(shù)的在線幫助信息──^F1:將光標(biāo)移到需要查詢函數(shù)名的首字符上,然后鍵入^F1,即可獲得該庫函數(shù)的在線幫助信息。注:為簡化描述,用“^”代表“Ctrl”鍵。^Fn就是Ctrl+Fn,下同。
4.編譯、連接──單個(gè)源程序文件
選擇并執(zhí)行Compile|MakeEXEFile項(xiàng)(快捷鍵:F9),則TC將自動(dòng)完成對當(dāng)前正在編輯的源程序文件的編譯、連接,并生成可執(zhí)行文件。如果源程序有語法錯(cuò)誤,系統(tǒng)將在屏幕中央的“Compiling”(編譯)窗口底端提示“Error:Pressanykey”(錯(cuò)誤:按任意鍵)。此時(shí),按空格鍵,屏幕下端的“Message”(消息)窗口被激活,顯示出錯(cuò)(或警告)信息,光帶停在第一
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度食品銷售合同模板3篇
- 2025版攪拌車運(yùn)輸服務(wù)與勞務(wù)派遣合同2篇
- 2025版建筑勞務(wù)分包及風(fēng)險(xiǎn)評估服務(wù)合同3篇
- 2025版BEC商務(wù)英語水平認(rèn)證考試輔導(dǎo)合同3篇
- 二零二五年度二手手機(jī)買賣與回收合同3篇
- 二零二五年度二手房買賣合同公證所需材料與手續(xù)詳解3篇
- 2025版客車租賃合同爭議解決方式3篇
- 自動(dòng)化系統(tǒng)仿真課程設(shè)計(jì)
- 直流調(diào)速器課程設(shè)計(jì)
- 2025版旅游推介節(jié)目制作合同3篇
- 企業(yè)大學(xué)商學(xué)院建設(shè)方案
- 部編人教版 六年級下冊道德與法治課堂作業(yè)(含答案)
- 幼兒園大班數(shù)學(xué):《長頸鹿的水果店》 課件
- 獨(dú)生子女證明(模板)
- 侵入性器械、操作相關(guān)感染防控制度
- 更換電表申請書3篇
- 2019年北京外國語大學(xué)博士生英語入學(xué)考試試題
- 肝膽外科出科考試試卷
- 塔吊運(yùn)行作業(yè)方案
- 重慶中考數(shù)學(xué)最新26題練習(xí)及答案
- 江蘇衛(wèi)視跨年演唱會(huì)電視轉(zhuǎn)播技術(shù)方案-209年精選文檔
評論
0/150
提交評論