第01章 C語(yǔ)言概述.ppt_第1頁(yè)
第01章 C語(yǔ)言概述.ppt_第2頁(yè)
第01章 C語(yǔ)言概述.ppt_第3頁(yè)
第01章 C語(yǔ)言概述.ppt_第4頁(yè)
第01章 C語(yǔ)言概述.ppt_第5頁(yè)
已閱讀5頁(yè),還剩48頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、本章內(nèi)容提要,為什么我們要學(xué)習(xí)C語(yǔ)言呢? 1.1 程序設(shè)計(jì)語(yǔ)言的發(fā)展及其特點(diǎn) 1.2 C語(yǔ)言的發(fā)展及其特點(diǎn)、應(yīng)用 1.3 學(xué)習(xí)C語(yǔ)言的方法 1.4 C語(yǔ)言程序的基本結(jié)構(gòu) 1.5 編制C語(yǔ)言程序的基本步驟 1.6 Turbo C上機(jī)操作具體步驟 1.7 課堂練習(xí),重點(diǎn)!,1、為什么我們要學(xué)習(xí)C語(yǔ)言呢?,理由1:因?yàn)镃語(yǔ)言流行. 理由2:因?yàn)镃語(yǔ)言考研時(shí)(計(jì)算機(jī)及相關(guān)專(zhuān)業(yè))必考。 理由3: 因?yàn)镃語(yǔ)言在各種程序考試中首當(dāng)其中。 理由4:因?yàn)樗潜匦拚n,是老師逼的,不學(xué)不能拿學(xué)分 理由5:后續(xù)專(zhuān)業(yè)基礎(chǔ)課決定的 理由n:,別急!讓我想想,這些理由都只是從表面上來(lái)回答,其實(shí)要真正來(lái)回答這一問(wèn)題,我們有必

2、要了解程序設(shè)計(jì)語(yǔ)言的發(fā)展歷史及其特點(diǎn),知道C語(yǔ)言是屬于那種類(lèi)型的語(yǔ)言;C語(yǔ)言是如何產(chǎn)生和發(fā)展的,C語(yǔ)言的特點(diǎn)有哪些,它應(yīng)用在哪些方面等,這樣我們就可以做到學(xué)習(xí)目的明確,才能有意識(shí)地去學(xué)好C語(yǔ)言程序設(shè)計(jì)。,了解程序設(shè)計(jì)語(yǔ)言的發(fā)展及其特點(diǎn); 掌握機(jī)器語(yǔ)言、匯編語(yǔ)言和高級(jí)語(yǔ)言的差異; 了解C語(yǔ)言的發(fā)展歷史及特點(diǎn)和應(yīng)用; 掌握C語(yǔ)言程序的基本結(jié)構(gòu); 掌握編寫(xiě)C程序的基本步驟和調(diào)試過(guò)程。,另外,本章我們將帶領(lǐng)大家來(lái)實(shí)際感受一下C語(yǔ)言程序是一個(gè)什么樣子,它的結(jié)構(gòu)特點(diǎn)是什么,這是我們進(jìn)行C語(yǔ)言程序設(shè)計(jì)必須遵循的規(guī)范。 最后,我們應(yīng)該掌握的是如何來(lái)編寫(xiě)和調(diào)試一個(gè)C語(yǔ)言程序,這是我們每一個(gè)C語(yǔ)言程序員所必須具備

3、的基本功。,學(xué)習(xí)的意義,學(xué)習(xí)目標(biāo),學(xué)習(xí)內(nèi)容,程序設(shè)計(jì)語(yǔ)言的發(fā)展及其特點(diǎn) C語(yǔ)言的發(fā)展及其特點(diǎn)和應(yīng)用 C語(yǔ)言程序的基本結(jié)構(gòu) 編制C語(yǔ)言程序的基本步驟,了解歷史 抓住現(xiàn)在 展望未來(lái),程序設(shè)計(jì)語(yǔ)言的故事,機(jī)器語(yǔ)言編寫(xiě)的1+1程序,10111000 00000001 00000000 00000101 00000001 00000000,MOV AX, 1 ADD AX, 1,匯編語(yǔ)言(Assemble Language)編寫(xiě)的1+1程序,程序設(shè)計(jì)語(yǔ)言的故事,BASIC語(yǔ)言編寫(xiě)的1+1程序,PRINT 1+1,#include main() printf(%dn, 1+1); ,C語(yǔ)言編寫(xiě)的1+1程序

