版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第2章C語言程序設(shè)計概述2.1C語言概述2.2TurboC的集成環(huán)境2.3C語言的程序結(jié)構(gòu)2.1C語言概述
2.1.1C語言的發(fā)展
高級語言的發(fā)展:1)Fortran是第一門高級語言2)20世紀50年代后期有了Algol語言3)20世紀70年代的Pascal是第一門反映了結(jié)構(gòu)化程序設(shè)計思想的高級語言,同時C誕生了,用其設(shè)計UNIX系統(tǒng)4)20世紀80年代中期,出現(xiàn)了oop的設(shè)計概念,在C中擴充了Simula67類的概念,設(shè)計出了C++、VC++及C++builder、Java等。C語言的發(fā)展:
BCPLBC馬丁.理查德在60年代開發(fā)
72-73年Ken.ThompsonDennis.M.Ritchie
v產(chǎn)生過程
l時間:1972~1973l地點:美國貝爾實驗室l目的:UNIX操作系統(tǒng)l設(shè)計人:Ken.Thompson和Dennis.M.RitchievC標準l標準C:K&R1978年,合著《TheCProgrammingLanguage》l87ANSIC:1987年87ANSIC在1990年被ISO接受為ISOC2.1.2C語言的特點
從算法描述的語義特征來看,可以屬于高級語言;從功能方面看,屬于中級語言。其語言既有高級語言流暢、自然、規(guī)范等特點,又有低級語言面向系統(tǒng)和硬件的優(yōu)點。C語言的特點:?
語言簡潔、緊湊、靈活?
運算符和數(shù)據(jù)類型豐富?
程序設(shè)計結(jié)構(gòu)化、模塊化?
生成目標代碼質(zhì)量高、程序執(zhí)行效率高?
可移植性好?
可以直接操縱硬件。C語言程序的基本形式:
main(){函數(shù)局部變量定義執(zhí)行語句
}f1(形式參數(shù)列表])
形式參數(shù)定義{函數(shù)局部變量定義執(zhí)行語句
}
……fn(形式參數(shù)列表)
形式參數(shù)定義{函數(shù)局部變量定義;執(zhí)行語句;
}P20例2.1#include<stdio.h>main(){charuptolow();……do{……printf(“%c”,uptolow(ch));}while(……);……}charuptolow(ch1){……}2.2TurboC的集成環(huán)境
目前常用的C語言集成環(huán)境有數(shù)種,包括C++、VisualC、VisualC++等,一般教學(xué)或等級考試等提到C語言編譯系統(tǒng),主要指TurboC。本課程主要以VisualC++集成開發(fā)環(huán)境為實驗平臺,用以學(xué)習(xí)C程序設(shè)計算法與實現(xiàn)。2.3C語言的程序結(jié)構(gòu)2.3.1C語言程序組成2.3.2C語言的標識符2.3.3C語言的關(guān)鍵字2.3.1C語言程序組成首先,請看下面的例題【例2.4】#include<stdio.h>main(){printf("WelcometoStudyCProgramLanguage!\n");}運行結(jié)果:WelcometoStudyCProgramLanguage!通過本例,可以了解到:(1)任何一個C程序必須包含一個主函數(shù)main(),并且主函數(shù)是唯一的主程序入口函數(shù)。main()后面的括號可以為空,如果需要還可以包含適當?shù)膮?shù)。(2)花括號中的部分是函數(shù)體,主要由C語言的語句序列組成。每個語句后面要有一個分號,表示命令的結(jié)束,否則編譯時出錯。\n是控制字符,功能是輸出一個回車。#include<stdio.h>main(){printf("WelcometoStudyCProgramLanguage!\n");}通過本例,可以了解到:(3)每個C程序由一個主函數(shù)和零到若干個函數(shù)組成,本例中程序包含一個主函數(shù)和一個函數(shù)printf()作為命令語句。#include<stdio.h>main(){printf("WelcometoStudyCProgramLanguage!\n");}初始說明部分
初始說明部分的位置在主函數(shù)之前,一般包括:(1)包含文件(又稱頭文件)頭文件的格式為:
#include<文件名>(或“文件名”)
C環(huán)境為用戶提供了很多標準庫函數(shù),每一個庫函數(shù)都有自己的頭文件(擴展名為.h)。如果在程序設(shè)計時使用了庫函數(shù),則必須在初始說明部分將該函數(shù)對應(yīng)的頭文件包含進去,否則,程序會在編譯時報錯。(2)宏定義宏定義的位置可以在初始說明部分,也可以在程序的其他位置,其命令格式為:
#define字符串常量使用宏定義替代一個字符串,可以減少程序中重復(fù)書寫過程。請看下面的宏定義:
#definePI3.1415926在程序中出現(xiàn)3.1415926的地方使用PI,就可以減小重復(fù)使用的工作量,而且不容易出錯。在修改常量時也很簡單,只要改變宏定義行就可以了。程序中用雙引號括起來的字符串內(nèi)的字符,不進行替換。注意:包含文件和宏定義語句不是C語言命令語句,所以在書寫時后面不要加分號。(3)全局變量說明有關(guān)全局變量的知識,請參閱本書第8章。(4)用戶非整型函數(shù)說明用戶函數(shù)部分是為了使程序執(zhí)行特定的功能,由用戶自己設(shè)定的函數(shù)。結(jié)構(gòu)特點:
v函數(shù)與主函數(shù)程序由一個或多個函數(shù)組成必須有且只能有一個主函數(shù)main()程序執(zhí)行從main開始,在main中結(jié)束,其它函數(shù)通過被調(diào)用或嵌套調(diào)用得以執(zhí)行。v程序語句C程序由語句組成用“;”作為語句終止符
v注釋/**/為注釋,不能嵌套不產(chǎn)生編譯代碼
優(yōu)秀程序員的素質(zhì)之一:使用TAB縮進{}對齊有足夠的注釋有合適的空行
2.3.2C語言的標識符在C語言中,標識符可用作變量名、符號名、函數(shù)名、數(shù)組名、文件名及專門含義的名字。合法的標識符由字母、數(shù)字、下劃線組成,且第一個字符必須是字母或下劃線。判斷對錯:
area、PI、_ini、a_array、s1234123a、a-array、W1.W、a&b注意:(1)見名知意
(2)大小寫字母有區(qū)別
(3)取前8個字符有效
P28例如#include<stdio.h>#definePI3.14159voidplay(){ printf("歡迎使用turboC\n");}voidmain(){ floatr=2.6,s=0; s=PI*r*r; play(); printf("s=%f\n",s);}1.關(guān)鍵字有些標識符在C中已經(jīng)被定義過,有固定的含義。如:int、float等用來說明變量的數(shù)據(jù)類型;if~else、switch等是控制語句,不能再作變量名或函數(shù)名。標識符分三類:關(guān)鍵字預(yù)定義標識符用戶標識符
其中有9種控制語句:
if()~elsefor()while()do~while()
continuebreakswitchgotoreturn
32個關(guān)鍵字:(由系統(tǒng)定義,不能重作其它定義)autobreakcasecharconstcontinuedefaultdodoubleelseenumexternfloatforgotoifintlongregisterreturnshortsignedsizeofstaticstructswitchtypedefunionunsignedvoidvolatilewhile2.預(yù)定義標識符
如C提供的庫函數(shù)的名字,如:scanf、printf、add等,以及預(yù)編譯處理命令如:include、define若將此類標識
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年廣西安全工程職業(yè)技術(shù)學(xué)院單招職業(yè)技能測試題庫附答案解析
- 2025年哈爾濱應(yīng)用職業(yè)技術(shù)學(xué)院單招職業(yè)適應(yīng)性測試題庫帶答案解析
- 中小學(xué)義務(wù)教育質(zhì)量監(jiān)測工作方案(2026年修訂)
- 2026年智能機器人編程與操作技能試題
- 2026年英語口語與聽力商務(wù)英語溝通技巧實操練習(xí)題
- 醫(yī)院醫(yī)務(wù)人員進修與職稱評定制度
- 2026年春季學(xué)期XX市第七中學(xué)-學(xué)生生涯規(guī)劃-導(dǎo)師制實施報告:導(dǎo)師職責(zé)與幫扶成效
- 2026年健康生活方式與養(yǎng)生技巧健康管理課程作業(yè)題目
- 2026年經(jīng)濟分析與預(yù)測試題宏觀經(jīng)濟理論金融投資分析
- 2026年電子商務(wù)員考試試題及答案
- 巷道工程清包工合同范本
- 廣西鹿寨萬強化肥有限責(zé)任公司技改擴能10萬噸-年復(fù)混肥建設(shè)項目環(huán)評報告
- 三級醫(yī)院營養(yǎng)科建設(shè)方案
- (2025年標準)彩禮收條協(xié)議書
- 賓得全站儀R-422NM使用說明書
- ASTM-D1238中文翻譯(熔融流動率、熔融指數(shù)、體積流動速率)
- 短視頻創(chuàng)作-短視頻手機拍攝與剪輯
- 2025年國家公務(wù)員考試《申論》真題及答案解析(副省級)
- 貴州省遵義市2024屆高三第三次質(zhì)量監(jiān)測數(shù)學(xué)試卷(含答案)
- 江蘇省勞動合同模式
- 速凍食品安全風(fēng)險管控清單
評論
0/150
提交評論