




版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、C語言程序設計第1講 程序設計概述1第1講 程序設計概述本講主要內(nèi)容: 一、程序設計的基本概念 二、C語言程序簡介 學習目的與要求: 掌握程序設計的基本概念; 熟悉算法設計和描述的基本方法,能對簡單的問題設計算法, 并用流程圖表達出來; 了解C語言程序結構的基本特點; 能夠在Turbo C集成環(huán)境下編輯、運行簡單的C語言程序。學習重點:C程序的結構特點;在Turbo C集成環(huán)境下運行C程序。學習難點:算法設計和算法表達2一、程序設計的基本概念 1. 計算機語言和程序2. 算法3. 程序設計4. 程序的錯誤和測試5. 輸入和輸出3main() int i,s; i=1; s=0; while(i
2、1000) s=s+i; i=i+2; printf(sum=%dn,s); 1. 計算機語言和程序 計算機語言是計算機能夠理解和識別的語言。它通過一定的方式向計算機傳送操作指令。 計算機程序是按照計算機語言規(guī)則組織起來的一組指令。一個用C語言編寫的計算1000以內(nèi)的所有奇數(shù)和的程序 任何一種計算機語言都有一定的使用規(guī)則,通常稱之為語法規(guī)則。 計算機語言的種類很多,大體上經(jīng)過了由低級語言到高級語言的發(fā)展過程,目前廣泛使用的高級語言有Pascal、 C、C+、VB、VC+、Java、Delphi等。 計算機語言計算機程序數(shù)據(jù)結構+算法=程序 Nicklaus Wirth(尼克勞斯威茨) Pasc
3、al之父 4(1)什么是算法 算法就是求解問題的方法,是計算機處理問題所需要的過程。算法的最終實現(xiàn)是計算機程序。 2.算法(2)算法規(guī)則 一個算法通常由一系列求解步驟來完成,計算機能夠在執(zhí)行有限的步驟后給出正確的結果。 (4)算法的常用描述工具有: 流程圖法,N-S圖法,PAD圖法、偽碼法等。(3)算法不唯一 對于同一個問題,可以有多種算法。 (5)算法優(yōu)劣評價標準 正確性和清晰易懂性永遠是一個好算法的基本條件 。 5常用的流程圖符號及其功能 開始、結束處理判斷輸入、輸出流程方向Noave90?NoYes輸如成績Yes計算平均成績avecount+1countresual+1resualt開始
4、輸入學生數(shù)n1count0resultcountn?結束輸出result某問題流程圖6程序設計就是編寫程序。 是用程序設計語言實現(xiàn)算法的過程。3. 程序設計如何養(yǎng)成良好的編程習慣:編寫程序的基本要求: 一是保證語法上的正確性。 二是保證邏輯上的正確性。 /*計算1000以內(nèi)的所有奇數(shù)和的程序main() int i,s; i=1; sum=0; while(i1000) /*循環(huán)控制*/ sum=sum+i; /*數(shù)據(jù)累加*/ i=i+2; /*生成下一個要累加的數(shù)*/ printf(“Sum=%dn”,sum); /*輸出結果*/ (1)合理使用注釋; (2)要使用含義鮮明的符號名; (3)
5、程序格式化。 高質量的程序體現(xiàn)在以下四個方面:可靠性高、運行速度快、占用存儲空間小和易懂性。74. 程序的錯誤和測試 (1) 程序的錯誤通常有兩種:語法錯誤和邏輯錯誤。(2) 程序的測試 常用的測試方法有兩種:黑盒法和白盒法。存在語法錯誤時,程序不能正常進行。 程序存在邏輯錯誤,是指程序能夠正常運行,但得不到要求的正確結果。 黑盒法把程序看成一個黑盒子,只測試程序是否滿足它的功能,不考慮程序的內(nèi)部邏輯和特性。白盒法又稱邏輯覆蓋法。使用白盒法需要了解程序內(nèi)部的詳細情況。 窮舉法 測試技術:等價分類法、邊值分析法、因果分析法等 專門設計測試用例,設法徹底覆蓋程序中的每一條路徑。 85. 輸入和輸出
6、輸入:為程序提供數(shù)據(jù)輸出:從程序獲得數(shù)據(jù) 最基本的數(shù)據(jù)輸入/輸出方式: 從鍵盤輸入數(shù)據(jù) 從顯示器輸出結果C語言本身不提供輸入輸出語句,輸入輸出操作是由函數(shù)實現(xiàn)的,它提供了多種輸入輸出函數(shù),使輸入輸出靈活、方便。9二、C語言程序簡介 1. C語言概述2. C語言的特點3. 標識符與保留字4. C語言程序的基本特點5. C語言程序的上機實現(xiàn)101.C語言概述1999年4月27日,美國時任總統(tǒng)克林頓在白宮向他們兩人授予全美技術勛章,這是對他們成就的最高評價。C語言之父,UNIX之父 Dennis M.Ritchie(丹尼斯利奇) 丹尼斯利奇(Dennis M. Ritchie)和肯湯普森(Ken T
7、hompson) 著名的K&R組合在1983年兩人聯(lián)合接受了計算機最高獎圖靈(Turing)獎 UNIX操作系統(tǒng)Bell Labs貝爾實驗室 Dennis M. Ritchie簡介 1941.9.9出生,哈佛大學數(shù)學博士。29歲(1969年)與湯普森合作發(fā)明UNIX;31歲(1972年)設計發(fā)明C語言;32歲(1973年)與K合作用C改寫UNIX ;37歲(1978年) 出版白皮書:The C Programming Language42歲(1983年)獲得圖靈獎;58歲(1999年)獲得全美技術勛章;現(xiàn)年66歲,仍但任朗訊科技公司貝爾實驗室下屬的計算機科學研究中心系統(tǒng)軟件研究部主任。11C語
8、言是 1972年由美國的Dennis Ritchie設計發(fā)明的,并首次在UNIX操作系統(tǒng)的 DEC PDP-11 計算機上使用。 在1970年,AT&T 貝爾實驗室的 Ken Thompson根據(jù)BCPL語言設計出較先進的并取名為 B的語言,最后導致了C語言的問世。1983年,美國國家標準化協(xié)會(ANSI)根據(jù)C語言問世以來各種版本對 C的發(fā)展和擴充,制定了C的標準,稱為 ANSI C。1987年ANSI又公布了新的標準87 ANSI C。在C的基礎上,1983年又由貝爾實驗室的Bjarne Strou-strup推出了C+。 C+進一步擴充和完善了語言,成為一種面向對象的程序設計語言。1.C
9、語言概述12 語言是一種結構化語言,它層次清晰,便于按模塊化方式組織程序,易于調(diào)試和維護。 語言的表現(xiàn)能力和處理能力極強,它不僅具有豐富的運算符和數(shù)據(jù)類型,便于實現(xiàn)各類復雜的數(shù)據(jù)結構,它還可以直接訪問內(nèi)存的物理地址。 由于語言實現(xiàn)了對硬件的編程操作,因此語言集高級語言和低級語言的功能于一體,既可用于系統(tǒng)軟件的開發(fā),也適合于應用軟件的開發(fā)。 語言還具有效率高、可移植性強等特點,因此廣泛地移植到了各種類型計算機上,從而形成了多種版本的語言。2. C語言的特點:13標識符:在程序中使用的變量名、函數(shù)名等統(tǒng)稱為標識符。 C語言規(guī)定: 標識符只能由字母、數(shù)字和下劃線三種字符組成,且第一個字符必須為字母或
10、下劃線。3.標識符與保留字使用標識符注意: (1)標識符長度最好不超過八個字符; (2)在標識符中,大小寫是有區(qū)別的。如,max和MAX不同。 (3)盡量做到見名知義,以增強程序的可讀性。 (4)保留字不能用作用戶定義的標識符。合法標識符: a BOOK1 max _add num_1非法標識符: 3s 不允許以數(shù)字開頭 s*T 使用了非法字符“*” book-1 出現(xiàn)非法字符“-”(減號)14C語言的保留關鍵字(32個)charshortintunsignedlongfloatdoublestructunionvoidenumsignedconstvolatiletypedefautoreg
11、isterstaticexternbreakcasecontinuedefaultdoelseforgotoifreturnswitchwhilesizeof15 C程序完全是由函數(shù)構成的,每個程序可由一個或多個函數(shù)組成。 一個源程序可由多個函數(shù)組成,但有且僅有一個main()函數(shù)。 C程序總是從主函數(shù)開始執(zhí)行,而不論main()函數(shù)在什么位置。 每個語句都以分號結尾,但函數(shù)頭和花括號“”之后不能加分號。 C語言中沒有專門的輸入/輸出語句,通過庫函數(shù)實現(xiàn)。 標識符、關鍵字之間必須至少用一個空格進行分隔。 C語言程序對字符的大、小寫有嚴格的區(qū)別。 C程序中可以用“/* */”進行注釋,以提高程序
12、的可讀性。4.C語言程序的基本特點:/* 程序e102.c */main() int a,b; printf(Input a,b:); scanf(%d,%d,&a,&b); printf(a+b=%dn,a+b);/* 程序e103.c */main() printf(Hello,word!n);/* 程序e101.c */main() int a,b; a=8; b=2000; printf(%dn,a+b);16在計算機上實現(xiàn)一個C語言程序通常包括四個階段:(1)編輯(Edit):錄入并保存編寫的C源程序,擴展名一般為“.c”。(2)編譯(Compile):將源程序轉化成二進制目標代碼(
13、*.obj ) 。(3)連接(Link):編譯所生成的目標文件還不能直接執(zhí)行,需要通過連接程序把它和其他目標文件以及系統(tǒng)所提供的庫函數(shù)進行連接裝配,生成可執(zhí)行文件才能執(zhí)行。(4)運行(Run):執(zhí)行在連接階段生成的可執(zhí)行文件,得到運行結果。5.C語言程序的上機實現(xiàn)要上機實現(xiàn)一個C語言程序,首先需要安裝C語言的支持系統(tǒng)。 Turbo C 2.0系統(tǒng),是一個集成的開發(fā)環(huán)境。 Visual C+ 6.0是目前廣為流行的面向對象程序開發(fā)環(huán)境。17圖1- TC2.0集成環(huán)境窗口 Turbo C 2.0集成環(huán)境界面18Visual C+ 6.0集成開發(fā)環(huán)境界面19程序設計概述-小結算法是解決具體問題的方法,它包括問題計算和問題處理過程兩個方面。一個問題可以有不同的算法,算法中的每一個步驟都必須有確切的含義,一個算法在經(jīng)過有限步驟之后能夠結束。對算法的描述方法有多種,如自然語言描述法、程序流程圖、N-S圖等框圖描述法、計算機語言描述法等,用計算機語言描述的算法就是計算機程序。任何一個程序都有可能存在錯誤,語法錯誤在編譯階段能夠被系統(tǒng)發(fā)現(xiàn)并指出來,而邏輯錯誤系統(tǒng)無法檢查,需要用多
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 學校教室裝修項目的施工合同
- 新建自建房購買合同樣本
- 全新夫妻離婚前財產(chǎn)分割合同
- 建設工程合同管理規(guī)范
- 度渠道拓展合作合同
- 餐飲服務合同模板與消防相關
- 音樂藝人經(jīng)紀合同范本
- 化工產(chǎn)品出口代理合同書
- 簡易彩鋼瓦合同范本
- Module 6 Unit 3 language in use 教學設計 2024-2025學年外研版八年級英語上冊
- 安全環(huán)保法律法規(guī)
- 2025年湖南環(huán)境生物職業(yè)技術學院高職單招職業(yè)適應性測試近5年??及鎱⒖碱}庫含答案解析
- 建設工程質量安全監(jiān)督人員考試題庫含答案
- 電氣控制技術項目化教程 第2版 課件 項目1、2 低壓電器的選用與維修、電動機直接控制電路
- 2025年上半年山東人才發(fā)展集團限公司社會招聘易考易錯模擬試題(共500題)試卷后附參考答案
- 2025年度文化創(chuàng)意產(chǎn)業(yè)園區(qū)入駐及合作協(xié)議3篇
- 【MOOC期末】《大學體育射箭》(東南大學)中國大學慕課答案
- 2024年山東理工職業(yè)學院高職單招語文歷年參考題庫含答案解析
- 《中華人民共和國學前教育法》專題培訓
- 2023屆高考復習之文學類文本閱讀訓練
- 國家基礎教育實驗中心外語教育研究中心
評論
0/150
提交評論