4、,流行語(yǔ)言,應(yīng)用編程語(yǔ)言 機(jī)器語(yǔ)言 匯編語(yǔ)言 Basic Pascal C C+ Java C# 專(zhuān)項(xiàng)編程語(yǔ)言 Lotus Notes Power Builder,Web編程語(yǔ)言 HTML XML PHP ASP JSP JavaScript VBScript 其他 perl python VBA,C程序設(shè)計(jì)語(yǔ)言,硬件(Hardware),操作系統(tǒng)(OS),應(yīng)用程序(Application),應(yīng)用平臺(tái),基于平臺(tái)的應(yīng)用程序,低級(jí)語(yǔ)言的地盤(pán),高級(jí)語(yǔ)言的地盤(pán),C語(yǔ)言的地盤(pán),1.1 程序設(shè)計(jì)語(yǔ)言的發(fā)展及其特點(diǎn),CPU指令系統(tǒng),由0、1序列構(gòu)成的指令碼組成 如:10000000 加 10010000 減

5、,用助記符號(hào)描述的指令系統(tǒng) 如 ADD A, B,面向機(jī)器的語(yǔ)言,程序設(shè)計(jì)是數(shù)據(jù)被加工的過(guò)程,客觀世界可以分類(lèi),對(duì)象是類(lèi)的實(shí)例 對(duì)象是數(shù)據(jù)和方法的封裝 對(duì)象間通過(guò)發(fā)送和接受消息發(fā)生聯(lián)系,程序設(shè)計(jì)關(guān)鍵是定義類(lèi),并由類(lèi)派生對(duì)象,Ada,ALGOL60,ALGOL68,Pascal,Modula-2,CPL,BCPL,B,C,C+,Java,LISP,PROLOG,COBOL,FORTRAN77,FORTRAN,PL/1,Simula 67,Smalltalk 80,BASIC,ANSI-BASIC,QBASIC,VB,FORTRAN90,1.2 C語(yǔ)言的發(fā)展及其特點(diǎn)、應(yīng)用,C語(yǔ)言的設(shè)計(jì)者Denni

6、s M. Ritchie,Ritchie和Thompson在開(kāi)發(fā)UNIX,和Unix的設(shè)計(jì)者Ken Thompson接受美國(guó)國(guó)家技術(shù)勛章,C語(yǔ)言發(fā)展史,ALGOL 60語(yǔ)言,CPL語(yǔ)言,Combined Programming Language,1963年,劍橋大學(xué),BCPL語(yǔ)言,1967年,劍橋大學(xué)的Matin Richards對(duì)CPL語(yǔ)言進(jìn)行了簡(jiǎn)化,B語(yǔ)言,C語(yǔ)言,1970年,美國(guó)貝爾實(shí)驗(yàn)室的Ken Thompson將BCPL進(jìn)行了修改,將CPL語(yǔ)言煮干,提煉出它的精華,1973年,B語(yǔ)言也給人“煮”了一下,美國(guó)貝爾實(shí)驗(yàn)室的D.M.RITCHIE在B語(yǔ)言的基礎(chǔ)上最終設(shè)計(jì)出了一種新的語(yǔ)言,B

7、CPL的第二個(gè)字母作為這種語(yǔ)言的名字,這就是C語(yǔ)言,C語(yǔ)言發(fā)展史,產(chǎn)生背景 產(chǎn)生過(guò)程 時(shí)間: 19721973 地點(diǎn): 美國(guó)貝爾實(shí)驗(yàn)室 目的: UNIX操作系統(tǒng) 設(shè)計(jì)人: Ken.Thompson和Dennis.M.Ritchie C標(biāo)準(zhǔn) 標(biāo)準(zhǔn)C: K strlen();strcat();最好不要過(guò)分依賴(lài)庫(kù)函數(shù).,學(xué)習(xí)C語(yǔ)言的參考書(shū),1、輕松學(xué)習(xí)C程序設(shè)計(jì) 揭開(kāi)計(jì)算機(jī)與程序設(shè)計(jì)的奧秘 何勤著 中國(guó)電力出版社 2008.8 2、C語(yǔ)言大學(xué)實(shí)用教程(第2版) 蘇小紅、陳惠鵬、孫志剛等編著 電子工業(yè)出版社 2007.2 3、C程序設(shè)計(jì)題解 王柏盛主編 高等教育出版社 2004.1 4、C程序設(shè)計(jì)試題

8、匯編 譚浩強(qiáng)主編 清華大學(xué)出版社 5、全國(guó)計(jì)算機(jī)等級(jí)考試指定教材輔導(dǎo) 二級(jí)教程 應(yīng)試指導(dǎo)及模擬試題集C程序設(shè)計(jì) 全國(guó)計(jì)算機(jī)等級(jí)考試命題研究組 編 中國(guó)大地出版社,1.4 C語(yǔ)言程序的基本結(jié)構(gòu),了解了C語(yǔ)言的基本特性及其應(yīng)用以后,接下來(lái)就來(lái)看看C語(yǔ)言程序是什么樣子。一個(gè)C語(yǔ)言程序可以是非常簡(jiǎn)單的,也可以是特別復(fù)雜的,這取決于程序所要實(shí)現(xiàn)的功能。我們先來(lái)認(rèn)識(shí)一個(gè)最為簡(jiǎn)單的C程序。,【例1】 最簡(jiǎn)單的C程序。,/* This is the first C program */ #include void main ( ) printf (Hello C Language!n); ,運(yùn)行結(jié)果: Hel

