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

下載本文檔

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

文檔簡(jiǎn)介

1、1.1 程程序設(shè)計(jì)語(yǔ)序設(shè)計(jì)語(yǔ)言簡(jiǎn)介言簡(jiǎn)介1.2 C語(yǔ)言發(fā)展過(guò)程語(yǔ)言發(fā)展過(guò)程1.3 C語(yǔ)言的特點(diǎn)語(yǔ)言的特點(diǎn)1.4 初識(shí)簡(jiǎn)單的初識(shí)簡(jiǎn)單的C程序程序1.5 C程序語(yǔ)法概述程序語(yǔ)法概述1.6 如何運(yùn)行如何運(yùn)行C程序程序1.7 本章小結(jié)本章小結(jié)1.8 習(xí)題習(xí)題實(shí)驗(yàn)實(shí)驗(yàn)1 初識(shí)運(yùn)行環(huán)境和運(yùn)行過(guò)程初識(shí)運(yùn)行環(huán)境和運(yùn)行過(guò)程語(yǔ)言?程序?程序設(shè)計(jì)?語(yǔ)言?程序?程序設(shè)計(jì)? 自從第一臺(tái)計(jì)算機(jī)誕生以來(lái),程序設(shè)計(jì)語(yǔ)自從第一臺(tái)計(jì)算機(jī)誕生以來(lái),程序設(shè)計(jì)語(yǔ)言和程序設(shè)計(jì)方法不斷發(fā)展。言和程序設(shè)計(jì)方法不斷發(fā)展。 語(yǔ)言是思維的載體語(yǔ)言是思維的載體。人和計(jì)算機(jī)打交道,。人和計(jì)算機(jī)打交道,必須要解決一個(gè)必須要解決一個(gè)“語(yǔ)言語(yǔ)言”溝通的問(wèn)題

2、。計(jì)算機(jī)溝通的問(wèn)題。計(jì)算機(jī)并不能理解和執(zhí)行人們使用的自然語(yǔ)言,而只并不能理解和執(zhí)行人們使用的自然語(yǔ)言,而只能接受和執(zhí)行二進(jìn)制的指令。能接受和執(zhí)行二進(jìn)制的指令。 計(jì)算機(jī)能夠直接識(shí)別和執(zhí)行的這種指令,計(jì)算機(jī)能夠直接識(shí)別和執(zhí)行的這種指令,稱(chēng)為稱(chēng)為機(jī)器指令機(jī)器指令,這種機(jī)器指令的集合就是機(jī)器,這種機(jī)器指令的集合就是機(jī)器語(yǔ)言指令系統(tǒng),簡(jiǎn)稱(chēng)為機(jī)器語(yǔ)言。為了解決某語(yǔ)言指令系統(tǒng),簡(jiǎn)稱(chēng)為機(jī)器語(yǔ)言。為了解決某一特定問(wèn)題,需要選用指令系統(tǒng)中的某一些指一特定問(wèn)題,需要選用指令系統(tǒng)中的某一些指令,這些令,這些指令按要求選取并組織起來(lái)就組成一指令按要求選取并組織起來(lái)就組成一個(gè)個(gè)“程序程序”。書(shū)上有。書(shū)上有8086指令系統(tǒng)

3、對(duì)應(yīng)的二進(jìn)指令系統(tǒng)對(duì)應(yīng)的二進(jìn)制代碼程序,能完成兩個(gè)十六進(jìn)制數(shù)相加的功制代碼程序,能完成兩個(gè)十六進(jìn)制數(shù)相加的功能。能。 一個(gè)程序是完成某一特定任務(wù)的一一個(gè)程序是完成某一特定任務(wù)的一組指令序列,或者說(shuō),為實(shí)現(xiàn)某一算法組指令序列,或者說(shuō),為實(shí)現(xiàn)某一算法的指令序列稱(chēng)為的指令序列稱(chēng)為“程序程序”,機(jī)器世界中機(jī)器世界中真正存在的就是這樣的二進(jìn)制程序真正存在的就是這樣的二進(jìn)制程序。 用機(jī)器語(yǔ)言編制的程序雖然能夠直接用機(jī)器語(yǔ)言編制的程序雖然能夠直接被計(jì)算機(jī)識(shí)別、直接執(zhí)行,但是機(jī)器語(yǔ)被計(jì)算機(jī)識(shí)別、直接執(zhí)行,但是機(jī)器語(yǔ)言本身是隨不同類(lèi)型的機(jī)器而異,所以言本身是隨不同類(lèi)型的機(jī)器而異,所以可移植性差,而且機(jī)器語(yǔ)言本身

4、難學(xué)、可移植性差,而且機(jī)器語(yǔ)言本身難學(xué)、難記、難懂、難修改,給使用者帶來(lái)極難記、難懂、難修改,給使用者帶來(lái)極大的不便。大的不便。 為了繞開(kāi)機(jī)器指令,克服機(jī)器指令程為了繞開(kāi)機(jī)器指令,克服機(jī)器指令程序的缺陷,人們提出了程序設(shè)計(jì)語(yǔ)言的構(gòu)序的缺陷,人們提出了程序設(shè)計(jì)語(yǔ)言的構(gòu)想,即使用人們熟悉、習(xí)慣的語(yǔ)言符號(hào)來(lái)想,即使用人們熟悉、習(xí)慣的語(yǔ)言符號(hào)來(lái)編寫(xiě)程序,編寫(xiě)程序,最好是直接使用人們間交流的最好是直接使用人們間交流的自然語(yǔ)言來(lái)編程自然語(yǔ)言來(lái)編程。這是程序設(shè)計(jì)語(yǔ)言的努力方向之一 在過(guò)去的幾十年中,人們創(chuàng)造了許多在過(guò)去的幾十年中,人們創(chuàng)造了許多介于自然語(yǔ)言和機(jī)器指令之間的各種程序介于自然語(yǔ)言和機(jī)器指令之間的

5、各種程序設(shè)計(jì)語(yǔ)言。按語(yǔ)言的級(jí)別來(lái)分,則大致可設(shè)計(jì)語(yǔ)言。按語(yǔ)言的級(jí)別來(lái)分,則大致可分為:分為:匯編語(yǔ)言匯編語(yǔ)言(低級(jí)低級(jí))和和高級(jí)語(yǔ)言高級(jí)語(yǔ)言(第三代第三代、第四代、第四代、)。 匯編語(yǔ)言匯編語(yǔ)言的特點(diǎn)是使用一些的特點(diǎn)是使用一些“助記符號(hào)助記符號(hào)”來(lái)來(lái)替代那些難懂難記的二進(jìn)制代碼,所以匯編語(yǔ)言替代那些難懂難記的二進(jìn)制代碼,所以匯編語(yǔ)言相對(duì)于機(jī)器指令便于理解和記憶,但它和機(jī)器語(yǔ)相對(duì)于機(jī)器指令便于理解和記憶,但它和機(jī)器語(yǔ)言的指令基本上是一一對(duì)應(yīng),兩者都是針對(duì)特定言的指令基本上是一一對(duì)應(yīng),兩者都是針對(duì)特定的計(jì)算機(jī)硬件系統(tǒng)的,可移植性差,因此稱(chēng)它們的計(jì)算機(jī)硬件系統(tǒng)的,可移植性差,因此稱(chēng)它們都是都是“面向

6、機(jī)器的低級(jí)語(yǔ)言面向機(jī)器的低級(jí)語(yǔ)言”。 為了直觀地了解匯編語(yǔ)言程序,如為了直觀地了解匯編語(yǔ)言程序,如下給出一段實(shí)現(xiàn)下給出一段實(shí)現(xiàn)X、Y兩個(gè)兩個(gè)16位二進(jìn)制數(shù)位二進(jìn)制數(shù)相加的相加的8086匯編程序:匯編程序: 高級(jí)語(yǔ)言類(lèi)似自然語(yǔ)言高級(jí)語(yǔ)言類(lèi)似自然語(yǔ)言(主要是英語(yǔ)主要是英語(yǔ)),由專(zhuān),由專(zhuān)門(mén)的符號(hào)根據(jù)詞匯規(guī)則構(gòu)成單詞,由單詞根據(jù)句門(mén)的符號(hào)根據(jù)詞匯規(guī)則構(gòu)成單詞,由單詞根據(jù)句法規(guī)則構(gòu)成語(yǔ)句,每種語(yǔ)句有確切的語(yǔ)義并能由法規(guī)則構(gòu)成語(yǔ)句,每種語(yǔ)句有確切的語(yǔ)義并能由計(jì)算機(jī)解釋。高級(jí)語(yǔ)言包含許多英語(yǔ)單詞,有計(jì)算機(jī)解釋。高級(jí)語(yǔ)言包含許多英語(yǔ)單詞,有“自然化自然化”的特點(diǎn);高級(jí)語(yǔ)言書(shū)寫(xiě)計(jì)算式子接近于的特點(diǎn);高級(jí)語(yǔ)言書(shū)寫(xiě)

