版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、概述講解C語言程序設計譚浩強第三版微型計算機系統(tǒng)硬件軟件系統(tǒng)軟件 程序設計語言應用軟件(如軟件包、數據庫QQ等)機器語言 :0、1匯編語言:助記符高級語言:人性化C、fortran、C+操作系統(tǒng)編輯程序、解釋程序、編譯程序、診斷程序主機外圍設備運算器控制器微處理器內存儲器I/O接口電路:并行、串行系統(tǒng)總線:數據、地址、控制ROMRAM外部設備I/O設備外存儲器預備知識一、課程內容: 要讓計算機按照人們的愿望工作,必須由人們事先編制、調試好程序,并輸入到計算機,讓計算機執(zhí)行程序才能產生相應的操作結果。 程序設計(Programming):是指設計、編制、調試程序的方法和過程。 程序設計語言:用來
2、書寫計算機程序的語言。分機器語言、匯編語言、高級語言。以加法舉例三種語言。 10010000 減 C語言是一門高級程序設計語言。類似人類語言,語言的基礎是一組記號和一組規(guī)則。課程介紹C語言程序:#include main( ) float x; x=56+2*sqrt(24)/(85-34); printf(“%f ”,x); 算式:舉例本課程主要內容:學習用計算機解決問題的一般方法,學習程序設計的思路和基本方法,學習C語言基本概念、語法結構,學習閱讀、設計、編寫、調試C程序既要掌握概念,又要動手編程,還要上機調試運行。5主要內容c語言基本概念 基本程序結構簡單的數據結構 程序設計方法函數 結
3、構體、指針、鏈表文件*二、課程目標:1正確理解C程序設計語言的各種語言成分,掌握基本C語法規(guī)則、C程序結構、數據類型、控制結構及函數;2掌握結構化程序設計方法,形成良好的程序設計風格;3掌握常用算法的程序設計、具有閱讀和初步編制程序的能力;4具備在Turbo c和visual c+較強的上機操作和程序調試技能。為后續(xù)專業(yè)課、后續(xù)的軟件設計以及未來的就業(yè)打下良好基礎。對本專業(yè)同學講,本課程尤為重要,因為我們從事的工作會牽涉到硬件底層,這是C語言的優(yōu)勢。很多單位筆試就考C語言爭取拿到計算機二級等級證書(學位)、程序員三、課程性質 本課程是專業(yè)基礎課 ,為后面的編程類課程打下學習基礎,為其他課程提供
4、實現工具。 對通信、電子、信息、計算機專業(yè)和其他大部分理工類專業(yè)來說是一門必修的課程。 C語言程序設計(必修)軟件技術基礎(必修)微機原理與接口技術(必修)面向對象設計與分析(選修)管理信息系統(tǒng)(選修)計算機圖形學(選修)計算機教學體系課程四、參考資料與課時安排 參考書 C語言程序設計(第四版)-譚浩強 程序設計(第四版)學習輔導-譚浩強 C語言程序設計B課指導書20120830全國計算機等級考試二級教程C語言程序設計 參考視頻 石油大學曾怡 吉林大學康輝 課時安排 總課時:48 學時 理論課(A):24 學時 實踐課(B):24 學時五、上機安排 上機地點:計算中心機房 上機實驗題目:隨上課
5、進度布置 要求:上機實驗題目要事先編好程序六、課程要求 課前做好預習 保持課堂安靜,認真聽講、思考 上課、上機考勤,3次缺席,按不及格處理 作業(yè)必須獨立、按時完成 重視上機實踐,有效利用寶貴的上機時間盡可能的把作業(yè)也上機調試通過。七、考 核期末:閉卷、筆試平時成績10%+實驗成績20%+期末考試70%第一章 C語言概述C語言發(fā)展歷史C語言特點C程序格式和結構特點C程序上機步驟1.1 C語言發(fā)展歷史程序設計語言的發(fā)展 機器語言匯編語言高級語言面向過程面向對象CPU指令系統(tǒng),由0、1序列構成的指令碼組成如:10000000 加 10010000 減用助記符號描述的指令系統(tǒng)如 ADD A, B面向機
6、器的語言程序設計是數據被加工的過程客觀世界可以分類,對象是類的實例對象是數據和方法的封裝對象間通過發(fā)送和接受消息發(fā)生聯系程序設計關鍵是定義類,并由類派生對象馮.諾依曼結構:計算機運算器控制器存儲器主機:I/O設備:鍵盤、顯示器等中央處理器CPU1.1.2 C語言的發(fā)展產生背景:解決早期操作系統(tǒng)(包括UNIX)用匯編語言可讀性和移植性差的缺點。希望找到帶有低級語言功能(對硬件操作)的高級語言。產生過程時間:19721973地點:美國貝爾實驗室目的:對UNIX操作系統(tǒng)90%匯編改寫,第5版設計人: Ken.Thompson和C語言和UNIX是一個孿生兄弟,相互促進發(fā)展。C標準1978年標準C: K
7、&R合著The C Programming LanguageANSI C: 1983年87 ANSI C: 1987年1990年國際標準的ANSI C C語言先后移植到大、中、小、微型計算機上, 是最廣泛的計算機語言之一。C編譯系統(tǒng)大多是以ANSI C為基礎開發(fā)的。 C語言之父(1943- ) New Orleans, USA B, C, UNIX Turing Award(1983)(1941-) York, USA C, UNIX Turing Award(1983)語言出現的歷史背景(參看)C語言是國際上廣泛流行的高級語言。C語言是在B語言的基礎上發(fā)展起來的。B (BCPL)語言是197
8、0年由美國貝爾實驗室設計的, 并用于編寫了第一個UNIX操作系統(tǒng),在PDP 7上實現。優(yōu)點:精練,接近硬件,缺點:過于簡單,數據無類型。 1973年貝爾實驗室的D.M.Ritchie 在B語言的基礎上設計出了C語言,對B取長補短,并用之改寫了原來用匯編編寫的UNIX,(即UNIX第5版),但僅在貝爾實驗室使用。1975年UNIX第6版發(fā)布,C優(yōu)點突出引起關注。1977年出現了可移植C語言編譯程序 ,推動了UNIX在各種機器上實現 ,C語言也得到推廣,其發(fā)展相輔相成。1975年UNIX第6版發(fā)布,C優(yōu)點突出引起關注。1977年出現了可移植C語言編譯程序 ,推動了UNIX在各種機器上實現 ,C語言
9、也得到推廣,其發(fā)展相輔相成。1978年影響深遠的名著The C Programming Language由 Brian W.Kernighan和Dennis M.Ritchie 合著,被稱為標準C。之后,C語言先后移植到大、中、小、微型計算機上,已獨立于UNIX和PDP,風靡世界,成為最廣泛的幾種計算機語言之一。1983年,美國國家標準化協(xié)會(ANSI)根據C語言各種版本對C的發(fā)展和擴充,制定了新的標準ANSI C ,比標準C有了很大的發(fā)展。1988年K & R按照 ANSI C修改了他們的The C Programming Language。1987年,ANSI公布了新標準87 ANSI C
10、。1990年,國際標準化組織接受了87 ANSI C為ISO C 的標準(ISO98991990)。1994年,ISO又修訂了C語言標準。目前流行的C語言編譯系統(tǒng)大多是以ANSI C為基礎進行開發(fā)的。說明: 不同版本的C編譯系統(tǒng)所實現的語言功能和語法規(guī)則又略有差別,因此讀者應了解所用的C語言編譯系統(tǒng)的特點(可以參閱有關手冊)。本課程的敘述基本上以ANSI C 為基礎。 1.2 語言的特點(1)語言簡潔、緊湊,使用方便、靈活。 37個關鍵字、9種控制語句,程序形式自由(2)運算符豐富。34種運算符 (3)數據類型豐富,具有現代語言的各種數據結構。(指針,整型、浮點型、字符型、數組類型、結構體、共
11、用體)(4)具有結構化的控制語句 ,是完全模塊化和結構化的語言。 (函數)(5)目標代碼質量高,程序執(zhí)行效率高。只比匯編程序生成的目標代碼效率低10-20%。(6)程序可移植性好(與匯編語言比)?;旧喜蛔鲂薷木湍苡糜诟鞣N型號的計算機和各種操作系統(tǒng)。(7)兼有高級和低級語言的特點。 允許直接訪問物理地址,能進行位操作,能實現匯編語言的大部分功能,可直接對硬件進行操作。一般高級語言不具備。高級語言中的低級語言。(8)語法限制不太嚴格,程序設計自由度大。靈活,容易出錯; 是程序員語言,有一定基礎后,很靈活,編出質量高的語言。37個關鍵字:(由系統(tǒng)定義,不能重作其它定義)auto break cas
12、e char constcontinue default do double elseenum extern float for gotoif inline int long register restrict return short signed sizeof static struct switch typedef union unsigned void volatile while _bool_Complex _Imaginary附錄C C語言中的關鍵字9種控制語句: if( )else for( ) while( ) dowhile( ) continue break switch
13、goto return34種運算符:算術運算符:+ - * / % + -關系運算符: = !=邏輯運算符:! & |位運算符 : | &賦值運算符:= 及其擴展條件運算符:?:逗號運算符:,指針運算符:* &求字節(jié)數 :sizeof強制類型轉換:(類型)分量運算符:. -下標運算符:其它 :( ) -C數據類型基本類型構造類型指針類型空類型void定義類型typedef數值類型字符類型char枚舉類型enum整 型實 型單精度型float雙精度型double短整型short長整型long整型int數組結構體struct共用體union解釋1:C+是由于開發(fā)大型應用軟件的需要而產生的,并不是所
14、有的人都要去編寫大型軟件;解釋2:面向對象的基礎是面向過程。C+是面向對象的語言,C是面向過程的,學起來比C語言困難得多,所以不太適合程序設計的初學者。問題:既然有了面向對象的C+語言,為什么還要學習C語言? 1.3 簡單的C語言程序介紹#include void main( ) printf (“Hello world!n); /*文件包含*/*主函數 */*函數體開始*/*輸出語句*/*函數體結束*/ 說明: main-主函數名, void-函數類型每個C程序必須有一個主函數main 是函數開始和結束的標志,不可省每個C語句以分號結束使用標準庫函數時應在程序開頭一行寫: #include
15、大小寫有區(qū)別,C程序必須用小寫字母書寫。 例1.1 求兩數之和例1.2 求兩數之和#include void main( ) /*求兩數之和*/ int a,b,sum; /*聲明,定義變量為整型*/ /*以下3行為C語句 */ a=123; b=456; sum=a+b; printf(sum is %dn,sum);說明: /*/表示注釋。注釋只是給人看的,對編譯和運行不起作用。所以可以用漢字或英文字符表示,可以出現在一行中的最右側,也可以單獨成為一行。說明: 輸出一行信息:sum is 579運行結果:sum=34函數語句預處理命令例1.2 求兩數之和#include /* This i
16、s the main program */main() int a,b,sum; a=10; b=24; sum=add(a,b); printf(”sum= %dn,sum);/* This function calculates the sum of x and y */int add(int x,int y) int z; z=x+y; return(z);例1.3 求2個數中較大者。#include void main( ) /* 主函數*/ int max(int x,int y); / 對被調用函數max的聲明 */ int a, b, c; /*定義變量a、b、c */ scan
17、f(d,d,&a,&b); /*輸入變量a和b的值*/ c=max(a,b); /*調用max函數,將得到的值賦給c */ printf(max=dn,c); /*輸出c的值*/程序運行情況如下:8,5 (輸入8和5賦給a和b)max=8 (輸出c的值)int max(int x, int y) int z; if (xy) z=x; else z=y; return (z); max(int x,int y); max(a,b); 說明:本程序包括main和被調用函數max兩個函數。max函數的作用是將x和y中較大者的值賦給變量z。return語句將z的值返回給主調函數main。 主函數ma
18、in()既可以放在max()函數之前,也可以放在max()函數之后。習慣上,將主函數main()放在最前面。 1.3.1 C程序的結構特點和書寫格式:1、函數是C程序的基本構件,這使得程序容易實現模塊化。 一個C程序只能有一個main函數。2、 一個函數由兩部分組成: (1)函數的首部: 例1.3中的max函數首部 int max(int x,int y ) (2)函數體:花括號內的部分。若一個函數有多個花括號,則最外層的一對花括號為函數體的范圍。 函數體包括兩部分 :聲明部分:int a,b,c; 可缺省執(zhí)行部分:由若干個語句組成??扇笔?注意: 函數的聲明部分和執(zhí)行部分都可缺省,例如: v
19、oid dump ( ) 這是一個空函數,什么也不做,但是合法的函數。3、C程序總是從main函數開始執(zhí)行的,與main函數的位置無關。4、C程序書寫格式自由,一行內可以寫幾個語句, 一個語句可以分寫在多行上,C程序沒有行號。 但建議一行一個語句。5、每個語句和數據聲明的最后必須有一個分號。6、C語言本身沒有輸入輸出語句。輸入和輸出的操作是由庫函數scanf和printf等函數來完成的。C對輸入輸出實行“函數化”。7、/*/表示注釋。(1)注釋便于閱讀、方便別人和自己(2)用于調試時起屏蔽某段程序作用。main( ) int i , j , sum; sum=0; for(i=1; i10;i
20、+) for(j=1;jtc 在Windows環(huán)境下 找到可執(zhí)行文件tc.exe,執(zhí)行該文件。主菜單:11個菜單項: File Edit Search Run Compile Debug Project Options Window Help(2) 編輯源文件新建:單擊“File”菜單下 的“New”, 修改:選擇“File”“Open”(即單擊“File” 的下拉菜單中的“Open”項,修改已有的源程序。 在編輯(EDIT) 狀態(tài)下光標表示當前進行編輯的位置,在此位置可以進行插入、刪除或修改,直到自已滿意為止。 保存:在編輯(EDIT) 狀態(tài)下光標表示當前進行編輯的位置, 在此位置可以進行插
21、入、刪除或修改,直到自已滿意為止。 (3) 對源程序進行編譯選擇“Compile”(或“Alt+F9”)對源程序進行編譯。 c1.cpp源程序,出現1個錯誤(error) ,0個警告(warming)。 (4) 將目標程序進行連接 選擇菜單“Compile” “Link” ,如果不出現錯誤,會得到一個后綴為.exe的可執(zhí)行文件。 (5) 執(zhí)行程序。 選菜單“Run” “Run”( 或按“Ctrl+F9” 鍵)。(6) 退出Turbo C+ 3.0環(huán)境 選擇“File”“Quit” 。 其他Turbo 2.0類似,此外還有visual c+集成開發(fā)環(huán)境 參閱實驗和習題指導書: C語言設計題解與上
22、機指導譚浩強編 C語言程序設計B課指導書20120830 北航 演示軟件使用 本章作業(yè): 1.3 1.5例2、Turbo C集成開發(fā)環(huán)境(一)啟動Turbo.c:有兩種方法。在WINDOS 下,雙擊我的電腦在c盤或其它盤上找到Turbo C或TC圖標并雙擊它,再雙擊TC.exe文件。在DOS提示符下鍵入:TC(二)建立一個新文件 1. 按F10,進入主菜單,控制光標選中FILE 2. 回車,進入FILE的子菜單 3. 按光標控制鍵,選中“NEW” 4. 回車,進入編輯窗口,文件名被自動命名為“noname.c”Turbo.c C程序的上機操作過程(三)編輯源程序逐個輸入字符刪除一個字符:按de
23、lete鍵插入字符插入一行: Ctrl+n 刪除一行: Ctrl+y刪除一個單詞:Ctrl+t合行:回車鍵(Enter)定義塊首:Ctrl+kb; 定義塊尾:Ctrl+kk刪除一個塊:Ctrl+ky復制一個塊:Ctrl+kc移動一個塊:Ctrl+kv(四)存盤不改文件名:F10FILE Save ( F2 ) 回車改文件名:F10 FILE Write To 回車輸入新的文件名(五)調入原有的文件1. F10FILE Load (F3) 顯示的是上次打開的文件名,在其中輸入所需的文件名即可。2. 選擇文件名 Load(F3) *.c回車3. 從本次用過的文件名中查找 FILE Pick: 顯示
24、的是本次上機剛剛調用過的文件名,縮小了查找范圍。4. 不僅輸入文件名,而且搜索所有類型文件。 *.*(六)暫時脫離Turbo C,進入DOS環(huán)境 F10 File DOS Shell 在DOS下進行文件管理 在DOS提示符下輸入exit返回Turbo C(七)編譯: 按 F9 鍵(八)運行: Ctrl + F9(九)看運行結果: Alt + F5(十)程序調試: F8-Step over F7-Trace into F4-Goto Cursor Ctrl+F7-Add Watch Ctrl+F8-Toggle Breakpoint Ctrl+F2-Program Reset TC的使用的演示:
25、小結: C語言歷史/ 特點/ 格式和結構特點/ 開發(fā)過程例3:VC+6.0 的使用1. 安裝VC+ 6.0和進入VC+ +6.0集成環(huán)境 (1) Visual C+ 6.0適用于Windows環(huán)境。首先在所用的計算機上安裝Visual C+ 6.0系統(tǒng)。安裝完后,雙擊Visual C+ 6.0圖標,就能進入VC+ 6.0集成環(huán)境 。(2) 在VC+主窗口的頂部是VC+的主菜單欄 。其中包含9個項File Edit View Insert Project Build Tools windows Help; 主窗口的左側是項目工作區(qū)窗口(用來顯示所設定的工作區(qū)的信息),右側是程序編輯窗口(用來輸入
26、和編輯源程序)。2. 輸入和編輯源程序(1)新建一個源程序 在VC+主窗口的主菜單欄中選擇“File” ,然后選擇 “New ” 單擊屏幕上出現的“New”對話框上方的“Files”,在其下拉菜單中選擇“C+ Source File”項;然后在對話框右半“Location”文本框中輸入準備編輯的源程序文件的存儲路徑(假定D:cc );在其上方的File(文件)文本框中輸入準備編輯的源程序文件的名字(輸入c1-1.c ) 。輸入和編輯源程序 單擊“OK” 按鈕后,回到VC+主窗口程序,編輯窗口已激活,即可輸入和編輯源程序。在輸入過程中如發(fā)現有錯誤,可以利用全屏幕編輯方法進行修改編輯。 源程序的保存 檢查無誤后,在主菜單欄中選擇“File”(文件) ,并在其下拉菜單中選擇“
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度出租車安全駕駛責任保險合同
- 2024年酒店跨界合作與業(yè)務整合合同
- 二零二五年度小學宿舍樓物業(yè)管理合同
- 2025年度小學綠化工程設計與施工合同
- 2024年環(huán)保項目合作協(xié)議及保密條款3篇
- 二零二五年度農村土地租賃與農業(yè)資源整合合同書
- 2025年小區(qū)電梯廣告效果評估與客戶滿意度調查合同
- 2024年版權使用許可協(xié)議(修訂版)
- 2025版交安工程勞務分包合同施工現場管理規(guī)范范本3篇
- 2024年款個人用車租賃服務合同
- 國家開放大學《統(tǒng)計與數據分析基礎》形考任務1-5答案
- 倉庫安全培訓考試題及答案
- 核反應堆熱工分析課程設計
- (正式版)SH∕T 3548-2024 石油化工涂料防腐蝕工程施工及驗收規(guī)范
- (高清版)JTG 3370.1-2018 公路隧道設計規(guī)范 第一冊 土建工程
- 機電設備安裝作業(yè)指導書
- 申克轉子秤安裝圖片指引ppt課件
- 山東昌樂二中“271高效課堂”教學模式
- 高等數學同濟大學第7版 課后習題答案解析完整版
- 單模光纜檢驗報告
- 化工原理課程設計甲醇和水
評論
0/150
提交評論