9、lo C Language!,在C程序中,注釋由“/*”開(kāi)始,由“*/”結(jié)束,可以實(shí)現(xiàn)多行注釋 。 在C+程序中也可使用“/”進(jìn)行單行注釋。例如:/ 注釋信息,C語(yǔ)言的預(yù)處理命令都是以“#” 號(hào)開(kāi)頭。stdio.h是一個(gè)頭文件,C程序中允許插入若干行空行,它不影響程序的功能,同注釋一樣。為了程序的易讀性,在編寫(xiě)C程序時(shí),根據(jù)需要可插入一定的空行,main是主函數(shù)名,一個(gè)C語(yǔ)言程序有且僅有一個(gè)main函數(shù)。C程序執(zhí)行時(shí)就是從main函數(shù)開(kāi)始,具體講就是從“”開(kāi)始,到“”結(jié)束。,printf是C語(yǔ)言的內(nèi)部函數(shù)名,因?yàn)樗竺娓? ),其功能是將“Hello C Language!n”顯示在計(jì)算機(jī)的

10、屏幕上(雙引號(hào)和n不顯示),C語(yǔ)言規(guī)定:語(yǔ)句以分號(hào)結(jié)束,1.4 C語(yǔ)言程序的基本結(jié)構(gòu),【例2】計(jì)算輸入的兩個(gè)整數(shù)的和 。,/* This is the second C program */ #include void main ( ) int x, y, z; scanf (%d%d, ,假設(shè)輸入:10 20 運(yùn)行結(jié)果:the sum of two integer is 30,1.4 C語(yǔ)言程序的基本結(jié)構(gòu),C語(yǔ)言程序的函數(shù)由兩部分構(gòu)成:一部分定義變量(變量代表數(shù)據(jù)),稱(chēng)為聲明部分;另一部分代表操作,由C語(yǔ)句構(gòu)成,稱(chēng)為執(zhí)行部分。 在C程序中,要求函數(shù)的聲明部分在前面,執(zhí)行在后面,它們的順序不能

11、顛倒,也不能交叉。但在C+程序中,聲明部分和執(zhí)行部分可以相互交叉,沒(méi)有嚴(yán)格的界限,當(dāng)然執(zhí)行部分中所使用的變量只要在其之前進(jìn)行定義即可。,/C語(yǔ)言程序 void main ( ) int a; a = 10; int b; b = a + 20; ,/C+語(yǔ)言程序 void main ( ) int a; a = 10; int b; b = a + 20; ,/C或C+語(yǔ)言程序 void main ( ) int a; a = 10; b = a + 20; int b; ,再次強(qiáng)調(diào):在C語(yǔ)言程序中,變量必須先定義,后使用,順序不能顛倒!,1.4 C語(yǔ)言程序的基本結(jié)構(gòu),【例3】計(jì)算輸入的兩個(gè)整

12、數(shù)的最大值 。,/* This is the third C program */ #include int max (int a, int b); void main ( ) int x, y, z; scanf (%d%d, ,int max (int a, int b) int c; if (a b) c = a; else c = b; return (c); ,自定義函數(shù)max,假設(shè)輸入:10 20 運(yùn)行結(jié)果:max = 20,1.4 C語(yǔ)言程序的基本結(jié)構(gòu),C語(yǔ)言的標(biāo)識(shí)符,C語(yǔ)言中變量和函數(shù)都有自己的名字,它們都必須是合法的標(biāo)識(shí)符。 標(biāo)識(shí)符就是一個(gè)名字,C語(yǔ)言規(guī)定標(biāo)識(shí)符只能由字母、數(shù)

13、字和下劃線三中字符構(gòu)成,并且第一個(gè)字符必須是字母或下劃線。 C語(yǔ)言是大小寫(xiě)敏感的語(yǔ)言,因此hello和Hello是不同的標(biāo)識(shí)符。 C語(yǔ)言中有一些特別的標(biāo)識(shí)符,它們的用途已經(jīng)事先規(guī)定好了,程序員不能再將它們另做它用。這些特別的標(biāo)識(shí)符被稱(chēng)為關(guān)鍵字(保留字的一部分)。到目前為止,我們見(jiàn)過(guò)的關(guān)鍵字有void、int、main、if、else、return。以后隨著學(xué)習(xí)的深入,我們將會(huì)遇到越來(lái)越多的關(guān)鍵字(C語(yǔ)言關(guān)鍵字可參考附錄B)。,1.4 C語(yǔ)言程序的基本結(jié)構(gòu),總結(jié),C程序是由多個(gè)函數(shù)構(gòu)成的。 每個(gè)C程序中有且只有一個(gè)main函數(shù)。 main函數(shù)是程序的入口和出口。 不使用行號(hào),無(wú)程序行的概念。 程