7、計(jì)算式子接近于熟知的數(shù)學(xué)公式的規(guī)則。熟知的數(shù)學(xué)公式的規(guī)則。 高級(jí)語(yǔ)言與機(jī)器指令完全分離,具有通用高級(jí)語(yǔ)言與機(jī)器指令完全分離,具有通用性,一條高級(jí)語(yǔ)言語(yǔ)句常常相當(dāng)于幾條或幾十性,一條高級(jí)語(yǔ)言語(yǔ)句常常相當(dāng)于幾條或幾十條機(jī)器指令。所以高級(jí)語(yǔ)言的出現(xiàn),給程序設(shè)條機(jī)器指令。所以高級(jí)語(yǔ)言的出現(xiàn),給程序設(shè)計(jì)從形式和內(nèi)容上都帶來(lái)了重大的變革,大大計(jì)從形式和內(nèi)容上都帶來(lái)了重大的變革,大大方便了程序的編寫(xiě),提高了可讀性。方便了程序的編寫(xiě),提高了可讀性。 BASIC、C、Visual Basic(簡(jiǎn)稱(chēng)簡(jiǎn)稱(chēng)VB)、Visual C+(簡(jiǎn)稱(chēng)簡(jiǎn)稱(chēng)VC+)、VB.NET、C#.NET、Java等都是高級(jí)語(yǔ)等都是高級(jí)語(yǔ)言。高

8、級(jí)語(yǔ)言一般能細(xì)分為言。高級(jí)語(yǔ)言一般能細(xì)分為第三代高級(jí)語(yǔ)言第三代高級(jí)語(yǔ)言、第、第四代高級(jí)語(yǔ)言、四代高級(jí)語(yǔ)言、,分類(lèi)依據(jù)是高級(jí)語(yǔ)言的邏輯,分類(lèi)依據(jù)是高級(jí)語(yǔ)言的邏輯級(jí)別、表達(dá)能力、接近自然語(yǔ)言的程度等。級(jí)別、表達(dá)能力、接近自然語(yǔ)言的程度等。 如如Turbo C 2.0(簡(jiǎn)稱(chēng)簡(jiǎn)稱(chēng)TC)為第三代高級(jí)語(yǔ)言,為第三代高級(jí)語(yǔ)言,而而VB6.0、VC+6.0、C#、VB.NET、Java等可認(rèn)為等可認(rèn)為是第四代高級(jí)語(yǔ)言。是第四代高級(jí)語(yǔ)言。第四代高級(jí)語(yǔ)言一般是具有第四代高級(jí)語(yǔ)言一般是具有面向?qū)ο筇匦?、具有快速或自?dòng)生成部分應(yīng)用程面向?qū)ο筇匦?、具有快速或自?dòng)生成部分應(yīng)用程序能力的高級(jí)語(yǔ)言,它表達(dá)能力強(qiáng),編寫(xiě)程序效序

9、能力的高級(jí)語(yǔ)言,它表達(dá)能力強(qiáng),編寫(xiě)程序效率高,更接近人的使用語(yǔ)言率高,更接近人的使用語(yǔ)言,高一級(jí)別的語(yǔ)言一,高一級(jí)別的語(yǔ)言一般具有低一級(jí)別語(yǔ)言的語(yǔ)言表達(dá)能力。般具有低一級(jí)別語(yǔ)言的語(yǔ)言表達(dá)能力。 如下是輸入兩個(gè)整數(shù)并隨即顯示兩整數(shù)之和的如下是輸入兩個(gè)整數(shù)并隨即顯示兩整數(shù)之和的Turbo C 2.0語(yǔ)言程序語(yǔ)言程序: #include /* Turbo C2.0一般運(yùn)行一般運(yùn)行于于DOS環(huán)境環(huán)境 */ main() int num1,num2; printf(Input two numbers: ); /* 屏幕上顯示輸入提示屏幕上顯示輸入提示 */ scanf(“%d %d”,&num1

10、,&num2); /* 通過(guò)鍵盤(pán)讀兩個(gè)整數(shù)通過(guò)鍵盤(pán)讀兩個(gè)整數(shù) */ printf(The sum is %dn,num1+num2); /* 屏幕上顯示兩整數(shù)之和屏幕上顯示兩整數(shù)之和 */ 顯然,高級(jí)語(yǔ)言程序要比面向機(jī)器的低級(jí)語(yǔ)言要顯然,高級(jí)語(yǔ)言程序要比面向機(jī)器的低級(jí)語(yǔ)言要易懂易懂、明了、簡(jiǎn)短明了、簡(jiǎn)短得多。得多。 應(yīng)該看到的是:高級(jí)語(yǔ)言是不斷發(fā)展變化的,應(yīng)該看到的是:高級(jí)語(yǔ)言是不斷發(fā)展變化的,不斷有新的更好的語(yǔ)言產(chǎn)生,同時(shí)也有舊且功能差不斷有新的更好的語(yǔ)言產(chǎn)生,同時(shí)也有舊且功能差而不再實(shí)用的語(yǔ)言消亡。而而不再實(shí)用的語(yǔ)言消亡。而C語(yǔ)言語(yǔ)言自產(chǎn)生以來(lái),已自產(chǎn)生以來(lái),已歷經(jīng)歷經(jīng)40余年,依

11、然具有強(qiáng)大的生命力與活力,該語(yǔ)余年,依然具有強(qiáng)大的生命力與活力,該語(yǔ)言依然言依然是當(dāng)今最熱門(mén)、最實(shí)用的高級(jí)語(yǔ)言之一是當(dāng)今最熱門(mén)、最實(shí)用的高級(jí)語(yǔ)言之一。 在學(xué)習(xí)在學(xué)習(xí)C語(yǔ)言之前,先來(lái)簡(jiǎn)單了解一下語(yǔ)言之前,先來(lái)簡(jiǎn)單了解一下C語(yǔ)言的發(fā)展歷史。語(yǔ)言的發(fā)展歷史。 C語(yǔ)言是一門(mén)通用的、模塊化、程序化的語(yǔ)言是一門(mén)通用的、模塊化、程序化的編程語(yǔ)言,被廣泛應(yīng)用于操作系統(tǒng)和應(yīng)用軟編程語(yǔ)言,被廣泛應(yīng)用于操作系統(tǒng)和應(yīng)用軟件的開(kāi)發(fā)。由于其高效和可移植性,適應(yīng)于件的開(kāi)發(fā)。由于其高效和可移植性,適應(yīng)于不同硬件和軟件平臺(tái),深受開(kāi)發(fā)員的青睞。不同硬件和軟件平臺(tái),深受開(kāi)發(fā)員的青睞。1、C語(yǔ)言早期發(fā)展語(yǔ)言早期發(fā)展 1969 - 1

12、973年在年在 AT&T 貝爾實(shí)驗(yàn)室開(kāi)始了貝爾實(shí)驗(yàn)室開(kāi)始了 C語(yǔ)言語(yǔ)言的最初研發(fā)。根據(jù)的最初研發(fā)。根據(jù) C語(yǔ)言的發(fā)明者丹尼斯語(yǔ)言的發(fā)明者丹尼斯.里奇里奇(Dennis Ritchie)說(shuō),說(shuō),C 語(yǔ)言最重要的研發(fā)時(shí)期是在語(yǔ)言最重要的研發(fā)時(shí)期是在 1972 年。年。 C語(yǔ)言的誕生是和語(yǔ)言的誕生是和UNIX操作系統(tǒng)的開(kāi)發(fā)密不可分操作系統(tǒng)的開(kāi)發(fā)密不可分的,原先的的,原先的 UNIX操作系統(tǒng)都是用匯編語(yǔ)言寫(xiě)的,操作系統(tǒng)都是用匯編語(yǔ)言寫(xiě)的,1973年年UNIX操作系統(tǒng)的核心用操作系統(tǒng)的核心用C語(yǔ)言改寫(xiě),從此以語(yǔ)言改寫(xiě),從此以后,后,C語(yǔ)言成為編寫(xiě)操作系統(tǒng)的主要語(yǔ)言。語(yǔ)言成為編寫(xiě)操作系統(tǒng)的主要語(yǔ)言

13、。2、ANSI C標(biāo)準(zhǔn)標(biāo)準(zhǔn) 1970到到80年代,年代,C語(yǔ)言被廣泛應(yīng)用,從大型主語(yǔ)言被廣泛應(yīng)用,從大型主機(jī)到小型微機(jī),也衍生了機(jī)到小型微機(jī),也衍生了C語(yǔ)言的很多不同版本。語(yǔ)言的很多不同版本。 為統(tǒng)一為統(tǒng)一C語(yǔ)言版本,語(yǔ)言版本,1983年美國(guó)國(guó)家標(biāo)準(zhǔn)局年美國(guó)國(guó)家標(biāo)準(zhǔn)局(American National Standards Institute,簡(jiǎn)稱(chēng),簡(jiǎn)稱(chēng)ANSI)成立了一個(gè)委員會(huì),來(lái)制定成立了一個(gè)委員會(huì),來(lái)制定 C語(yǔ)言標(biāo)準(zhǔn)。語(yǔ)言標(biāo)準(zhǔn)。1989年年 C語(yǔ)言標(biāo)準(zhǔn)被批準(zhǔn),被稱(chēng)為語(yǔ)言標(biāo)準(zhǔn)被批準(zhǔn),被稱(chēng)為 ANSI X3.159-1989 “Programming Language C”。這個(gè)版本的。這個(gè)

