版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1C语言-第1章C语言简介C的發展史 C程式初體驗C程式設計基本注意事項上機實習課程2C语言-第1章C语言简介l1972年貝爾實驗室的Dennis Ritchie以B語言為基礎,並持續改善它。l除了保留BCLP及B語言中的許多觀念外,更加入了資料型態的觀念及其它功能,並且將它發表為C語言。lDennis Ritchie發展出來的C語言乃是架構在DEC PDP-11電腦上,最初的目的主要是做為開發Unix作業系統的工具。l由於C語言這樣實用的工具使得Unix作業系統開發難度降低且進行順利,所以也開始應用在其它的程式設計領域,因此也使得C語言迅速受到眾人的矚目。1-1 C的發展史的發展史 3C语言
2、-第1章C语言简介l程式可攜性高,具有跨平台能力程式可攜性高,具有跨平台能力只要是使用ANSI C定義的標準函數庫來開發,而其中不包含一些中斷處理或廠商單獨提供的函數庫,那麼所開發出來的程式將具有相當高的可攜性(Portable)。如果將開發出來的C語言程式碼拿到不同的作業平台上重新編譯,隨即能夠產生一個功能相同的可執行程式,而程式開發者不再需要重新編撰程式碼內容。1-1 C的發展史的發展史 4C语言-第1章C语言简介l體積小,執行效率高體積小,執行效率高相較於Java、Visual Basic、Pascal等程式語言來說,C語言的執行效率相當高,執行時也相當穩定。l具低階處理能力具低階處理能
3、力雖然這些較低階的操作技巧在學習上並不容易,不過卻是其它高階程式語言難以達成的工作項目。這也是C功能較其它語言強大的地方。l作為學習其它語言的基礎作為學習其它語言的基礎C語言堪稱是程式語言之父,例如C+、Java、PHP與C#等程式語言,它們的基本語法及某些程式觀念都與C十分類似。 1-1 C的發展史的發展史 5C语言-第1章C语言简介l過程通常可區分為編輯、編譯、連結、載入與執行五個階段。 l目前多半是使用所謂的整合開發環境(IDE,Integrated Development Environment)來作為C的開發環境。 l編寫完的程式碼,電腦是看不懂的,必需翻譯成電腦能懂的機器語言模式。
4、l由於C是一種編譯式語言,也就是必須使用編譯器將原始程式翻譯成目的碼,副檔名為*.obj。1-1 C的發展史的發展史 6C语言-第1章C语言简介l由於使用者編譯的C程式中可能會使用到函數庫(副檔名為*.lib)中的函數,或者一個程式可能分為數個檔案來開發,這些檔案在編輯為目的檔後,必須透過連結器(linker),最後才會產生可執行檔(副檔名為*.exe)。 l最後載入過程將可執行檔與相關的函數庫元件,從磁碟中載入到記憶體中,就可準備執行了。 1-1 C的發展史的發展史 7C语言-第1章C语言简介1-2 C程式初體驗程式初體驗 編寫程式區功能表工具列專案瀏覽區狀態列編譯器輸出紀錄區程式輸入游標
5、8C语言-第1章C语言简介l輸入完以上程式碼後,請執行檔案/儲存指令或是工具列上的儲存 鈕,並以Ch01_01為檔名,.c為副檔名進行檔案儲存。 1-2 C程式初體驗程式初體驗 01 #include 02 #include 0304 int main(void)05 06 printf(C程式初體驗n);/* 呼叫printf()函數 */ 07 08 system(pause);09 return 0;10 9C语言-第1章C语言简介l按下工具列中的編譯按鈕 或執行執行/編譯指令,然後會出現以下視窗,代表檔案正在編譯中,如果編譯成功,原本的Compiling會出現Done字樣:1-2 C程
6、式初體驗程式初體驗 編譯進行中,這還包括連結與載入過程10C语言-第1章C语言简介l請執行執行/執行指令或按下執行鈕 。將會看到本程式的執行結果:1-2 C程式初體驗程式初體驗 11C语言-第1章C语言简介l程式範例:第一個程式碼範例:CH01_01.c1-2 C程式初體驗程式初體驗 12C语言-第1章C语言简介1-2 C程式初體驗程式初體驗 第12行:利用#include指令是前置處理指令的一種,在編譯時可將標頭檔與標頭檔含括進來。第4行:C中的main()函數是程式的進入點,而程式的內容則包含在main()下的大括弧內,而void表示此函數不需要任何的引數,int是宣告函數回傳值是整數資料
7、型態。第510行:表示此函數的所有指令內容。當然在這兩個大括弧間也可以完全沒有任何指令。第6行:printf()是C語言的輸出函數指令,會將括號中引號內的字串輸出到螢幕上,而/n則是跳脫字元的一種,有換行的功用,這些輸出功能會在第三章中為您深入說明。至於/*與*/符號所包括的部份稱為註解。13C语言-第1章C语言简介1-2 C程式初體驗程式初體驗 第8行:由於Windows系統正常結束後,都會直接關掉執行視窗,執行畫面會一閃即逝,根本看不出執行結果。這時可利用system()函數呼叫系統參數pause會讓程式執行到此先暫停,並且在執行視窗中會印出請按任意鍵繼續等字,當您敲下任意鍵後,程式便會往
8、下執行。第9行:因為主程式被宣告為int資料型態,必須回傳(return)一個值,在習慣上是傳回0作為程式執行完畢,在ANSI C語法中,如果這行指令省略,也會自動視為是return 0;指令。14C语言-第1章C语言简介l當程式開始執行時,一定會先執行main()這個函數,而不管它在程式中的任何位置,編譯器都會找到它才開始編譯程式內,因此main()又稱為主函數,架構如下所示: 1-3 C程式設計基本注意事項程式設計基本注意事項01 int main( )02 03 指令 1;04 指令 2;05 .06 . 07 C語言程式的開頭C語言程式的內容15C语言-第1章C语言简介l其中第02行的
9、左大括弧表示main()函式開始,第07行的右大括弧則表示main()函式的結束。l另外在這兩個大括弧間也可以完全沒有任何內容,因此一個最簡單的C程式可以如下: 1-3 C程式設計基本注意事項程式設計基本注意事項01 int main( )02 03 完全無任何的陳述 16C语言-第1章C语言简介l底下列出常見的C內建標頭檔供做參考: 1-3 C程式設計基本注意事項程式設計基本注意事項標頭檔說明包含數學運算函數包含標準輸出入函數標準函數庫,包含各類基本函數。包含字串處理函數包含時間、日期的處理函數 17C语言-第1章C语言简介l在同一行指令中,對於完整不可分割的單元稱為字符(token),兩個
10、字符間必須以空白鍵、tab鍵或輸入鍵區隔。請看以下指令範例:1-3 C程式設計基本注意事項程式設計基本注意事項Return0; /*不合法的指令*/printf ( C程式初體驗n); /*合法的指令*/printf(C程式初體驗!n); system(pause); return 0; /*合法的指令*/print f(C程式初體驗!n); /*不合法的指令*/18C语言-第1章C语言简介l像是在主程式中包含子區段,或者子區段中又包含其它子區段時,這時就可以透過縮排來區分程式碼的層級。l簡單來說,遇到大括號時就要考慮縮排。l如以下巢狀if else指令,透過縮排的效果讓,讓區塊層次更分明: 1-3 C程式設計基本注意事項程式設計基本注意事項19C语言-第1章C语言简介1-3 C程式設計基本注意事項程式設計基本注意事項20C语言-第1章C语言简介l註解不僅可以幫助其他的程式設計師了解程式內容,在日後進行程式維護時,詳盡的註解也能夠省下不少維護時間與成本。 l在C中/*與*/間的文字都屬於註解內容。另
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年家庭用电防火安全知识培训
- 痤疮护理中的情绪管理
- 叙事护理:疫情中的心理疗愈
- 多胎妊娠的监护与护理
- 右心衰竭的护理研究进展
- 幼儿移情发展试题及答案
- 2026年幼儿园入园焦虑家长会
- 2026年幼儿园工作规程园本培训
- 2026年幼儿园美术教育实践培训
- 2026年幼儿园放风筝教案小班
- 2026云南昆明供电局项目制用工招聘48人笔试模拟试题及答案解析
- 全胃切除病人全程营养管理中国专家共识(2026版)
- 2026年四川成都市中考地理试卷含答案
- 2025-2026 学年人音版初中音乐八年级下册全册知识点梳理
- 2026年版闲鱼卖货实战手册(选品+定价+爆款打造完整攻略)
- “十五五”规划纲要应知应会100题及答案
- 限额以下小型工程常见安全隐患指导手册(2026版)
- 年龄相关性黄斑变性课件
- 2025年云南省中考生物试卷真题(含标准答案及解析)
- 健康教育学第三版课后题答案
- 血管源性头晕/眩晕诊疗
评论
0/150
提交评论