版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
C語(yǔ)言程序設(shè)計(jì)教師:計(jì)算機(jī)學(xué)院段小林關(guān)于這門課教材:譚浩強(qiáng).《C程序設(shè)計(jì)》(第三版).清華大學(xué)出版社.2005參考教材:(美)瓊斯,艾特肯.21天學(xué)通C語(yǔ)言(第6版).信達(dá)工作室譯.人民郵電出版社.2003張基溫等.《C語(yǔ)言程序設(shè)計(jì)案例教程》.清華大學(xué)出版社.2004BrianW.Kernighan,DennisRitchie.《C程序設(shè)計(jì)語(yǔ)言(英文影印版)》(第二版).清華大學(xué)出版社或機(jī)械工業(yè)出版社.課程計(jì)劃:理論學(xué)時(shí):32學(xué)時(shí)√實(shí)驗(yàn)學(xué)時(shí):所需基礎(chǔ)知識(shí):《大學(xué)計(jì)算機(jī)基礎(chǔ)》,尤其是數(shù)制轉(zhuǎn)換、內(nèi)存、程序設(shè)計(jì)等相關(guān)章節(jié)。(不熟悉的再?gòu)?fù)習(xí)一下)時(shí)間非常非常有限,主要靠大家課前預(yù)習(xí)和課后自學(xué)!關(guān)于我部門:計(jì)算機(jī)基礎(chǔ)教學(xué)實(shí)驗(yàn)中心(信科3樓)辦公地點(diǎn):信科302E-mail:
dxl@(交作業(yè)和答疑)第1講C語(yǔ)言概述
(教材第一章)內(nèi)容:了解C語(yǔ)言的歷史及特點(diǎn)。認(rèn)識(shí)簡(jiǎn)單C程序,掌握C程序的基本組成,理解編譯預(yù)處理命令、主函數(shù)、語(yǔ)句、格式化輸出函數(shù)printf()、注釋、簡(jiǎn)單表達(dá)式等語(yǔ)法。(重點(diǎn))運(yùn)行C程序的步驟與方法(重點(diǎn))為什么要學(xué)習(xí)程序設(shè)計(jì)?程序設(shè)計(jì)語(yǔ)言老兄:幫我計(jì)算一下1+1=?自然語(yǔ)言機(jī)器語(yǔ)言人發(fā)出的指令要按一定的規(guī)則來書寫再翻譯或解釋成計(jì)算機(jī)所能看懂的機(jī)器語(yǔ)言由編譯軟件自動(dòng)實(shí)現(xiàn)這就是程序設(shè)計(jì)的主要內(nèi)容或目的,也是我們課堂上要講的主要內(nèi)容:就是如何將我們的指令按照某一種程序設(shè)計(jì)語(yǔ)言的規(guī)則寫成程序!C語(yǔ)言的發(fā)展簡(jiǎn)史原型ALGOL60語(yǔ)言1963年CPL(CombinedProgrammingLanguage)1967年BCPL語(yǔ)言1970年B語(yǔ)言1973年C語(yǔ)言1978年
《TheCProgrammingLanguage》1982-90年制定現(xiàn)行的C語(yǔ)言標(biāo)準(zhǔn)--ANSIC1983年C++C語(yǔ)言的設(shè)計(jì)者
DennisM.Ritchie和Unix的設(shè)計(jì)者KenThompson接受美國(guó)國(guó)家技術(shù)勛章1.1初識(shí)C語(yǔ)言程序-重點(diǎn)??!/*ex101.c-在屏幕上輸出ThisisaCprogram.*/#include<stdio.h>
voidmain(){printf(“ThisisaCprogram.\n”);
}任何C程序都必須有且只能有一個(gè)主函數(shù)main(),它是程序的入口,也是程序的出口。其中,main是函數(shù)名,()內(nèi)可以包含一些參數(shù);{}的內(nèi)容稱為函數(shù)體,各種功能語(yǔ)句書寫在函數(shù)體內(nèi);不同語(yǔ)句之間用分號(hào)分隔;main函數(shù)的格式可以是:intmain()voidmain(){{……或……return0;}}一般情況下,每個(gè)程序都由一至多個(gè)函數(shù)組成;
C語(yǔ)言的庫(kù)函數(shù),使用這種類型的函數(shù)之前要在前邊加上類似#include<stdio.h>的預(yù)處理命令
該函數(shù)的功能是向顯示器輸出一段文字,具體內(nèi)容括在雙引號(hào)內(nèi);編譯預(yù)處理命令總在最開始,每行以#開始將要包含的文件添加在<>內(nèi)語(yǔ)法!編程需要嚴(yán)格遵守的規(guī)則,但還不是最重要的。設(shè)計(jì)思路才是至關(guān)重要的。注釋寫在/**/中間給程序員自己看的最好養(yǎng)成加注釋的習(xí)慣庫(kù)函數(shù)與文件包含命令includeC語(yǔ)言提供了很多庫(kù)函數(shù),可以直接調(diào)用。例如:函數(shù)printf就是系統(tǒng)提供的一個(gè)庫(kù)函數(shù),它的作用是輸出“”中的內(nèi)容。使用庫(kù)函數(shù)之前,必須要include相對(duì)應(yīng)的函數(shù)聲明文件。為了用戶方便,系統(tǒng)定義庫(kù)函數(shù)時(shí),把一類相關(guān)庫(kù)函數(shù)的說明信息,分別寫在一些文件中。本例中使用的printf的有關(guān)說明信息,寫在文件stdio.h中。所以,要想用printf函數(shù),就要在前面#include<stdio.h>課下自學(xué)!函數(shù)參數(shù)函數(shù)后面的圓括號(hào)用于放函數(shù)的參數(shù)。有的函數(shù)要有參數(shù),有的函數(shù)也可以沒有參數(shù)。如本例中使用的主函數(shù)就沒有參數(shù),而printf函數(shù)有一個(gè)參數(shù)。這里,printf函數(shù)的參數(shù)是括在雙引號(hào)中的一串字符,稱為字符串。\n代表?yè)Q行。注意,main也是可以帶參數(shù)的,會(huì)在后面章節(jié)講到。課下自學(xué)!C語(yǔ)言程序的基本結(jié)構(gòu)-重點(diǎn)!編譯預(yù)處理命令1編譯預(yù)處理命令2……函數(shù)1函數(shù)2……(其中必有一個(gè)函數(shù)叫main)一個(gè)復(fù)雜實(shí)例,也是我們的學(xué)習(xí)目標(biāo)簡(jiǎn)單的C程序/*ex101.c-在屏幕上輸出ThisisaCprogram.*/#include<stdio.h>
voidmain(){printf(“ThisisaCprogram.\n”);}有了這個(gè)程序,計(jì)算機(jī)就能工作了嗎?萬(wàn)里長(zhǎng)征只走了一半C語(yǔ)言在屏幕上輸出ThisisaCprogram機(jī)器語(yǔ)言人發(fā)出的指令要按一定的規(guī)則來書寫再翻譯或解釋成計(jì)算機(jī)所能看懂的機(jī)器語(yǔ)言???/*ex101.c-在屏幕上輸出ThisisaCprogram.*/#include<stdio.h>
voidmain(){printf(“ThisisaCprogram.\n”);}另一半是:編譯、連接和執(zhí)行
(整個(gè)過程如下圖)filename.c編輯(edit)編輯器filename.obj預(yù)處理編譯(compile)編譯器filename.exe庫(kù)函數(shù)和其他目標(biāo)模塊鏈接(link)鏈接器出錯(cuò)出錯(cuò)執(zhí)行(excute/run)結(jié)果出錯(cuò)出錯(cuò)調(diào)試debugC語(yǔ)言程序開發(fā)環(huán)境gcc(GUNCCompile,UNIX以及Linux平臺(tái)上C/C++標(biāo)準(zhǔn)編譯器)
TurboC2.0(DOS平臺(tái)上的C編譯器)VisualC++(Windows平臺(tái)上的C/C++編譯器)TurboCForWindows3.1Visualc/c++6.0信科三樓機(jī)房裝有這個(gè)軟件,也可到重郵軟件中心下載visualstudio6.0安裝第2步:編譯編譯就是把用C語(yǔ)言描述的程序翻譯成計(jì)算機(jī)可以直接理解并執(zhí)行的機(jī)器語(yǔ)言命令組成的程序。C語(yǔ)言的編譯過程分為兩個(gè)階段:首先是編譯預(yù)處理,系統(tǒng)要先掃描程序,處理所有預(yù)處理命令,如把文件包含命令要求的文件包含(嵌入)到程序中。然后才開始編譯。編譯后得到的文件稱為目標(biāo)文件。目標(biāo)文件就是用機(jī)器語(yǔ)言描述的文件。C語(yǔ)言的目標(biāo)文件的后綴為.obj。目標(biāo)文件的主文件名,一般與源程序文件名相同。在編譯過程中,還要對(duì)源程序中的語(yǔ)法和邏輯結(jié)構(gòu)進(jìn)行檢查。編譯任務(wù)是由稱做編譯器(compiler)的軟件完成的。程序在編譯過程中,也可能發(fā)現(xiàn)錯(cuò)誤。這時(shí)要重新進(jìn)入編輯器進(jìn)行編輯。在VC中的操作順序是:compile->compile第3步:鏈接鏈接是將與當(dāng)前程序有關(guān)的、已經(jīng)有的幾個(gè)目標(biāo)模塊鏈接在一起,形成一個(gè)完整的程序代碼文件。這些已經(jīng)有的目標(biāo)模塊有:·庫(kù)函數(shù):如前面使用的printf;·對(duì)于大的程序,常常分成幾個(gè)模塊,分別編寫、編輯和編譯,形成不同的目標(biāo)模塊。經(jīng)正確鏈接所生成的文件才是可執(zhí)行文件??蓤?zhí)行文件的文件名后綴為.exe(有的系統(tǒng)為.out)。完成鏈接過程的軟件稱為鏈接器(linker)。程序在連接過程中,也可能發(fā)現(xiàn)錯(cuò)誤。這時(shí)也要重新進(jìn)入編輯器進(jìn)行編輯。在VC中的操作順序是:compile->build*.exe總結(jié):簡(jiǎn)單C語(yǔ)言程序設(shè)計(jì)步驟分析問題,設(shè)計(jì)解決方案編寫C語(yǔ)言程序代碼上機(jī)操作(編輯、編譯、鏈接、執(zhí)行)理論課的主要內(nèi)容實(shí)驗(yàn)課的主要內(nèi)容上述每個(gè)步驟都可能出現(xiàn)很多錯(cuò)誤,具體有三種錯(cuò)誤:語(yǔ)法錯(cuò)誤、邏輯錯(cuò)誤、運(yùn)行錯(cuò)誤??傊?,出現(xiàn)錯(cuò)誤就要進(jìn)行調(diào)試。調(diào)試(debug):去掉程序中的錯(cuò)誤的過程課堂編程練習(xí)1.編寫一個(gè)C語(yǔ)言程序,在屏幕上顯示3行字符(自己選擇)。課堂練習(xí)的成績(jī)計(jì)入平時(shí)成績(jī)。?。。【毩?xí)題答案:/*example1.c-在屏幕上輸出三行字符.*/#include<stdio.h>
voidmain(){printf(“LearningCprogrammingishardbutinteresting.\n”);printf(“IloveClanguage.\n”);printf(“Ilove
Cprogramming.\n”);}本課程學(xué)習(xí)方法課前按照授課計(jì)劃上指明的進(jìn)度預(yù)習(xí)上課認(rèn)真聽講,課件可下載作為筆記課下參照教材理解課件上所講的內(nèi)容和相關(guān)知識(shí)點(diǎn)完成作業(yè)&上機(jī)調(diào)試
學(xué)習(xí)技巧1.快速建立直觀印象(通過閱讀完整獨(dú)立的小程序);2.圍繞程序,熟悉相關(guān)的語(yǔ)法和知識(shí)點(diǎn);3.帶著疑問主動(dòng)學(xué)習(xí);4.不要一開始就逐字逐句死板的閱讀教材;5.重點(diǎn)培養(yǎng)“讀的懂程序,寫得出程序”的能力。6.怎樣培養(yǎng)編程能力?
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 急腹癥護(hù)理課件
- 鉆具租賃合同模板(2篇)
- 閱讀館合伙人合同(2篇)
- 認(rèn)識(shí)平行 課件
- 輸尿管超聲課件
- 幼兒園小班音樂《大樹媽媽》教案
- 西京學(xué)院《網(wǎng)頁(yè)設(shè)計(jì)與制作》2022-2023學(xué)年期末試卷
- 幼兒園語(yǔ)言教育中的談話活動(dòng)第5章
- 西京學(xué)院《單片機(jī)原理及應(yīng)用實(shí)驗(yàn)》2022-2023學(xué)年期末試卷
- 西華師范大學(xué)《中學(xué)教研活動(dòng)組織指導(dǎo)》2023-2024學(xué)年第一學(xué)期期末試卷
- 醫(yī)患溝通內(nèi)容要求記錄模板(入院、入院三日、術(shù)前、術(shù)后、出院)
- Excel 會(huì)計(jì)記賬模板-錄入憑證自動(dòng)生成財(cái)務(wù)報(bào)表(超實(shí)用)
- 航海學(xué)天文定位第四篇第6章天文定位
- 淺談深度教學(xué)中小學(xué)數(shù)學(xué)U型學(xué)習(xí)模式
- 物理電學(xué)暗箱專題30道
- 裝修公司員工勞動(dòng)合同
- 江西上饒鉛山汽車駕駛科目三考試線路
- 通過一起放火案件淺析放火案件的移交工作
- 南京農(nóng)業(yè)大學(xué)學(xué)生在校學(xué)習(xí)期間現(xiàn)實(shí)表現(xiàn)證明
- 機(jī)械專業(yè)個(gè)人職業(yè)生涯規(guī)劃書范文3篇
- 中醫(yī)呼吸系統(tǒng)疾病研究的現(xiàn)狀及未來臨床研究思路
評(píng)論
0/150
提交評(píng)論