14、版本的C語(yǔ)言標(biāo)準(zhǔn)語(yǔ)言標(biāo)準(zhǔn)通常被稱(chēng)為通常被稱(chēng)為ANSI C(C89)。)。3、C99標(biāo)準(zhǔn)標(biāo)準(zhǔn) 在在ANSI C 標(biāo)準(zhǔn)確立之后,標(biāo)準(zhǔn)確立之后,C語(yǔ)言的規(guī)范在很長(zhǎng)一語(yǔ)言的規(guī)范在很長(zhǎng)一段時(shí)間內(nèi)都沒(méi)有大的變動(dòng)。段時(shí)間內(nèi)都沒(méi)有大的變動(dòng)。1995年年 WG14小組對(duì)小組對(duì) C語(yǔ)語(yǔ)言進(jìn)行了一些修改,成為后來(lái)的言進(jìn)行了一些修改,成為后來(lái)的 1999年發(fā)布的年發(fā)布的 ISO/IEC 9899:1999標(biāo)準(zhǔn),通常被標(biāo)準(zhǔn),通常被稱(chēng)為稱(chēng)為 C99。但是各個(gè)。但是各個(gè)公司對(duì)公司對(duì) C99的支持所表現(xiàn)出來(lái)的興趣不同。當(dāng)?shù)闹С炙憩F(xiàn)出來(lái)的興趣不同。當(dāng)GCC和和其他一些商業(yè)編譯器支持其他一些商業(yè)編譯器支持C99的大部分特性的時(shí)

15、候,的大部分特性的時(shí)候,微軟和微軟和 Borland卻似乎對(duì)此不感興趣。卻似乎對(duì)此不感興趣。4、ISO發(fā)布發(fā)布C語(yǔ)言標(biāo)準(zhǔn)新版本語(yǔ)言標(biāo)準(zhǔn)新版本 ISO(International Organization for Standardization)于)于2011年年4月正式公布月正式公布C語(yǔ)言新語(yǔ)言新的國(guó)際標(biāo)準(zhǔn)草案。之前被命名為的國(guó)際標(biāo)準(zhǔn)草案。之前被命名為C1X的新標(biāo)準(zhǔn)將的新標(biāo)準(zhǔn)將被稱(chēng)為被稱(chēng)為ISO/IEC 9899:2011(C11版版)。新的標(biāo)準(zhǔn)修)。新的標(biāo)準(zhǔn)修訂了訂了C11版本,提高了對(duì)版本,提高了對(duì)C+的兼容性,并將新的的兼容性,并將新的特性增加到特性增加到C語(yǔ)言中。語(yǔ)言中。5、C 語(yǔ)言對(duì)

16、其他語(yǔ)言的影響語(yǔ)言對(duì)其他語(yǔ)言的影響 很多編程語(yǔ)言都深受很多編程語(yǔ)言都深受 C語(yǔ)言的影響,比如語(yǔ)言的影響,比如C+(原先是原先是C語(yǔ)言的一個(gè)擴(kuò)展語(yǔ)言的一個(gè)擴(kuò)展),C#,Java,PHP,Javascript,Perl,LPC 和和 UNIX 的的C Shell。也正因?yàn)?。也正因?yàn)?C語(yǔ)言的影響力,掌握語(yǔ)言的影響力,掌握 C語(yǔ)言的人,再學(xué)其他編程語(yǔ)言的人,再學(xué)其他編程語(yǔ)言,大多能很快上手,觸類(lèi)旁通。語(yǔ)言,大多能很快上手,觸類(lèi)旁通。6、目前、目前 C語(yǔ)言的商用版本語(yǔ)言的商用版本 目 前 最 流 行 的 語(yǔ) 言 有 以 下 幾 種 :目 前 最 流 行 的 語(yǔ) 言 有 以 下 幾 種 : 1 )Mic

17、rosoft C 或稱(chēng)或稱(chēng) MS C;2)Borland C(簡(jiǎn)稱(chēng)簡(jiǎn)稱(chēng)BC) 或或 Turbo C;3)Win-TC;4)AT&T C;5)Objective-C。這些語(yǔ)言版本不僅實(shí)現(xiàn)了。這些語(yǔ)言版本不僅實(shí)現(xiàn)了ANSI C標(biāo)準(zhǔn)(標(biāo)準(zhǔn)(C89版),而且在此基礎(chǔ)上各自作了一些擴(kuò)充,使之版),而且在此基礎(chǔ)上各自作了一些擴(kuò)充,使之更加方便與實(shí)用。更加方便與實(shí)用。1.3.1 C語(yǔ)言是優(yōu)秀的程序語(yǔ)言語(yǔ)言是優(yōu)秀的程序語(yǔ)言1.3.2 C語(yǔ)言與語(yǔ)言與C+的關(guān)系的關(guān)系 早期的早期的C 語(yǔ)言語(yǔ)言主要是用于主要是用于UNIX系統(tǒng)系統(tǒng)。由于語(yǔ)言的強(qiáng)大功能和各方面的優(yōu)點(diǎn)由于語(yǔ)言的強(qiáng)大功能和各方面的優(yōu)點(diǎn)逐漸為人們認(rèn)

18、識(shí),到了八十年代,逐漸為人們認(rèn)識(shí),到了八十年代,C開(kāi)始開(kāi)始進(jìn)入其他操作系統(tǒng),并很快在各類(lèi)大、進(jìn)入其他操作系統(tǒng),并很快在各類(lèi)大、中、小和微型計(jì)算機(jī)上得到了廣泛的使中、小和微型計(jì)算機(jī)上得到了廣泛的使用,用,成為當(dāng)代最優(yōu)秀的程序設(shè)計(jì)語(yǔ)言之成為當(dāng)代最優(yōu)秀的程序設(shè)計(jì)語(yǔ)言之一。一。 1、C語(yǔ)言的優(yōu)秀之處語(yǔ)言的優(yōu)秀之處(1)語(yǔ)言簡(jiǎn)潔,使用方便靈活)語(yǔ)言簡(jiǎn)潔,使用方便靈活(2)可移植性好)可移植性好(3)數(shù)據(jù)結(jié)構(gòu)類(lèi)型豐富,表達(dá)能力強(qiáng))數(shù)據(jù)結(jié)構(gòu)類(lèi)型豐富,表達(dá)能力強(qiáng)(4)運(yùn)算符多,表達(dá)方式靈活)運(yùn)算符多,表達(dá)方式靈活(5)可進(jìn)行結(jié)構(gòu)化程序設(shè)計(jì))可進(jìn)行結(jié)構(gòu)化程序設(shè)計(jì)(6)可以直接操作計(jì)算機(jī)硬件)可以直接操作計(jì)算機(jī)硬

19、件(7)生成的目標(biāo)代碼質(zhì)量高)生成的目標(biāo)代碼質(zhì)量高2、C語(yǔ)言的不足語(yǔ)言的不足 C語(yǔ)言具有很多的優(yōu)點(diǎn),但和其他任何一種程語(yǔ)言具有很多的優(yōu)點(diǎn),但和其他任何一種程序設(shè)計(jì)語(yǔ)言一樣也有其自身的缺點(diǎn),如不能自動(dòng)檢序設(shè)計(jì)語(yǔ)言一樣也有其自身的缺點(diǎn),如不能自動(dòng)檢查數(shù)組的邊界,各種運(yùn)算符的優(yōu)先級(jí)別太多,某些查數(shù)組的邊界,各種運(yùn)算符的優(yōu)先級(jí)別太多,某些運(yùn)算符具有多種用途,較其他高級(jí)語(yǔ)言運(yùn)算符具有多種用途,較其他高級(jí)語(yǔ)言C語(yǔ)言在學(xué)語(yǔ)言在學(xué)習(xí)上要困難一些等。習(xí)上要困難一些等。 但總的來(lái)說(shuō),但總的來(lái)說(shuō),C語(yǔ)言的優(yōu)點(diǎn)遠(yuǎn)遠(yuǎn)超過(guò)了它的缺語(yǔ)言的優(yōu)點(diǎn)遠(yuǎn)遠(yuǎn)超過(guò)了它的缺點(diǎn)。點(diǎn)。經(jīng)驗(yàn)表明,程序設(shè)計(jì)人員一旦學(xué)會(huì)使用經(jīng)驗(yàn)表明,程序設(shè)計(jì)人員一

20、旦學(xué)會(huì)使用C語(yǔ)言語(yǔ)言之后,就會(huì)對(duì)它愛(ài)不釋手。之后,就會(huì)對(duì)它愛(ài)不釋手。2、C語(yǔ)言的不足語(yǔ)言的不足 C語(yǔ)言具有很多的優(yōu)點(diǎn),但和其他任何一種程語(yǔ)言具有很多的優(yōu)點(diǎn),但和其他任何一種程序設(shè)計(jì)語(yǔ)言一樣也有其自身的缺點(diǎn),如不能自動(dòng)序設(shè)計(jì)語(yǔ)言一樣也有其自身的缺點(diǎn),如不能自動(dòng)檢查數(shù)組的邊界,各種運(yùn)算符的優(yōu)先級(jí)別太多,檢查數(shù)組的邊界,各種運(yùn)算符的優(yōu)先級(jí)別太多,某些運(yùn)算符具有多種用途,較其他高級(jí)語(yǔ)言某些運(yùn)算符具有多種用途,較其他高級(jí)語(yǔ)言C語(yǔ)語(yǔ)言在學(xué)習(xí)上要困難一些等。言在學(xué)習(xí)上要困難一些等。 但總的來(lái)說(shuō),但總的來(lái)說(shuō),C語(yǔ)言的優(yōu)點(diǎn)遠(yuǎn)遠(yuǎn)超過(guò)了它的缺語(yǔ)言的優(yōu)點(diǎn)遠(yuǎn)遠(yuǎn)超過(guò)了它的缺點(diǎn)點(diǎn)。經(jīng)驗(yàn)表明,程序設(shè)計(jì)人員一旦學(xué)會(huì)使用。經(jīng)驗(yàn)表