14、序中可使用空行和空格。 C程序格式常用鋸齒形書(shū)寫(xiě)格式。 C程序中可加任意多的注釋。 引用C語(yǔ)言標(biāo)準(zhǔn)庫(kù)函數(shù),一般要用文件包含預(yù)處理命令將其頭文件包含進(jìn)來(lái)。 用戶自定義的函數(shù),必須先定義后使用。 變量必須先定義后使用。 變量名、函數(shù)名必須是合法的標(biāo)識(shí)符,標(biāo)識(shí)符習(xí)慣用小寫(xiě)字母,大小寫(xiě)敏感。 不能用關(guān)鍵字來(lái)命名變量和函數(shù)。 函數(shù)包含兩個(gè)部分:聲明部分和執(zhí)行部分,在C程序中,聲明部分在前,執(zhí)行部分在后,這兩部分的順序不能顛倒,也不能有交叉。 C語(yǔ)言的語(yǔ)句都是以分號(hào)結(jié)尾。,1.5 編制C語(yǔ)言程序的基本步驟,編 輯,程序代碼的錄入,生成源程序*.c,編 譯,語(yǔ)法分析查錯(cuò),翻譯生成目標(biāo)程序*.obj,鏈 接,

15、與其它目標(biāo)程序或庫(kù)鏈接裝配,生成可執(zhí)行程序*.exe,運(yùn) 行,編寫(xiě)C程序的步驟,習(xí)題:P13 習(xí)題一 【習(xí)題1-1】 【習(xí)題1-5】,1.6 Turbo C上機(jī)操作具體步驟,單擊C:tc目錄下的tc.exe或者單擊tc.exe的快捷方式既可打開(kāi)tc集成環(huán)境,C語(yǔ)言程序的開(kāi)發(fā)和運(yùn)行,編 輯,建立 源文件 file.c,生成 目標(biāo)文件 file.obj,生成 執(zhí)行文件 file.exe,執(zhí)行文件 file.exe,1. 啟動(dòng)TC 2. 編輯、建立源文件 3. 編譯源程序 4. 運(yùn)行源程序,開(kāi)發(fā)和運(yùn)行C程序的步驟,Turbo C 2.0環(huán)境介紹,繼 續(xù),繼 續(xù),繼 續(xù),繼 續(xù),繼 續(xù),編輯、建立源文

16、件,文件菜單(File) Load命令,裝入文件。 New命令,建立新文件。 Save命令,保存文件。 Write to命令,寫(xiě)文件(另存文件)。 Quit命令,退出 TC。 文件擴(kuò)展名默認(rèn)為.C。,新建或打開(kāi)C源程序文件,繼 續(xù),繼 續(xù),編譯源程序,編譯菜單(Compile) 方式一: Compile to .OBJ命令,將源文件編譯成目標(biāo)文件(.obj)。 Link .EXE file命令,連接庫(kù)文件(函數(shù))后,生成可執(zhí)行文件(.exe)。 方式二: Make .EXE file命令,一次完成編譯、連接,直接生成可執(zhí)行文件(.exe)。,編譯程序,繼 續(xù),繼 續(xù),連接程序,繼 續(xù),繼 續(xù),

17、運(yùn)行源程序,運(yùn)行菜單(Run) Run命令,運(yùn)行程序。 User Screen命令,查看程序結(jié)果。,運(yùn)行程序,繼 續(xù),進(jìn)入用戶窗口,查看程序運(yùn)行結(jié)果,繼 續(xù),用戶窗口顯示程序運(yùn)行結(jié)果,按任意鍵退出。,繼 續(xù),程序編譯過(guò)程中出錯(cuò):,繼 續(xù),對(duì)程序的錯(cuò)誤進(jìn)行編輯、修改 存盤(pán) 重新編譯、連接、運(yùn)行、查看運(yùn)行結(jié)果,繼 續(xù),動(dòng)態(tài)調(diào)試,單步跟蹤 F8 程序執(zhí)行一步 Ctrl+F7打開(kāi)監(jiān)視窗口 斷點(diǎn)跟蹤 Ctrl+F8 設(shè)置/清除斷點(diǎn) Ctrl+F7 監(jiān)視中間結(jié)果,1.7課堂練習(xí),1. 一個(gè)C程序的執(zhí)行是從_。 A)本程序的main函數(shù)開(kāi)始,到main函數(shù)結(jié)束 B) 本程序文件的第一個(gè)函數(shù)開(kāi)始,到本程序文件的最后一個(gè)函數(shù)結(jié)束 C) 本程序的main

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論