c語(yǔ)言 概述課件
《c語(yǔ)言 概述課件》由會(huì)員分享,可在線閱讀,更多相關(guān)《c語(yǔ)言 概述課件(43頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、主 講:姚 蘭電 話:郵 箱:教材和參考書教材教材vC程序設(shè)計(jì)程序設(shè)計(jì) 譚浩強(qiáng)編著譚浩強(qiáng)編著 清華大學(xué)出版社清華大學(xué)出版社參考書參考書vA Book on C : Programming in C (Fourth Edition) vThe C Programming Language vThe Art and Science of C by Eric S. Roberts. 課時(shí)安排課時(shí)安排課時(shí)安排v授課授課 :40學(xué)時(shí)學(xué)時(shí)上機(jī)安排上機(jī)安排v上機(jī)地點(diǎn):院樓上機(jī)地點(diǎn):院樓504,數(shù)學(xué),數(shù)學(xué)3班院樓班院樓502v上機(jī)時(shí)間:上機(jī)時(shí)間:512周周l數(shù)學(xué):周四下午l信息:周四晚上v上機(jī)內(nèi)容:上機(jī)調(diào)試每
2、次課堂作業(yè)上機(jī)內(nèi)容:上機(jī)調(diào)試每次課堂作業(yè)計(jì)算機(jī)語(yǔ)言是全國(guó)高校工科類專業(yè)均開設(shè)的公共基礎(chǔ)計(jì)算機(jī)語(yǔ)言是全國(guó)高校工科類專業(yè)均開設(shè)的公共基礎(chǔ)課,是適應(yīng)現(xiàn)代化技術(shù)開設(shè)的課程;課,是適應(yīng)現(xiàn)代化技術(shù)開設(shè)的課程;為后續(xù)課程打下基礎(chǔ),我們后面要開設(shè)數(shù)據(jù)結(jié)構(gòu),數(shù)為后續(xù)課程打下基礎(chǔ),我們后面要開設(shè)數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)庫(kù)原理等課程會(huì)用到據(jù)庫(kù)原理等課程會(huì)用到C語(yǔ)言知識(shí);語(yǔ)言知識(shí);為后面考計(jì)算機(jī)等級(jí)考試,畢業(yè)找工作奠定基礎(chǔ);為后面考計(jì)算機(jī)等級(jí)考試,畢業(yè)找工作奠定基礎(chǔ);對(duì)軟件開發(fā)感興趣的,畢業(yè)后也可從事軟件開發(fā)工作對(duì)軟件開發(fā)感興趣的,畢業(yè)后也可從事軟件開發(fā)工作C語(yǔ)言是學(xué)習(xí)其他語(yǔ)言的基礎(chǔ),也是必須掌握的一門語(yǔ)言是學(xué)習(xí)其他語(yǔ)言的基礎(chǔ)
3、,也是必須掌握的一門語(yǔ)言。語(yǔ)言。為什么要學(xué)C語(yǔ)言?信息交流信息交流(地位平等地位平等) (有思維、推理能力)(有思維、推理能力)語(yǔ)法規(guī)則、句法規(guī)則靈活語(yǔ)法規(guī)則、句法規(guī)則靈活(可省略、顛倒可省略、顛倒)如:走,去曬太陽(yáng)!如:走,去曬太陽(yáng)!去曬太陽(yáng),走!去曬太陽(yáng),走!表達(dá)方式多樣表達(dá)方式多樣C語(yǔ)言與自然語(yǔ)言的比較C語(yǔ)言語(yǔ)言人人機(jī)對(duì)話機(jī)對(duì)話(命令方式命令方式) (無思維、推理能力,具有計(jì)算與邏輯(無思維、推理能力,具有計(jì)算與邏輯判斷能力)判斷能力)語(yǔ)法規(guī)則、句法規(guī)則固定語(yǔ)法規(guī)則、句法規(guī)則固定(一般不可省略、顛倒,必須按部就班一般不可省略、顛倒,必須按部就班)如:如:scanf(“%d,%d”,&a,
4、&b); x=a+b;算法多樣算法多樣自然語(yǔ)言自然語(yǔ)言本門課主要內(nèi)容C語(yǔ)言概述語(yǔ)言概述(了解了解)算法算法(了解了解)數(shù)據(jù)類型、運(yùn)算符和表達(dá)式數(shù)據(jù)類型、運(yùn)算符和表達(dá)式 (重點(diǎn)重點(diǎn))順序結(jié)構(gòu)順序結(jié)構(gòu) (重點(diǎn)重點(diǎn))選擇結(jié)構(gòu)選擇結(jié)構(gòu)(重點(diǎn)重點(diǎn))循環(huán)結(jié)構(gòu)循環(huán)結(jié)構(gòu) (重點(diǎn)重點(diǎn))數(shù)組數(shù)組(重點(diǎn)重點(diǎn))函數(shù)函數(shù)(重點(diǎn)重點(diǎn))編譯預(yù)處理編譯預(yù)處理(了解了解)指針指針(理解理解)結(jié)構(gòu)體與共用體結(jié)構(gòu)體與共用體(了解了解)文件文件(了解了解)課程目標(biāo)1.熟記熟記C語(yǔ)言的基本概念語(yǔ)言的基本概念2.熟悉熟悉TC和和Visual C+6.0的上機(jī)操作環(huán)境的上機(jī)操作環(huán)境3.會(huì)讀、會(huì)編、會(huì)調(diào)試簡(jiǎn)單的會(huì)讀、會(huì)編、會(huì)調(diào)試簡(jiǎn)單的C程序
5、程序課程要求課前請(qǐng)做好預(yù)習(xí)課前請(qǐng)做好預(yù)習(xí)保持課堂安靜,頭腦清醒,思維活躍保持課堂安靜,頭腦清醒,思維活躍所有作業(yè)必須所有作業(yè)必須獨(dú)立獨(dú)立完成完成作業(yè)必須經(jīng)作業(yè)必須經(jīng)上機(jī)調(diào)試通過上機(jī)調(diào)試通過重視上機(jī)實(shí)踐,有效利用寶貴的上機(jī)時(shí)間重視上機(jī)實(shí)踐,有效利用寶貴的上機(jī)時(shí)間第一章 C語(yǔ)言概述1.1 C語(yǔ)言發(fā)展歷史1.2 C語(yǔ)言特點(diǎn)1.3 簡(jiǎn)單的C程序介紹1.4 C程序上機(jī)步驟1.1 C語(yǔ)言發(fā)展歷史程序設(shè)計(jì)語(yǔ)言的發(fā)展程序設(shè)計(jì)語(yǔ)言的發(fā)展機(jī)器語(yǔ)言匯編語(yǔ)言高級(jí)語(yǔ)言面向過程面向?qū)ο驝PU指令系統(tǒng),由0、1序列構(gòu)成的指令碼組成如:10000000 加 10010000 減用助記符號(hào)描述的指令系統(tǒng)如 ADD A, B面向
6、機(jī)器的語(yǔ)言程序設(shè)計(jì)是數(shù)據(jù)被加工的過程客觀世界可以分類,對(duì)象是類的實(shí)例對(duì)象是數(shù)據(jù)和方法的封裝對(duì)象間通過發(fā)送和接受消息發(fā)生聯(lián)系程序設(shè)計(jì)關(guān)鍵是定義類,并由類派生對(duì)象0000000000000100000000101111000001100110000100001011101111 000101100010111101111 100111100101111111000 10101101 11011111 100100110001011011111 1010111101111 0000001011111011 10111111101001010110111011111 11110000000111010
7、001011011111 0000111101111 0000001011111011 0010001111110 111101001010110111111000 101011101100010101011000001101010001011111011 1000111101111 0000001011111011 1010000000100111010000010011101Entry main,msubl2 #12,spjsb C$MAIN_ARGSmovab $CHAR_STRING_CONpushal -8(fp)pushal (r2)calls #2,readpushal -12(
8、fp)pushal 3(r2)calls #2,readmull3 -8(fp),-12(fp),-pushal 6(r2)calls #2,printclrl r0ret/* This program reads two integer numbers from the keyboard and prints their product.*/ #include int main (void)/ Local Declarations int number1;int number2;int result;/ Statements scanf(“%d”, number1);scanf(“%d”,
9、number2);result = number1 * number2;printf(“%d*%d=%dn”,numer1,number2, result);return 0;/ main 面向過程語(yǔ)言面向過程語(yǔ)言vFORTRANvCOBOLvPascalvCvAda面向?qū)ο笳Z(yǔ)言面向?qū)ο笳Z(yǔ)言vC+vJava特殊的語(yǔ)言特殊的語(yǔ)言vHTMLvPERLvSQL高級(jí)語(yǔ)言TIOBE編程語(yǔ)言排行榜http:/變化趨勢(shì)圖Combined Language(組合語(yǔ)言) v時(shí)間時(shí)間:19721973v地點(diǎn)地點(diǎn):美國(guó)貝爾實(shí)驗(yàn)室美國(guó)貝爾實(shí)驗(yàn)室v設(shè)計(jì)人設(shè)計(jì)人: Ken.Thompson和和Dennis.M.Ritch
10、ie Thompson(左)和(左)和Ritchie(中)于(中)于1999 年年 接受當(dāng)時(shí)美國(guó)總統(tǒng)克林頓授予的國(guó)家技術(shù)勛章接受當(dāng)時(shí)美國(guó)總統(tǒng)克林頓授予的國(guó)家技術(shù)勛章C語(yǔ)言發(fā)展過程語(yǔ)言發(fā)展過程v目的:目的:UNIX操作系統(tǒng)操作系統(tǒng)l匯編語(yǔ)言程序?qū)τ?jì)算機(jī)硬件的依賴性高,可讀性和可移植性很差;l一般的高級(jí)語(yǔ)言雖然克服了匯編語(yǔ)言的一些不足,卻難以實(shí)現(xiàn)對(duì)計(jì)算機(jī)硬件的直接操作UNIX操作系統(tǒng)1969-1972主要用匯編語(yǔ)言編寫B(tài)語(yǔ)言1970缺乏豐富的數(shù)據(jù)類型,以字長(zhǎng)編址C語(yǔ)言1972在B語(yǔ)言基礎(chǔ)上加入豐富的數(shù)據(jù)類型和強(qiáng)有力的數(shù)據(jù)結(jié)構(gòu)87 ANSI C1987美國(guó)國(guó)家標(biāo)準(zhǔn)化協(xié)會(huì)公布C標(biāo)準(zhǔn)ISO C1990國(guó)
11、際標(biāo)準(zhǔn)化組織采用了ANSI C標(biāo)準(zhǔn)ISO C1994國(guó)際標(biāo)準(zhǔn)化組織修訂標(biāo)準(zhǔn)目前流行的C語(yǔ)言編譯系統(tǒng)面向過程的:面向過程的:vMS C,Turbo C,Quick C,面向?qū)ο蟮模好嫦驅(qū)ο蟮模簐Borland C+,Turbo C+,面向?qū)ο蟮目梢暬好嫦驅(qū)ο蟮目梢暬簐Visual C+, 1.2 C語(yǔ)言特點(diǎn)語(yǔ)言簡(jiǎn)潔、緊湊、靈活語(yǔ)言簡(jiǎn)潔、緊湊、靈活運(yùn)算符和數(shù)據(jù)類型豐富運(yùn)算符和數(shù)據(jù)類型豐富程序設(shè)計(jì)結(jié)構(gòu)化、模塊化程序設(shè)計(jì)結(jié)構(gòu)化、模塊化允許直接對(duì)硬件進(jìn)行操作允許直接對(duì)硬件進(jìn)行操作生成目標(biāo)代碼質(zhì)量高生成目標(biāo)代碼質(zhì)量高可移植性好可移植性好中級(jí)語(yǔ)言32個(gè)關(guān)鍵字:(auto break case char
12、constcontinue default do double elseenum extern float for gotoif int long register returnshort signed sizeof static structswitch typedef unsigned union voidvolatile while9種控制語(yǔ)句:if( )elsefor( )while( )dowhile( )continuebreakswitchgotoreturn例 C語(yǔ)言與Pascal語(yǔ)言比較C語(yǔ)言 Pascal語(yǔ)言 含義 BEGIN.END 復(fù)合語(yǔ)句if(e) s; IF(e)
13、THEN s 條件語(yǔ)句int i ; VAR i:INTEGER 定義i為整型變量 int a10; VAR a:ARRAY1.10 OF INTEGER 定義整型數(shù)組aint f(); FUNCTION f():INTEGER 定義f為返值整型的函數(shù)int *p; VAR p:INTEGER 定義p為指向整型變量的指針i+= 2; i=i+2 賦值i+2ii+,+i; i=i+1 i自增值結(jié)論:C比 Pascal簡(jiǎn)練,源程序短。34種運(yùn)算符:算術(shù)運(yùn)算符:算術(shù)運(yùn)算符:+ - * / % + -關(guān)系運(yùn)算符:關(guān)系運(yùn)算符: = !=邏輯運(yùn)算符:!邏輯運(yùn)算符:! & |位運(yùn)算符位運(yùn)算符 : | &賦值
14、運(yùn)算符:賦值運(yùn)算符:= 及其擴(kuò)展及其擴(kuò)展條件運(yùn)算符:條件運(yùn)算符:?:逗號(hào)運(yùn)算符:逗號(hào)運(yùn)算符:,指針運(yùn)算符:指針運(yùn)算符:* &求字節(jié)數(shù)求字節(jié)數(shù) :sizeof強(qiáng)制類型轉(zhuǎn)換:強(qiáng)制類型轉(zhuǎn)換:(類型)類型)分量運(yùn)算符:分量運(yùn)算符:. -下標(biāo)運(yùn)算符:下標(biāo)運(yùn)算符:其它其它 :( ) -C C數(shù)數(shù)據(jù)據(jù)類類型型基本類型基本類型構(gòu)造類型構(gòu)造類型指針類型指針類型空類型空類型void定義類型定義類型typedef數(shù)值類型數(shù)值類型字符類型字符類型char枚舉類型枚舉類型enum整整 型型浮點(diǎn)型浮點(diǎn)型單精度型單精度型float雙精度型雙精度型double短整型短整型short長(zhǎng)整型長(zhǎng)整型long整型整型int數(shù)組數(shù)組結(jié)
15、構(gòu)體結(jié)構(gòu)體struct共用體共用體union例1.1 第一個(gè)程序 Hello,World!/* example1.1 The first C Program*/#include main() printf(“Hello,World!”);注釋編譯預(yù)處理函數(shù)語(yǔ)句輸出:Hello,World!程序說明: (1)stdio.h,是C語(yǔ)言的標(biāo)準(zhǔn)I/O庫(kù)的頭文件。(2) main 表示主函數(shù),函數(shù)體用 和括起來 “;”為語(yǔ)句結(jié)束標(biāo)志 。(3)printf為C語(yǔ)言的輸出函數(shù)。1.3 C程序格式和結(jié)構(gòu)特點(diǎn)例1.2 求兩數(shù)之和 /*求兩數(shù)之和求兩數(shù)之和*/#include void main( ) int a
16、,b,sum; /*聲明,定義變量為整型聲明,定義變量為整型*/ /*以下以下3行為執(zhí)行語(yǔ)句行為執(zhí)行語(yǔ)句 */ a=123; b=456; sum=a+b; printf(sum is %dn,sum);scanf( “%d,%d”, &a, &b );/* example1.2 calculate the sum of a and b*/#include /* This is the main program */main() int a,b,sum; a=10; b=24; sum=add(a,b); printf(”sum= %dn,sum);/* This function calcu
17、lates the sum of x and y */int add(int x,int y) int z; z=x+y; return(z);運(yùn)行結(jié)果:sum=34函數(shù)語(yǔ)句預(yù)處理命令注釋格式特點(diǎn)格式特點(diǎn)v習(xí)慣用習(xí)慣用小寫小寫字母,大小寫敏感字母,大小寫敏感v不使用行號(hào),不使用行號(hào),無程序行無程序行概念概念v可使用空行和空格可使用空行和空格v常用常用鋸齒形鋸齒形書寫格式書寫格式main( ) . . . . . . .main( ) int i , j , sum; sum=0; for(i=1; i10;i+) for(j=1;j10;j+) sum+=i*j ; printf(“%dn”,
18、sum);優(yōu)秀程序員的素質(zhì)之一: 使用TAB縮進(jìn) 對(duì)齊 有足夠的注釋 有合適的空行結(jié)構(gòu)特點(diǎn)結(jié)構(gòu)特點(diǎn)v函數(shù)與主函數(shù)函數(shù)與主函數(shù)l程序由一個(gè)或多個(gè)函數(shù)組成l必須有且只能有一個(gè)主函數(shù)main()l程序執(zhí)行從main開始,在main中結(jié)束,其它函數(shù)通過調(diào)用得以執(zhí)行。v程序語(yǔ)句程序語(yǔ)句lC程序由語(yǔ)句組成l用“;”作為語(yǔ)句終止符v注釋注釋l/* */為注釋,不能嵌套l不產(chǎn)生編譯代碼例: /*This is the main /* of example1.1*/ */ 非法v編譯預(yù)處理命令編譯預(yù)處理命令1.4 C程序的上機(jī)步驟1.上機(jī)環(huán)境常用的有常用的有Turbo C 2.0、Visual C+6.0等。等
19、。 Turbo C 2.0 :DOS環(huán)境下的集成環(huán)境。環(huán)境下的集成環(huán)境。Visual C+ 6.0:支持:支持C/C+編編程程,windows環(huán)境。環(huán)境。計(jì)算機(jī)界公認(rèn)的優(yōu)秀的計(jì)算機(jī)界公認(rèn)的優(yōu)秀的應(yīng)用開發(fā)工具之一應(yīng)用開發(fā)工具之一 。編輯鏈接編譯執(zhí)行2. C程序開發(fā)步驟程序代碼的錄入,生成源程序*.c語(yǔ)法分析查錯(cuò),翻譯生成目標(biāo)程序*.obj與其它目標(biāo)程序或庫(kù)鏈接裝配,生成可執(zhí)行程序*.exe源程序目標(biāo)程序可執(zhí)行程序內(nèi)容程序設(shè)計(jì)語(yǔ)言機(jī)器語(yǔ)言機(jī)器語(yǔ)言可執(zhí)行不可以不可以可以文件名后綴.c.obj.exeTC 2.0開發(fā)環(huán)境v主控菜單主控菜單l文件操作FILE :New Load Save Write t
20、ol編輯操作EDIT:插入/修改 塊 查找/替換l編譯鏈接COMPILE LINK MAKEl執(zhí)行RUNv退出退出Turbo ClAlt +xv幫助幫助HelplF1基本操作:基本操作:F2-保存保存F3-打開打開Alt+F9 -編譯編譯Ctrl+F9-運(yùn)行運(yùn)行Alt+F5 -查看結(jié)果查看結(jié)果v常用熱鍵常用熱鍵程序調(diào)試:程序調(diào)試:F8-Step over F7-Trace intoF4-Goto Cursor Ctrl+F7-Add WatchCtrl+F8-Toggle Breakpoint Ctrl+F2-Program Reset1、啟動(dòng)、啟動(dòng)Visual C+6.0應(yīng)用程序應(yīng)用程序2、建立一個(gè)新的工作空間、建立一個(gè)新的工作空間Visual C+6.0上機(jī)環(huán)境3、建立一個(gè)新的工程、建立一個(gè)新的工程4、建立源文件、建立源文件5、編輯、編輯C源文件源文件6、編譯連接應(yīng)用程序、編譯連接應(yīng)用程序7、執(zhí)行應(yīng)用程序、執(zhí)行應(yīng)用程序8、關(guān)閉工作區(qū)、關(guān)閉工作區(qū)Implementation Phase:工件區(qū)窗口工件區(qū)窗口( (workspace) )編輯窗口編輯窗口Editor輸出窗口輸出窗口( (output) )
- 溫馨提示:
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. 裝配圖網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 《構(gòu)建人類命運(yùn)共同體》我們共同的世界(第2課時(shí)謀求互利共贏)-圖文課件
- 二輪常見金屬及其化合物課件
- 《生物進(jìn)化的歷程》課件
- 神經(jīng)免疫內(nèi)分泌ppt課件
- 淺談教師崗位的人際關(guān)系ppt課件
- 基本單元電路設(shè)計(jì)(一)
- 食堂就餐禮儀課件
- 第1講課程學(xué)習(xí)方法與概述ppt課件
- 紅色簡(jiǎn)約求職競(jìng)聘職業(yè)規(guī)劃模板ppt課件
- 管理提升和人力資源咨詢項(xiàng)目薪酬激勵(lì)方案與績(jī)效管理方課件
- 《金融學(xué)概論》第四章利息與利率.ppt課件
- TWS耳機(jī)系列深度:AirPods產(chǎn)業(yè)鏈研究報(bào)告(2020.6)ppt課件
- 少先隊(duì)工作存在的問題ppt課件
- 基于戰(zhàn)略地圖的講義KPI績(jī)效指標(biāo)分解ppt課件
- 房屋維護(hù)修繕管理課件