21、明,程序設(shè)計(jì)人員一旦學(xué)會(huì)使用C語(yǔ)語(yǔ)言之后,就會(huì)對(duì)它愛(ài)不釋手。言之后,就會(huì)對(duì)它愛(ài)不釋手。3、C語(yǔ)言的應(yīng)用領(lǐng)域語(yǔ)言的應(yīng)用領(lǐng)域(1)應(yīng)用軟件。)應(yīng)用軟件。Linux操作系統(tǒng)中的應(yīng)用軟件都是使用操作系統(tǒng)中的應(yīng)用軟件都是使用C語(yǔ)言編寫(xiě)的,因此這樣的應(yīng)用軟件安全性非常高。語(yǔ)言編寫(xiě)的,因此這樣的應(yīng)用軟件安全性非常高。(2)對(duì)性能要求嚴(yán)格的領(lǐng)域。一般對(duì)性能有嚴(yán)格要求)對(duì)性能要求嚴(yán)格的領(lǐng)域。一般對(duì)性能有嚴(yán)格要求的地方都是用的地方都是用C語(yǔ)言編寫(xiě)的,比如網(wǎng)絡(luò)程序的底層和網(wǎng)語(yǔ)言編寫(xiě)的,比如網(wǎng)絡(luò)程序的底層和網(wǎng)絡(luò)服務(wù)器端底層、地圖查詢(xún)等。絡(luò)服務(wù)器端底層、地圖查詢(xún)等。(3)系統(tǒng)軟件和圖形處理。)系統(tǒng)軟件和圖形處理。C語(yǔ)言

22、具有很強(qiáng)的繪圖能語(yǔ)言具有很強(qiáng)的繪圖能力和可移植性,并且具備很強(qiáng)的數(shù)據(jù)處理能力,可以力和可移植性,并且具備很強(qiáng)的數(shù)據(jù)處理能力,可以用來(lái)編寫(xiě)系統(tǒng)軟件、制作動(dòng)畫(huà)、繪制二維圖形和三維用來(lái)編寫(xiě)系統(tǒng)軟件、制作動(dòng)畫(huà)、繪制二維圖形和三維圖形等。圖形等。3、C語(yǔ)言的應(yīng)用領(lǐng)域語(yǔ)言的應(yīng)用領(lǐng)域(4)數(shù)字計(jì)算。相對(duì)于其他編程語(yǔ)言,)數(shù)字計(jì)算。相對(duì)于其他編程語(yǔ)言,C語(yǔ)言是數(shù)字語(yǔ)言是數(shù)字計(jì)算能力超強(qiáng)的高級(jí)語(yǔ)言。計(jì)算能力超強(qiáng)的高級(jí)語(yǔ)言。(5)嵌入式設(shè)備開(kāi)發(fā)。手機(jī)、)嵌入式設(shè)備開(kāi)發(fā)。手機(jī)、PDA等時(shí)尚消費(fèi)類(lèi)電子等時(shí)尚消費(fèi)類(lèi)電子產(chǎn)品相信大家都不陌生,其內(nèi)部的應(yīng)用軟件、游戲等產(chǎn)品相信大家都不陌生,其內(nèi)部的應(yīng)用軟件、游戲等很多都是采

23、用很多都是采用C語(yǔ)言進(jìn)行嵌入式開(kāi)發(fā)的。語(yǔ)言進(jìn)行嵌入式開(kāi)發(fā)的。(6)游戲軟件開(kāi)發(fā)。游戲大家更不陌生,很多人就)游戲軟件開(kāi)發(fā)。游戲大家更不陌生,很多人就是由玩游戲而熟悉了計(jì)算機(jī)。利用是由玩游戲而熟悉了計(jì)算機(jī)。利用C語(yǔ)言可以開(kāi)發(fā)很語(yǔ)言可以開(kāi)發(fā)很多游戲,比如推箱子、貪吃蛇等。多游戲,比如推箱子、貪吃蛇等。 C語(yǔ)言是語(yǔ)言是C+語(yǔ)言的基礎(chǔ)語(yǔ)言的基礎(chǔ),C+和在很多方和在很多方面是兼容的。因此,掌握了語(yǔ)言,再進(jìn)一步面是兼容的。因此,掌握了語(yǔ)言,再進(jìn)一步學(xué)習(xí)學(xué)習(xí)C+就能以一種熟悉的語(yǔ)法來(lái)學(xué)習(xí)面向?qū)ο缶湍芤砸环N熟悉的語(yǔ)法來(lái)學(xué)習(xí)面向?qū)ο蟮恼Z(yǔ)言,從而達(dá)到事半功倍的效果。的語(yǔ)言,從而達(dá)到事半功倍的效果。 兩者間差不多是

24、兩者間差不多是Win98跟跟WinXP的關(guān)系。的關(guān)系。C+是在是在C的基礎(chǔ)上增加了新的面向?qū)ο罄碚摰幕A(chǔ)上增加了新的面向?qū)ο罄碚?,玩出,玩出了新的花樣,所以叫做了新的花樣,所以叫做C加加。加加。 C是一種結(jié)構(gòu)化語(yǔ)言,是一種結(jié)構(gòu)化語(yǔ)言,它的重點(diǎn)在于算法和數(shù)它的重點(diǎn)在于算法和數(shù)據(jù)結(jié)構(gòu)。據(jù)結(jié)構(gòu)。C程序的設(shè)計(jì)首要考慮的是如何通過(guò)一程序的設(shè)計(jì)首要考慮的是如何通過(guò)一個(gè)過(guò)程,對(duì)輸入(或環(huán)境條件)進(jìn)行運(yùn)算處理得個(gè)過(guò)程,對(duì)輸入(或環(huán)境條件)進(jìn)行運(yùn)算處理得到輸出(或?qū)崿F(xiàn)過(guò)程(事務(wù))控制)。到輸出(或?qū)崿F(xiàn)過(guò)程(事務(wù))控制)。 C+,首要考慮的是如何構(gòu)造一個(gè)對(duì)象模型首要考慮的是如何構(gòu)造一個(gè)對(duì)象模型,讓這個(gè)模型能夠契合

25、與之對(duì)應(yīng)的問(wèn)題域,這樣就讓這個(gè)模型能夠契合與之對(duì)應(yīng)的問(wèn)題域,這樣就可以通過(guò)獲取對(duì)象的狀態(tài)信息得到輸出或?qū)崿F(xiàn)過(guò)可以通過(guò)獲取對(duì)象的狀態(tài)信息得到輸出或?qū)崿F(xiàn)過(guò)程(事務(wù))控制。程(事務(wù))控制。 C與與C+的最大區(qū)別在于它們的用于解決的最大區(qū)別在于它們的用于解決問(wèn)題的思想方法不一樣。之所以說(shuō)問(wèn)題的思想方法不一樣。之所以說(shuō)C+比比C更先進(jìn),是因?yàn)楦冗M(jìn),是因?yàn)椤霸O(shè)計(jì)這個(gè)概念已經(jīng)被融設(shè)計(jì)這個(gè)概念已經(jīng)被融入到入到C+之中之中”。 C語(yǔ)言與語(yǔ)言與C的區(qū)別有很多:的區(qū)別有很多: 1)全新的程序程序思維,)全新的程序程序思維,C語(yǔ)言是面向過(guò)程語(yǔ)言是面向過(guò)程的,而的,而C是面向?qū)ο蟮?。是面向?qū)ο蟮摹?2)C語(yǔ)言有標(biāo)準(zhǔn)的

26、函數(shù)庫(kù),它們松散的,而語(yǔ)言有標(biāo)準(zhǔn)的函數(shù)庫(kù),它們松散的,而C+對(duì)于大多數(shù)的函數(shù)都是集成得很緊密的。對(duì)于大多數(shù)的函數(shù)都是集成得很緊密的。 其它其它3)7)不同點(diǎn)見(jiàn)書(shū)本。)不同點(diǎn)見(jiàn)書(shū)本。 C+功能雖強(qiáng),但它是以功能雖強(qiáng),但它是以C語(yǔ)言為基礎(chǔ)的,也語(yǔ)言為基礎(chǔ)的,也就是說(shuō)學(xué)習(xí)掌握就是說(shuō)學(xué)習(xí)掌握C語(yǔ)言是首要的。語(yǔ)言是首要的。 為了說(shuō)明語(yǔ)言源程序結(jié)構(gòu)的特點(diǎn)為了說(shuō)明語(yǔ)言源程序結(jié)構(gòu)的特點(diǎn),先看以下幾個(gè)程序。這幾個(gè)程序由簡(jiǎn)到難先看以下幾個(gè)程序。這幾個(gè)程序由簡(jiǎn)到難,表現(xiàn)了語(yǔ)言源程序在組成結(jié)構(gòu)上的特,表現(xiàn)了語(yǔ)言源程序在組成結(jié)構(gòu)上的特點(diǎn)。雖然有關(guān)內(nèi)容還未介紹,但可從這些點(diǎn)。雖然有關(guān)內(nèi)容還未介紹,但可從這些例子例子直觀地

27、了解到組成一個(gè)直觀地了解到組成一個(gè)C源程序的基源程序的基本部分和書(shū)寫(xiě)格式本部分和書(shū)寫(xiě)格式等。等。 【例例1-1】 比較著名的最簡(jiǎn)單程序,顯示比較著名的最簡(jiǎn)單程序,顯示“Hello, World!”。#include /* include稱(chēng)為文件包含命令,稱(chēng)為文件包含命令, 擴(kuò)展名為擴(kuò)展名為.h的文件稱(chēng)為頭文件的文件稱(chēng)為頭文件*/main() printf(Hello, World !n); /顯示顯示Hello, World !信息信息函數(shù)的名字,表示函數(shù)的名字,表示主函數(shù)主函數(shù)C程序程序有且僅有有且僅有一個(gè)一個(gè) main主主 函數(shù)函數(shù) 【例例1-1】 比較著名的最簡(jiǎn)單程序,顯示比較著名的最簡(jiǎn)

28、單程序,顯示“Hello, World!”。 注意:程序的每行后用注意:程序的每行后用“/* */”或或“/”引出的引出的內(nèi)容為注釋部分,起到說(shuō)明語(yǔ)句或程序的作用,程序內(nèi)容為注釋部分,起到說(shuō)明語(yǔ)句或程序的作用,程序不執(zhí)行注釋部分不執(zhí)行注釋部分。程序說(shuō)明:程序說(shuō)明: main是主函數(shù)的函數(shù)名,表示這是一個(gè)主函是主函數(shù)的函數(shù)名,表示這是一個(gè)主函數(shù)。每一個(gè)數(shù)。每一個(gè)C源程序都必須源程序都必須有且只能有一個(gè)主函數(shù)有且只能有一個(gè)主函數(shù)(main函數(shù)函數(shù))。函數(shù)調(diào)用語(yǔ)句。函數(shù)調(diào)用語(yǔ)句printf函數(shù)的功能是把要函數(shù)的功能是把要輸出的內(nèi)容送到顯示器去顯示。輸出的內(nèi)容送到顯示器去顯示。printf函數(shù)是一個(gè)函

29、數(shù)是一個(gè)由系統(tǒng)定義的標(biāo)準(zhǔn)函數(shù)(即庫(kù)函數(shù))由系統(tǒng)定義的標(biāo)準(zhǔn)函數(shù)(即庫(kù)函數(shù)),可在程序中,可在程序中直接調(diào)用。直接調(diào)用。不是不是C語(yǔ)言語(yǔ)句語(yǔ)言語(yǔ)句,而是庫(kù)函數(shù)。而是庫(kù)函數(shù)。 【例例1-2】 輸入數(shù)輸入數(shù)x,計(jì)算,計(jì)算sin(x)的值。程序的每個(gè)的值。程序的每個(gè)語(yǔ)句功能由注釋可知。語(yǔ)句功能由注釋可知。#include /*程序要使用到數(shù)學(xué)庫(kù)函數(shù)(程序要使用到數(shù)學(xué)庫(kù)函數(shù)(sin函數(shù))函數(shù))*/#include int main() /*main函數(shù)首部函數(shù)首部*/ /*main函數(shù)體開(kāi)始函數(shù)體開(kāi)始*/ double x,s; /定義兩個(gè)實(shí)數(shù)變量,以被后面程序使用定義兩個(gè)實(shí)數(shù)變量,以被后面程序使用 pr

30、intf(input number:n); /顯示提示信息顯示提示信息 scanf(%lf,&x); /*從鍵盤(pán)獲得一個(gè)實(shí)數(shù)從鍵盤(pán)獲得一個(gè)實(shí)數(shù)x*/ s=sin(x); /*求求x的正弦,并把它賦給變量的正弦,并把它賦給變量s*/ printf(sine(%lf) = %lfn,x,s); /*顯示程序運(yùn)算結(jié)果顯示程序運(yùn)算結(jié)果*/ return 0; /*main函數(shù)體結(jié)束函數(shù)體結(jié)束*/主函數(shù)主函數(shù)類(lèi)型類(lèi)型函數(shù)體函數(shù)體 說(shuō)明:程序的功能是從鍵盤(pán)輸入一個(gè)數(shù)說(shuō)明:程序的功能是從鍵盤(pán)輸入一個(gè)數(shù)x,求,求x的正的正弦值,然后輸出結(jié)果。弦值,然后輸出結(jié)果。 在在main()之前的兩行命令稱(chēng)為預(yù)處

31、理命令。之前的兩行命令稱(chēng)為預(yù)處理命令。include稱(chēng)為文件包含命令,其意義是把尖括號(hào)稱(chēng)為文件包含命令,其意義是把尖括號(hào)或引號(hào)或引號(hào)“”內(nèi)指內(nèi)指定的文件包含到本程序來(lái),成為程序的一部分。被包含定的文件包含到本程序來(lái),成為程序的一部分。被包含的文件通常是由系統(tǒng)提供的,其擴(kuò)展名為的文件通常是由系統(tǒng)提供的,其擴(kuò)展名為.h。 .h文件稱(chēng)文件稱(chēng)為頭文件或首部文件為頭文件或首部文件。語(yǔ)言的頭文件中包括了各個(gè)標(biāo)。語(yǔ)言的頭文件中包括了各個(gè)標(biāo)準(zhǔn)庫(kù)函數(shù)的函數(shù)原型。因此,準(zhǔn)庫(kù)函數(shù)的函數(shù)原型。因此,凡是在程序中調(diào)用一個(gè)庫(kù)凡是在程序中調(diào)用一個(gè)庫(kù)函數(shù)時(shí),一般都要包含該函數(shù)原型所在的頭文件函數(shù)時(shí),一般都要包含該函數(shù)原型所在

32、的頭文件。限于篇幅限于篇幅“#include ”#include ”常省略常省略 在本例中,使用了三個(gè)庫(kù)函數(shù):輸入函數(shù)在本例中,使用了三個(gè)庫(kù)函數(shù):輸入函數(shù)scanf,正弦函數(shù),正弦函數(shù)sin,輸出函數(shù),輸出函數(shù)printf。 sin函數(shù)是數(shù)學(xué)函數(shù),其頭文件為函數(shù)是數(shù)學(xué)函數(shù),其頭文件為math.h文件文件,因此在程序的主函數(shù)前用,因此在程序的主函數(shù)前用include命令包含了命令包含了math.h。 scanf和和printf是標(biāo)準(zhǔn)輸入輸出函數(shù),其頭文件是標(biāo)準(zhǔn)輸入輸出函數(shù),其頭文件為為stdio.h,在主函數(shù)前也用,在主函數(shù)前也用include命令包含了命令包含了stdio.h文件。文件。 需要

33、說(shuō)明的是,需要說(shuō)明的是,C語(yǔ)言規(guī)定對(duì)語(yǔ)言規(guī)定對(duì)scanf和和printf這兩個(gè)函數(shù)可以這兩個(gè)函數(shù)可以省省去對(duì)其頭文件的包去對(duì)其頭文件的包含命令。含命令。 為此,在本例中也可以省略為此,在本例中也可以省略 “#include ”。 主函數(shù)體可分為兩部分,一部分為說(shuō)明部分(主函數(shù)體可分為兩部分,一部分為說(shuō)明部分(可選),另一部分為執(zhí)行部分可選),另一部分為執(zhí)行部分。說(shuō)明是指變量的。說(shuō)明是指變量的類(lèi)型定義或函數(shù)聲明等。類(lèi)型定義或函數(shù)聲明等。 語(yǔ)言規(guī)定,源程序中所有用到的變量都必須語(yǔ)言規(guī)定,源程序中所有用到的變量都必須先說(shuō)明,后使用先說(shuō)明,后使用,否則將會(huì)出錯(cuò)。這一點(diǎn)是編譯,否則將會(huì)出錯(cuò)。這一點(diǎn)是編譯

34、型高級(jí)程序設(shè)計(jì)語(yǔ)言的一個(gè)特點(diǎn),與解釋型的型高級(jí)程序設(shè)計(jì)語(yǔ)言的一個(gè)特點(diǎn),與解釋型的BASIC語(yǔ)言是不同的。說(shuō)明部分是語(yǔ)言是不同的。說(shuō)明部分是C源程序結(jié)構(gòu)中源程序結(jié)構(gòu)中很重要的組成部分。很重要的組成部分。 執(zhí)行部分的第一行是輸出語(yǔ)句,調(diào)用執(zhí)行部分的第一行是輸出語(yǔ)句,調(diào)用printf函數(shù)函數(shù)在顯示器上輸出提示字符串,提示操作人員輸入自在顯示器上輸出提示字符串,提示操作人員輸入自變量變量x的值。的值。 第二行為輸入語(yǔ)句,調(diào)用第二行為輸入語(yǔ)句,調(diào)用scanf函數(shù),接受鍵盤(pán)函數(shù),接受鍵盤(pán)上輸入的數(shù)并存入變量上輸入的數(shù)并存入變量x中。中。 第三行是調(diào)用第三行是調(diào)用sin函數(shù)并把函數(shù)值送到變量函數(shù)并把函數(shù)值送

35、到變量s中。中。 第四行是用第四行是用printf 函數(shù)輸出變量函數(shù)輸出變量s的值,即的值,即x的正的正弦值。程序結(jié)束。弦值。程序結(jié)束。printf(input number:n);scanf(%lf,&x);s=sin(x);printf(sin (%lf) = %lfn,x,s); scanf和和printf這這兩個(gè)函數(shù)兩個(gè)函數(shù)分別稱(chēng)為格式輸分別稱(chēng)為格式輸入函數(shù)和格式輸出函數(shù)。其意義是按指定的入函數(shù)和格式輸出函數(shù)。其意義是按指定的格式輸入輸出值。因此,這兩個(gè)函數(shù)在括號(hào)格式輸入輸出值。因此,這兩個(gè)函數(shù)在括號(hào)中的參數(shù)表都由以下兩部分組成:中的參數(shù)表都由以下兩部分組成:(“格式控格式控制

36、串制串”, 參數(shù)表參數(shù)表)。 【例例1-3】 從文件從文件infile.txt或鍵盤(pán)輸入或鍵盤(pán)輸入x,y兩整數(shù)兩整數(shù),經(jīng)處理后,輸出兩數(shù)、其最大值與最小值到顯示,經(jīng)處理后,輸出兩數(shù)、其最大值與最小值到顯示屏及輸出文件屏及輸出文件outfile.txt中。中。 注意:一個(gè)注意:一個(gè)C語(yǔ)言程序可由一個(gè)、兩個(gè)或多個(gè)語(yǔ)言程序可由一個(gè)、兩個(gè)或多個(gè)C源程序文件組成,如下程序設(shè)計(jì)分成兩個(gè)源程序文源程序文件組成,如下程序設(shè)計(jì)分成兩個(gè)源程序文件(若運(yùn)行包含多文件的程序有困難,可以先作為件(若運(yùn)行包含多文件的程序有困難,可以先作為一個(gè)文件運(yùn)行)。一個(gè)文件運(yùn)行)。/ file1.cC源程序文件源程序文件1,含,含m

37、ain()與與max()函數(shù)函數(shù)/ file1.cC源程序文件源程序文件1, 含含main()與與max()函數(shù)函數(shù) 【例例1-3】 從文件從文件infile.txt或鍵盤(pán)輸入或鍵盤(pán)輸入x,y兩整數(shù)兩整數(shù),經(jīng)處理后,輸出兩數(shù)、其最大值與最小值到顯示,經(jīng)處理后,輸出兩數(shù)、其最大值與最小值到顯示屏及輸出文件屏及輸出文件outfile.txt中。中。 /* file2.cC源程序文件源程序文件2,含,含min()函數(shù)函數(shù) */ int min(int a,int b) /*定義定義min函數(shù)函數(shù)*/ int result; result= ab?a:b; /*使用使用?:條件運(yùn)算符得到條件運(yùn)算符得到

38、最小數(shù)最小數(shù)*/ return result; /*返回最小值返回最小值*/ 說(shuō)明:說(shuō)明:本本程序由三個(gè)函數(shù)組成程序由三個(gè)函數(shù)組成,main主函數(shù)主函數(shù)、max函數(shù)和函數(shù)和min 函數(shù)。函數(shù)。函數(shù)之間是并列關(guān)系函數(shù)之間是并列關(guān)系??蓮闹骱瘮?shù)中調(diào)用其他函數(shù)??蓮闹骱瘮?shù)中調(diào)用其他函數(shù)。max 函數(shù)的功能是函數(shù)的功能是比較兩個(gè)數(shù),然后把較大的數(shù)返回給主函數(shù),相比較兩個(gè)數(shù),然后把較大的數(shù)返回給主函數(shù),相應(yīng)的應(yīng)的min 函數(shù)把較小的數(shù)返回給主函數(shù)。函數(shù)把較小的數(shù)返回給主函數(shù)。max函函數(shù)和數(shù)和min函數(shù)是用戶(hù)自定義函數(shù)。因此在主函數(shù)函數(shù)是用戶(hù)自定義函數(shù)。因此在主函數(shù)中要給出函數(shù)聲明中要給出函數(shù)聲明(程序

39、第程序第7、8行行),其中,其中min函數(shù)函數(shù)還來(lái)自另一個(gè)源文件,為此是外部函數(shù)聲明。還來(lái)自另一個(gè)源文件,為此是外部函數(shù)聲明。請(qǐng)理解請(qǐng)理解C C函數(shù)間的并列、平等性函數(shù)間的并列、平等性1.5.1 C程序的結(jié)構(gòu)特點(diǎn)程序的結(jié)構(gòu)特點(diǎn)1.5.2 C程序的書(shū)寫(xiě)規(guī)則程序的書(shū)寫(xiě)規(guī)則1.5.3 C語(yǔ)言字符集與詞匯語(yǔ)言字符集與詞匯程序的完整結(jié)構(gòu)可以用圖程序的完整結(jié)構(gòu)可以用圖1.1來(lái)表示。來(lái)表示。圖圖1.1 程序的完整結(jié)構(gòu)程序的完整結(jié)構(gòu)對(duì)對(duì)C語(yǔ)言的結(jié)構(gòu)特點(diǎn)再說(shuō)明如下:語(yǔ)言的結(jié)構(gòu)特點(diǎn)再說(shuō)明如下: 1)一個(gè)語(yǔ)言源程序可以由)一個(gè)語(yǔ)言源程序可以由一個(gè)或多個(gè)源程一個(gè)或多個(gè)源程序文件組成序文件組成。 2)每個(gè)源程序文件可)

40、每個(gè)源程序文件可由預(yù)處理命令由預(yù)處理命令(include 命命令僅為其中的一種令僅為其中的一種)、全局變量定義、變量或函數(shù)、全局變量定義、變量或函數(shù)聲明、一個(gè)或多個(gè)函數(shù)等組成聲明、一個(gè)或多個(gè)函數(shù)等組成。預(yù)處理命令等通。預(yù)處理命令等通常應(yīng)放在源文件或源程序的最前面。常應(yīng)放在源文件或源程序的最前面。 3)一個(gè))一個(gè)C程序不論由多少個(gè)文件組成,都程序不論由多少個(gè)文件組成,都有且僅有有且僅有一個(gè)一個(gè)main函數(shù),即主函數(shù)函數(shù),即主函數(shù)。程序從程序從main函數(shù)開(kāi)始執(zhí)行函數(shù)開(kāi)始執(zhí)行,到,到main函數(shù)執(zhí)行完成而結(jié)束。函數(shù)執(zhí)行完成而結(jié)束。 4)每個(gè))每個(gè)C語(yǔ)言語(yǔ)言函數(shù)通常由函數(shù)首部(如函數(shù)通常由函數(shù)首部(

41、如int max(int a,int b))、函數(shù)體組成)、函數(shù)體組成。函數(shù)體一般又由局部變量定義。函數(shù)體一般又由局部變量定義與函數(shù)聲明等組成的定義與聲明部分、程序執(zhí)行語(yǔ)句等與函數(shù)聲明等組成的定義與聲明部分、程序執(zhí)行語(yǔ)句等組成的執(zhí)行部分這兩部分組成的(如組成的執(zhí)行部分這兩部分組成的(如min函數(shù)所示)。函數(shù)所示)。 5)C程序的程序的每一個(gè)語(yǔ)句都必須以分號(hào)每一個(gè)語(yǔ)句都必須以分號(hào)(;)結(jié)尾結(jié)尾。但預(yù)。但預(yù)處理命令,函數(shù)頭和花括號(hào)處理命令,函數(shù)頭和花括號(hào)“”之后不能加分號(hào)。之后不能加分號(hào)。 6)標(biāo)識(shí)符、關(guān)鍵字之間必須)標(biāo)識(shí)符、關(guān)鍵字之間必須至少加一個(gè)空格以至少加一個(gè)空格以示間隔示間隔。若已有明顯的

42、間隔符,也可不再加空格來(lái)。若已有明顯的間隔符,也可不再加空格來(lái)間隔。間隔。 由上可知,由上可知,C程序的基本組成單位是函數(shù)程序的基本組成單位是函數(shù),函數(shù),函數(shù)可分為可分為main主函數(shù)、庫(kù)函數(shù)主函數(shù)、庫(kù)函數(shù)(編譯系統(tǒng)提供的編譯系統(tǒng)提供的)、自、自定義函數(shù)定義函數(shù)(用戶(hù)自己定義的用戶(hù)自己定義的)等等3類(lèi)。類(lèi)。 從書(shū)寫(xiě)清晰、便于閱讀、理解、維護(hù)的角度出發(fā),在書(shū)寫(xiě)程從書(shū)寫(xiě)清晰、便于閱讀、理解、維護(hù)的角度出發(fā),在書(shū)寫(xiě)程序時(shí)應(yīng)遵循以下規(guī)則:序時(shí)應(yīng)遵循以下規(guī)則: 1)一般一個(gè)語(yǔ)句(包括說(shuō)明語(yǔ)句)占一行。)一般一個(gè)語(yǔ)句(包括說(shuō)明語(yǔ)句)占一行。 2)用)用 括起來(lái)的部分,通常表示了程序的某一層次結(jié)構(gòu)。括起來(lái)的

43、部分,通常表示了程序的某一層次結(jié)構(gòu)。一般與該結(jié)構(gòu)語(yǔ)句的第一個(gè)字母對(duì)齊,并且一般與該結(jié)構(gòu)語(yǔ)句的第一個(gè)字母對(duì)齊,并且與與括號(hào)符一般分括號(hào)符一般分別單獨(dú)占一行。別單獨(dú)占一行。 3)低一層次的語(yǔ)句或說(shuō)明可比高一層次的語(yǔ)句或說(shuō)明)低一層次的語(yǔ)句或說(shuō)明可比高一層次的語(yǔ)句或說(shuō)明縮進(jìn)縮進(jìn)若干空格后書(shū)寫(xiě)若干空格后書(shū)寫(xiě)。以便看起來(lái)更加清晰,增加程序的可讀性。以便看起來(lái)更加清晰,增加程序的可讀性。 4)程序中應(yīng)添加必要的注釋程序中應(yīng)添加必要的注釋?zhuān)瑏?lái)增強(qiáng)程序的閱讀與理解。,來(lái)增強(qiáng)程序的閱讀與理解。 if(fpi=fopen(infile.txt,r)=NULL) /*打開(kāi)打開(kāi)infile.txt輸入文件輸入文件*/

44、 printf(Input two numbers:n); /*若打開(kāi)失敗,則提示從鍵盤(pán)輸入若打開(kāi)失敗,則提示從鍵盤(pán)輸入*/ scanf(%d%d,&x,&y); /*從鍵盤(pán)輸入從鍵盤(pán)輸入x,y值值*/ else fscanf(fpi,%d%d,&x,&y); /*從文件輸入從文件輸入x,y值值*/ fclose(fpi); /*關(guān)閉文件指針關(guān)閉文件指針fpi*/ 1、C語(yǔ)言的字符集語(yǔ)言的字符集 字符是組成語(yǔ)言的最基本的元素。字符是組成語(yǔ)言的最基本的元素。語(yǔ)言語(yǔ)言字符集由字母、數(shù)字、空格、標(biāo)點(diǎn)和特殊字符字符集由字母、數(shù)字、空格、標(biāo)點(diǎn)和特殊字符組成。組成。在字符常

45、量、字符串常量和注釋中還可在字符常量、字符串常量和注釋中還可以使用漢字或其他可表示的圖形符號(hào)。以使用漢字或其他可表示的圖形符號(hào)。 1)字母:小寫(xiě)字母)字母:小寫(xiě)字母az共共26個(gè);大寫(xiě)字母?jìng)€(gè);大寫(xiě)字母AZ共共26個(gè)個(gè) 2)數(shù)字:)數(shù)字:09共共10個(gè)個(gè)1、C語(yǔ)言的字符集語(yǔ)言的字符集 3)空白符:)空白符:空格符、制表符、換行符等統(tǒng)空格符、制表符、換行符等統(tǒng)稱(chēng)為空白符稱(chēng)為空白符??瞻追辉谧址A亢妥址???瞻追辉谧址A亢妥址A恐衅鹱饔?。在其他地方出現(xiàn)時(shí),只起間隔作量中起作用。在其他地方出現(xiàn)時(shí),只起間隔作用,編譯程序?qū)λ鼈兒雎圆挥?jì)。因此在程序中用,編譯程序?qū)λ鼈兒雎圆挥?jì)。因此在程序中使

46、用空白符與否,對(duì)程序的編譯不發(fā)生影響,使用空白符與否,對(duì)程序的編譯不發(fā)生影響,但在程序中適當(dāng)?shù)牡胤绞褂每瞻追麑⒃黾映绦虻诔绦蛑羞m當(dāng)?shù)牡胤绞褂每瞻追麑⒃黾映绦虻那逦院涂勺x性。的清晰性和可讀性。1、C語(yǔ)言的字符集語(yǔ)言的字符集 4)標(biāo)點(diǎn)和特殊字符)標(biāo)點(diǎn)和特殊字符算術(shù)算術(shù)運(yùn)算符:運(yùn)算符:+ - * / % + -關(guān)系關(guān)系運(yùn)算符:運(yùn)算符: = 條件條件運(yùn)算符:運(yùn)算符:? :其他其他運(yùn)算符:運(yùn)算符:() . , ; 另外,另外,C語(yǔ)言可使用語(yǔ)言可使用轉(zhuǎn)義字符轉(zhuǎn)義字符,具體見(jiàn)表,具體見(jiàn)表1-1。 表表1-1 C語(yǔ)言轉(zhuǎn)義字符表語(yǔ)言轉(zhuǎn)義字符表2、C語(yǔ)言的詞匯語(yǔ)言的詞匯 在語(yǔ)言中使用的詞匯分為六類(lèi):在語(yǔ)言中使

47、用的詞匯分為六類(lèi):標(biāo)識(shí)符,標(biāo)識(shí)符,關(guān)鍵字,運(yùn)算符,分隔符,常量,注釋符關(guān)鍵字,運(yùn)算符,分隔符,常量,注釋符等。等。 (1)標(biāo)識(shí)符)標(biāo)識(shí)符 在程序中使用的在程序中使用的變量名、函數(shù)名、標(biāo)號(hào)等統(tǒng)變量名、函數(shù)名、標(biāo)號(hào)等統(tǒng)稱(chēng)為標(biāo)識(shí)符稱(chēng)為標(biāo)識(shí)符。除庫(kù)函數(shù)的函數(shù)名由系統(tǒng)定義外,。除庫(kù)函數(shù)的函數(shù)名由系統(tǒng)定義外,其余都由用戶(hù)自定義。其余都由用戶(hù)自定義。C 規(guī)定,規(guī)定,標(biāo)識(shí)符標(biāo)識(shí)符只能是字只能是字母母(AZ,az)、數(shù)字、數(shù)字(09)、下劃線、下劃線(_)組成的字組成的字符串,并且其第一個(gè)字符必須是字母或下劃線符串,并且其第一個(gè)字符必須是字母或下劃線。2、C語(yǔ)言的詞匯語(yǔ)言的詞匯 (1)標(biāo)識(shí)符)標(biāo)識(shí)符 以下標(biāo)識(shí)符

48、是合法的:以下標(biāo)識(shí)符是合法的:a, x, x3, BOOK_1, sum5 以下標(biāo)識(shí)符是非法的:以下標(biāo)識(shí)符是非法的:3s (以數(shù)字開(kāi)頭以數(shù)字開(kāi)頭););s*T (出現(xiàn)非法字符出現(xiàn)非法字符*););-3x (以減號(hào)開(kāi)頭以減號(hào)開(kāi)頭););bowy-1 (出現(xiàn)非法減號(hào)字符出現(xiàn)非法減號(hào)字符-)。)。(1)標(biāo)識(shí)符)標(biāo)識(shí)符 在使用標(biāo)識(shí)符時(shí)還必須注意以下幾點(diǎn):在使用標(biāo)識(shí)符時(shí)還必須注意以下幾點(diǎn): 1)標(biāo)準(zhǔn))標(biāo)準(zhǔn)C不限制標(biāo)識(shí)符的長(zhǎng)度,但它受各種不限制標(biāo)識(shí)符的長(zhǎng)度,但它受各種版本的版本的C 語(yǔ)言編譯系統(tǒng)限制,同時(shí)也受到具體機(jī)語(yǔ)言編譯系統(tǒng)限制,同時(shí)也受到具體機(jī)器的限制。例如在器的限制。例如在某版本某版本C 中規(guī)定標(biāo)

49、識(shí)符前八位中規(guī)定標(biāo)識(shí)符前八位有效有效,當(dāng)兩個(gè)標(biāo)識(shí)符前八位相同時(shí),則被認(rèn)為是,當(dāng)兩個(gè)標(biāo)識(shí)符前八位相同時(shí),則被認(rèn)為是同一個(gè)標(biāo)識(shí)符。同一個(gè)標(biāo)識(shí)符。 2)在標(biāo)識(shí)符中,大小寫(xiě)是有區(qū)別的。例如)在標(biāo)識(shí)符中,大小寫(xiě)是有區(qū)別的。例如Book和和book 是兩個(gè)不同的標(biāo)識(shí)符。是兩個(gè)不同的標(biāo)識(shí)符。大小寫(xiě)字母大小寫(xiě)字母不同形成不同形成不同的不同的標(biāo)識(shí)符標(biāo)識(shí)符(1)標(biāo)識(shí)符)標(biāo)識(shí)符 在使用標(biāo)識(shí)符時(shí)還必須注意以下幾點(diǎn):在使用標(biāo)識(shí)符時(shí)還必須注意以下幾點(diǎn): 3)標(biāo)識(shí)符雖然可由程序員隨意定義,但標(biāo)識(shí)符)標(biāo)識(shí)符雖然可由程序員隨意定義,但標(biāo)識(shí)符是用于標(biāo)識(shí)某個(gè)量的符號(hào)。因此,命名應(yīng)盡量有相是用于標(biāo)識(shí)某個(gè)量的符號(hào)。因此,命名應(yīng)盡量有相

50、應(yīng)的意義,以便于閱讀理解,做到應(yīng)的意義,以便于閱讀理解,做到“顧名思義顧名思義”。 4)用戶(hù)定義的標(biāo)識(shí)符不應(yīng)與如下系統(tǒng)關(guān)鍵字相)用戶(hù)定義的標(biāo)識(shí)符不應(yīng)與如下系統(tǒng)關(guān)鍵字相同,同,用戶(hù)定義的標(biāo)識(shí)符也不應(yīng)與系統(tǒng)已定義使用的用戶(hù)定義的標(biāo)識(shí)符也不應(yīng)與系統(tǒng)已定義使用的一些標(biāo)識(shí)符相同一些標(biāo)識(shí)符相同(盡管可能沒(méi)有語(yǔ)法錯(cuò)而可以使用盡管可能沒(méi)有語(yǔ)法錯(cuò)而可以使用),系統(tǒng)已使用標(biāo)識(shí)符如:),系統(tǒng)已使用標(biāo)識(shí)符如:main,define,printf(庫(kù)函庫(kù)函數(shù)名數(shù)名),stdio等等。等等。(2)關(guān)鍵字)關(guān)鍵字 關(guān)鍵字是由語(yǔ)言規(guī)定的具有特定意義的字符關(guān)鍵字是由語(yǔ)言規(guī)定的具有特定意義的字符串,通常也稱(chēng)為保留字。語(yǔ)言的關(guān)鍵字

51、分為以下串,通常也稱(chēng)為保留字。語(yǔ)言的關(guān)鍵字分為以下幾類(lèi):幾類(lèi): 1)類(lèi)型說(shuō)明符:用于定義或說(shuō)明變量、函數(shù)或)類(lèi)型說(shuō)明符:用于定義或說(shuō)明變量、函數(shù)或其他數(shù)據(jù)結(jié)構(gòu)的類(lèi)型。如前面例題中用到的其他數(shù)據(jù)結(jié)構(gòu)的類(lèi)型。如前面例題中用到的int,double等等 2)語(yǔ)句定義符:用于表示一個(gè)語(yǔ)句的功能。如)語(yǔ)句定義符:用于表示一個(gè)語(yǔ)句的功能。如例例1-3中用到的中用到的if else就是條件語(yǔ)句的語(yǔ)句定義符。就是條件語(yǔ)句的語(yǔ)句定義符。(2)關(guān)鍵字)關(guān)鍵字 關(guān)鍵字是由語(yǔ)言規(guī)定的具有特定意義的字符串關(guān)鍵字是由語(yǔ)言規(guī)定的具有特定意義的字符串,通常也稱(chēng)為保留字。語(yǔ)言的關(guān)鍵字分為以下幾,通常也稱(chēng)為保留字。語(yǔ)言的關(guān)鍵字分

52、為以下幾類(lèi):類(lèi): 3)其他(如:)其他(如:const,sizeof等)等) 最新最新ANSI C標(biāo)準(zhǔn)關(guān)鍵字一共只有標(biāo)準(zhǔn)關(guān)鍵字一共只有37個(gè)關(guān)鍵字(詳個(gè)關(guān)鍵字(詳見(jiàn)附錄見(jiàn)附錄B)。)。 注意:預(yù)處理命令字注意:預(yù)處理命令字include,define,ifdef,ifndef等等,庫(kù)函數(shù)名,庫(kù)函數(shù)名printf,scanf等均不是系統(tǒng)關(guān)鍵字,而是等均不是系統(tǒng)關(guān)鍵字,而是系統(tǒng)已定義標(biāo)識(shí)符。系統(tǒng)已定義標(biāo)識(shí)符。(3)運(yùn)算符)運(yùn)算符 語(yǔ)言中含有相當(dāng)豐富的運(yùn)算符。語(yǔ)言中含有相當(dāng)豐富的運(yùn)算符。運(yùn)算符與變量運(yùn)算符與變量、函數(shù)一起組成表達(dá)式,表示各種運(yùn)算功能、函數(shù)一起組成表達(dá)式,表示各種運(yùn)算功能。運(yùn)算符。運(yùn)算

53、符由一個(gè)或多個(gè)字符組成。由一個(gè)或多個(gè)字符組成。(4)分隔符)分隔符 在語(yǔ)言中采用的分隔符有逗號(hào)和空格兩種。逗在語(yǔ)言中采用的分隔符有逗號(hào)和空格兩種。逗號(hào)主要用在類(lèi)型說(shuō)明和函數(shù)參數(shù)表中,分隔各個(gè)變量號(hào)主要用在類(lèi)型說(shuō)明和函數(shù)參數(shù)表中,分隔各個(gè)變量??崭穸嘤糜谡Z(yǔ)句各單詞之間,作間隔符。在關(guān)鍵字。空格多用于語(yǔ)句各單詞之間,作間隔符。在關(guān)鍵字與標(biāo)識(shí)符之間必須要有一個(gè)以上的空格符作間隔,否與標(biāo)識(shí)符之間必須要有一個(gè)以上的空格符作間隔,否則將會(huì)出現(xiàn)語(yǔ)法錯(cuò)誤,例如把則將會(huì)出現(xiàn)語(yǔ)法錯(cuò)誤,例如把int a;寫(xiě)成寫(xiě)成 inta;C編譯器編譯器會(huì)把會(huì)把inta當(dāng)成一個(gè)標(biāo)識(shí)符處理,其結(jié)果必然出錯(cuò)。當(dāng)成一個(gè)標(biāo)識(shí)符處理,其結(jié)果

54、必然出錯(cuò)。(5)常量)常量 C 語(yǔ)言中使用的常量可分為數(shù)字常量、字符常量語(yǔ)言中使用的常量可分為數(shù)字常量、字符常量、字符串常量、符號(hào)常量、轉(zhuǎn)義字符等多種。在后面、字符串常量、符號(hào)常量、轉(zhuǎn)義字符等多種。在后面章節(jié)中將專(zhuān)門(mén)給予介紹。章節(jié)中將專(zhuān)門(mén)給予介紹。(6)注釋符)注釋符 C 語(yǔ)言的一種注釋符是以語(yǔ)言的一種注釋符是以“/*”開(kāi)頭并以開(kāi)頭并以“*/”結(jié)結(jié)尾的串,尾的串,在在“/*”和和“*/”之間的即為注釋?zhuān)⑨寖?nèi)容之間的即為注釋?zhuān)⑨寖?nèi)容可以跨行??梢钥缧??!?*/”注釋能出現(xiàn)在程序的各個(gè)位置,注釋能出現(xiàn)在程序的各個(gè)位置,能滿(mǎn)足各種注釋的要求。具體可參見(jiàn)上面例能滿(mǎn)足各種注釋的要求。具體可參見(jiàn)上面例

55、1-3。 運(yùn)行運(yùn)行C程序必須經(jīng)過(guò)編輯(程序必須經(jīng)過(guò)編輯(.c或或.cpp文文件)、編譯(件)、編譯(.obj文件)、連接(文件)、連接(.exe文文件)、運(yùn)行等過(guò)程,連接得到可執(zhí)行的程件)、運(yùn)行等過(guò)程,連接得到可執(zhí)行的程序文件后,運(yùn)行程序得到運(yùn)行結(jié)果。序文件后,運(yùn)行程序得到運(yùn)行結(jié)果。1、上機(jī)實(shí)踐的重要性、上機(jī)實(shí)踐的重要性 C語(yǔ)言程序設(shè)計(jì)是一門(mén)實(shí)踐性很強(qiáng)的課程,該課程的語(yǔ)言程序設(shè)計(jì)是一門(mén)實(shí)踐性很強(qiáng)的課程,該課程的學(xué)習(xí)有其自身的特點(diǎn),學(xué)習(xí)者必須通過(guò)大量的編程訓(xùn)練學(xué)習(xí)有其自身的特點(diǎn),學(xué)習(xí)者必須通過(guò)大量的編程訓(xùn)練,在實(shí)踐中掌握程序設(shè)計(jì)語(yǔ)言,培養(yǎng)程序設(shè)計(jì)的基本能,在實(shí)踐中掌握程序設(shè)計(jì)語(yǔ)言,培養(yǎng)程序設(shè)計(jì)的

56、基本能力,并逐步理解和掌握程序設(shè)計(jì)的思想和方法。具體地力,并逐步理解和掌握程序設(shè)計(jì)的思想和方法。具體地說(shuō),通過(guò)上機(jī)實(shí)踐,應(yīng)該達(dá)到以下幾點(diǎn)要求:說(shuō),通過(guò)上機(jī)實(shí)踐,應(yīng)該達(dá)到以下幾點(diǎn)要求: 1)使學(xué)習(xí)者能很好地掌握一種程序設(shè)計(jì)開(kāi)發(fā)環(huán)境的)使學(xué)習(xí)者能很好地掌握一種程序設(shè)計(jì)開(kāi)發(fā)環(huán)境的基本操作方法(例如:基本操作方法(例如:Visual C+6.0(簡(jiǎn)稱(chēng)簡(jiǎn)稱(chēng)VC+6.0)、Turbo C 2.0、Win-TC等),掌握應(yīng)用程序開(kāi)發(fā)的一般步等),掌握應(yīng)用程序開(kāi)發(fā)的一般步驟。驟。1、上機(jī)實(shí)踐的重要性、上機(jī)實(shí)踐的重要性 2)在程序設(shè)計(jì)和調(diào)試程序的過(guò)程中,可以幫助學(xué)習(xí))在程序設(shè)計(jì)和調(diào)試程序的過(guò)程中,可以幫助學(xué)習(xí)者進(jìn)一步理解教材中各章節(jié)的主要知識(shí)點(diǎn),特別是一些者進(jìn)一步理解教材中各章節(jié)的主要知識(shí)點(diǎn),特別是一些語(yǔ)法規(guī)則的理解和運(yùn)用,程序設(shè)計(jì)中的常用算法與構(gòu)造語(yǔ)法規(guī)則的理解和運(yùn)用,程序設(shè)計(jì)中的常用算法與構(gòu)造及其應(yīng)用,也就是所謂及其應(yīng)用,也就是所謂“在編程中學(xué)習(xí)編程在編程中學(xué)習(xí)編程”。 3)通過(guò)上機(jī)實(shí)踐,提高程序分析、程序設(shè)計(jì)和程序)通過(guò)上機(jī)實(shí)踐,提高程序分析、程序設(shè)計(jì)和程序調(diào)試的能力。程序調(diào)試是一個(gè)程序員最基本的技能,不調(diào)試的能力。程序調(diào)試是一個(gè)程序員

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論