版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、第1章 程序設(shè)計和C言語1.1 什么是計算機程序1.2 什么是計算機言語1.3 C言語的開展及其特點1.4 最簡單的C言語程序1.5 運轉(zhuǎn)C程序的步驟與方法1.6 程序設(shè)計的義務(wù)11.1 什么是計算機程序計算機能干什么?程序:一組計算機能識別和執(zhí)行的指令計算機的本質(zhì):程序的機器(軟件運轉(zhuǎn)在硬件上)21.2 什么是計算機言語計算機言語:人和計算機交流信息的、計算機和人都能識別的言語人和人之間的交流需求經(jīng)過言語,人和計算機之間的交流同樣需求言語。 石的奇觀(The pattern on the Stone)。31.2 什么是計算機言語計算機言語開展階段:機器言語由0和1組成的機器指令,二進制數(shù)串符
2、號(匯編)言語用英文字母和數(shù)字表示指令高級言語接近于人的自然言語和數(shù)學(xué)言語面向過程的言語 非構(gòu)造化的言語Fortran、構(gòu)造化言語C面向?qū)ο蟮难哉Z C+、C#、Java面向方面Aspect的言語等低級言語41.3 C言語的開展及其特點5254565860626466687072747678808284868890929496AdaALGOL60ALGOL68PascalModula-2CPLBCPLBCC+JavaLISPPROLOGCOBOLFORTRAN77FORTRANPL/1Simula 67Smalltalk 80BASICANSI-BASICQBASICVBFORTRAN9051.
3、3 C言語的開展及其特點61.3 C言語的開展及其特點1983年,美國國家規(guī)范協(xié)會(ANSI)成立了一個委員會,根據(jù)C言語問世以來各種版本對C言語的開展和擴展,制定了第一個C言語規(guī)范草案(83 ANSI C)。71.3 C言語的開展及其特點1989年,ANSI公布了一個完好的C言語規(guī)范ANSI X3.159-1989(常稱ANSI C,或C89)。81.3 C言語的開展及其特點1990年,國際規(guī)范化組織ISO(International Standard Organization) 接受C89作為國際規(guī)范ISO/IEC 9899:1990,它和ANSI的C89根本上是一樣的。91.3 C言語的
4、開展及其特點1995年,ISO對C90作了一些修訂,1999年,ISO又對C言語規(guī)范進展修訂,在根本保管原來的C言語特征的根底上,針對運用的需求,添加了一些功能,尤其是C+中的一些功能,命名為ISO/IEC 9899:1999。101.3 C言語的開展及其特點2001、2004年先后進展了兩次技術(shù)修正TC1和TC2。 ISO/IEC 9899:1999(及其技術(shù)修正)被稱為 C99。C99是C89(及1995基準增補1)的擴展。111.3 C言語的開展及其特點本書的表達以C99規(guī)范為根據(jù)對C99新添加的功能作特別的闡明。目前不同軟件公司提供的各C言語編譯系統(tǒng)多數(shù)并未完全實現(xiàn)C99建議的功能本書
5、中程序根本上都可以在目前所用的編譯系統(tǒng)(如VC+ 6.0,Turbo C+ 3.0,GCC)上編譯和運轉(zhuǎn)。121.3 C言語的開展及其特點C言語是一種用途廣泛、功能強大、運用靈敏的過程性(procedural)編程言語,既可用于編寫運用軟件,又能用于編寫系統(tǒng)軟件。因此C言語問世以后得到迅速推行。131.3 C言語的開展及其特點C言語主要特點:言語簡約、緊湊,運用方便、靈敏。 只需37個關(guān)鍵字(附錄C)、9種控制語句 程序書寫方式自在,源程序短 C編譯系統(tǒng)簡捷,以庫函數(shù)的方式提供多種功能141.3 C言語的開展及其特點C言語主要特點:運算符豐富。有34種運算符(附錄D)把括號、賦值、強迫類型轉(zhuǎn)換
6、等都作為運算符處置表達式類型多樣化(關(guān)系、邏輯、賦值等)151.3 C言語的開展及其特點C言語主要特點:數(shù)據(jù)類型豐富。包括:整型、浮點型、字符型、數(shù)組類型、指針類型、構(gòu)造體類型、共用體類型C99又擴展了復(fù)數(shù)浮點類型、超長整型(long long)、布爾類型(bool)指針類型數(shù)據(jù),能用來實現(xiàn)各種復(fù)雜的數(shù)據(jù)構(gòu)造(如鏈表、樹、棧等)的運算。161.3 C言語的開展及其特點C言語主要特點:具有構(gòu)造化的控制語句如ifelse語句、while語句、dowhile語句、switch語句、for語句用函數(shù)作為程序的模塊單位,便于實現(xiàn)程序的模塊化171.3 C言語的開展及其特點C言語主要特點:語法限制不太嚴厲
7、,程序設(shè)計自在度大。對數(shù)組下標越界不做檢查對變量的類型運用比較靈敏,例如,整型量與字符型數(shù)據(jù)可以通用隱式類型轉(zhuǎn)換等181.3 C言語的開展及其特點C言語主要特點:允許直接訪問物理地址,能進展位操作,可以直接對硬件進展操作C言語具有高級言語的功能和低級言語的許多功能,可用來編寫系統(tǒng)軟件這種雙重性,使它既是勝利的系統(tǒng)描畫言語,又是通用的程序設(shè)計言語(SystemC)191.3 C言語的開展及其特點C言語主要特點:用C言語編寫的程序可移植性好。C的編譯系統(tǒng)簡約,很容易移植到新系統(tǒng)在新系統(tǒng)上運轉(zhuǎn)時,可直接編譯“規(guī)范鏈接庫中的大部分功能,不需求修正源代碼幾乎一切計算機系統(tǒng)都可以運用C言語201.3 C言
8、語的開展及其特點C言語主要特點:生成目的代碼質(zhì)量高,程序執(zhí)行效率高。(依賴于C言語的編譯器,VC+、BorlandC+、GCC等) 211.4 最簡單的C言語程序1.4.1 最簡單的C言語程序舉例1.4.2 C言語程序的構(gòu)造221.4.1 最簡單的C言語程序舉例例1.1 要求在屏幕上輸出以下一行信息。 This is a C program.解題思緒: 在主函數(shù)中用printf函數(shù)原樣輸出以上文字。231.4.1 最簡單的C言語程序舉例#include int main( ) printf (This is a C program.n); return 0; 函數(shù)的名字,表示主函數(shù)C程序必需有
9、一個 main 函數(shù)241.4.1 最簡單的C言語程序舉例#include int main( ) printf (This is a C program.n); return 0; 主函數(shù)前往值的類型,簡稱主函數(shù)類型251.4.1 最簡單的C言語程序舉例#include int main( ) printf (This is a C program.n); return 0; 函數(shù)體261.4.1 最簡單的C言語程序舉例#include int main( ) printf (This is a C program.n); return 0; 輸出函數(shù)輸出語句271.4.1 最簡單的C言語程
10、序舉例#include int main( ) printf (This is a C program.n); return 0; 輸出語句281.4.1 最簡單的C言語程序舉例#include int main( ) printf (This is a C program.n); return 0; 換行符291.4.1 最簡單的C言語程序舉例#include int main( ) printf (This is a C program.n); return 0; 當(dāng)main函數(shù)執(zhí)行終了前將整數(shù)0作為函數(shù)值301.4.1 最簡單的C言語程序舉例#include int main( ) pr
11、intf (This is a C program.n); return 0; 表示語句終了用到函數(shù)庫中的輸入輸出函數(shù)時standard input & output311.4.1 最簡單的C言語程序舉例C言語允許用兩種注釋方式:/:單行注釋可單獨占一行可出如今一行中其他內(nèi)容的右側(cè)/*/:塊式注釋可包含多行注:出如今字符串中保管本身含義32例1.2 求兩個整數(shù)之和。解題思緒:設(shè)置3個變量a和b用來存放兩個整數(shù)sum用來存放和數(shù)用賦值運算符“=把結(jié)果傳送給sum33#include int main( ) int a,b,sum; a = 123; b = 456; sum = a + b; p
12、rintf(sum is %dn,sum); return 0; 定義整型變量a,b,sum對變量a,b賦值將a與b的和賦給sum34#include int main( ) int a,b,sum; a = 123; b = 456; sum = a + b; printf(sum is %dn,sum); return 0; 用sum的值替代希望輸出的字符35例1.3求兩個整數(shù)中的較大者,用主函數(shù)調(diào)用子函數(shù)的方式實現(xiàn)。解題思緒:用一個函數(shù)實現(xiàn)求兩個整數(shù)中的較大者在主函數(shù)中調(diào)用此函數(shù)并輸出結(jié)果36#include int main( ) int max(int x,int y); int a
13、,b,c; scanf(%d,%d,&a,&b); c = max(a,b); printf(max=%dn,c); return 0;int max(int x,int y) int z; if (x y) z = x; else z = y; return(z);主函數(shù)max函數(shù)37#include int main( ) int max(int x,int y); int a,b,c; scanf(%d,%d,&a,&b); c = max(a,b); printf(max=%dn,c); return 0;int max(int x,int y) int z; if (x y) z =
14、 x; else z = y; return(z);將x和y中較大者值前往給主函數(shù)38#include int main( ) int max(int x,int y); int a,b,c; scanf(%d,%d,&a,&b); c = max(a,b); printf(max=%dn,c); return 0;int max(int x,int y) int z; if (x y) z = x; else z = y; return(z);39#include int main( ) int max(int x,int y); int a,b,c; scanf(%d,%d,&a,&b);
15、 c = max(a,b); printf(max=%dn,c); return 0;int max(int x,int y) int z; if (x y) z = x; else z = y; return(z);因max函數(shù)的定義在main函數(shù)之后,需聲明40#include int main( ) int max(int x,int y); int a,b,c; scanf(%d,%d,&a,&b); c = max(a,b); printf(max=%dn,c); return 0;int max(int x,int y) int z; if (x y) z = x; else z
16、= y; return(z);輸入函數(shù)41#include int main( ) int max(int x,int y); int a,b,c; scanf(%d,%d,&a,&b); c = max(a,b); printf(max=%dn,c); return 0;int max(int x,int y) int z; if (x y) z = x; else z = y; return(z);輸入語句42#include int main( ) int max(int x,int y); int a,b,c; scanf(%d,%d,&a,&b); c = max(a,b); pri
17、ntf(max=%dn,c); return 0;int max(int x,int y) int z; if (x y) z = x; else z = y; return(z);輸入的數(shù)據(jù)放到a,b中輸入格式a的地址43#include int main( ) int max(int x,int y); int a,b,c; scanf(%d,%d,&a,&b); c = max(a,b); printf(max=%dn,c); return 0;int max(int x,int y) int z; if (x y) z = x; else z = y; return(z);調(diào)用max函
18、數(shù)44#include int main( ) int max(int x,int y); int a,b,c; scanf(%d,%d,&a,&b); c = max(a,b); printf(max=%dn,c); return 0;int max(int x,int y) int z; if (x y) z = x; else z = y; return(z);858845#include int main( ) int max(int x,int y); int a,b,c; scanf(%d,%d,&a,&b); c = max(a,b); printf(max=%dn,c); re
19、turn 0;int max(int x,int y) int z; if (x y) z = x; else z = y; return(z);858846#include int main( ) int max(int x,int y); int a,b,c; scanf(%d,%d,&a,&b); c = max(a,b); printf(max=%dn,c); return 0;int max(int x,int y) int z; if (x y) z = x; else z = y; return(z);實踐參數(shù)方式參數(shù)471.4.2 C言語程序的構(gòu)造C言語程序的構(gòu)造特點:1.一個
20、程序由一個或多個源程序文件組成小程序往往只包括一個源程序文件例1.1,例1.2只需一個函數(shù)例1.3有兩個函數(shù)只包括一個源程序文件481.4.2 C言語程序的構(gòu)造C言語程序的構(gòu)造特點:一個源程序文件中可以包括三個部分:預(yù)處置指令全局聲明函數(shù)定義#include 等在函數(shù)之外進展的數(shù)據(jù)聲明每個函數(shù)用來實現(xiàn)一定的功能注:函數(shù)不能嵌套定義。491.4.2 C言語程序的構(gòu)造C言語程序的構(gòu)造特點:2.函數(shù)是C程序的主要組成部分一個C程序是由一個或多個函數(shù)組成的必需包含一個main函數(shù)只能有一個每個函數(shù)都用來實現(xiàn)一個或幾個特定功能被調(diào)用的函數(shù)可以是庫函數(shù),也可以是本人編制設(shè)計的函數(shù)501.4.2 C言語程序
21、的構(gòu)造C言語程序的構(gòu)造特點:3.一個函數(shù)包括兩個部分:函數(shù)首部int max ( int x, int y )函數(shù)的第1行函數(shù)類型函數(shù)名參數(shù)類型參數(shù)名511.4.2 C言語程序的構(gòu)造C言語程序的構(gòu)造特點:3.一個函數(shù)包括兩個部分:函數(shù)首部int max ( int x, int y )假設(shè)函數(shù)無參,在括弧中寫void或空括弧int main( void) 或 int main()521.4.2 C言語程序的構(gòu)造C言語程序的構(gòu)造特點:3.一個函數(shù)包括兩個部分:函數(shù)體聲明部分定義在本函數(shù)中所用到的變量對本函數(shù)所調(diào)用函數(shù)進展聲明執(zhí)行部分:由假設(shè)干個語句組成,指定在函數(shù)中所進展的操作(執(zhí)行語句)可以沒
22、有聲明部分可以沒有執(zhí)行部分531.4.2 C言語程序的構(gòu)造C言語程序的構(gòu)造特點:3.一個函數(shù)包括兩個部分:函數(shù)體void dump ( ) 可以是空函數(shù)541.4.2 C言語程序的構(gòu)造C言語程序的構(gòu)造特點:4. 程序總是從main函數(shù)開場執(zhí)行5. C程序?qū)τ嬎銠C的操作由C語句完成C程序書寫格式是比較自在的一行內(nèi)可以寫幾個語句一個語句可以分寫在多行上為明晰起見,習(xí)慣上每行只寫一個語句551.4.2 C言語程序的構(gòu)造C言語程序的構(gòu)造特點:4. 程序總是從main函數(shù)開場執(zhí)行5. C程序?qū)τ嬎銠C的操作由C語句完成6. 數(shù)據(jù)(變量、函數(shù))聲明和語句最后必需有分號7. C言語本身不提供輸入輸出語句8.
23、程序該當(dāng)包含注釋,添加可讀性561.5 運轉(zhuǎn)C程序的步驟與方法1.上機輸入和編輯源程序.c文件2.對源程序進展編譯.obj文件3.進展鏈接處置.exe文件4.運轉(zhuǎn)可執(zhí)行程序,得到運轉(zhuǎn)結(jié)果闡明:以上過程參見教材中圖1.2書 附錄A中有Visual C+ 6.0中編輯、 編譯、銜接和運轉(zhuǎn)C程序的方法571.6 程序設(shè)計的義務(wù)1.問題分析建模對于接手的義務(wù)要進展仔細的分析研討所給定的條件分析最后應(yīng)到達的目的找出處理問題的規(guī)律選擇解題的方法581.6 程序設(shè)計的義務(wù)1.問題分析2.設(shè)計算法設(shè)計出解題的方法和詳細步驟591.6 程序設(shè)計的義務(wù)1.問題分析2.設(shè)計算法3.編寫程序4.對源程序進展編輯、編譯和銜接5.運轉(zhuǎn)程序,分析結(jié)果(調(diào)試與測試)結(jié)果錯了,程序一定錯結(jié)果對了,程序未必對601.6 程序設(shè)計的義務(wù)1.問題分析2.設(shè)計算法3.編寫程序4.對源程序進展編輯、編譯和銜接5.運轉(zhuǎn)程序,分析結(jié)果6.編寫程序文檔616237個關(guān)鍵字:(由系統(tǒng)定義,不能重作其它定義)auto break case char constcontinue default do double elseenum exter
溫馨提示
- 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)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度智能設(shè)備制造股權(quán)合資合同4篇
- 2025年中國航空食品行業(yè)市場全景評估及發(fā)展戰(zhàn)略規(guī)劃報告
- 二零二五年度不銹鋼戶外廣告牌設(shè)計與安裝合同5篇
- 2025年度綠色金融存單質(zhì)押擔(dān)保合作協(xié)議書3篇
- 2025年貨車司機聘用合同(含運輸安全保障措施)3篇
- 2025年度幕墻工程設(shè)計與施工環(huán)保合同4篇
- 2025-2031年中國金融級分布式數(shù)據(jù)庫行業(yè)發(fā)展全景監(jiān)測及投資方向研究報告
- 二零二五年度多功能大棚租賃與活動策劃合同4篇
- 2025年尼龍束線帶項目可行性研究報告
- 2025年遙控工作燈項目投資可行性研究分析報告
- 勞務(wù)協(xié)議范本模板
- 人教版(2024)數(shù)學(xué)七年級上冊期末測試卷(含答案)
- 2024年國家保密培訓(xùn)
- 2024年公務(wù)員職務(wù)任命書3篇
- CFM56-3發(fā)動機構(gòu)造課件
- 會議讀書交流分享匯報課件-《殺死一只知更鳥》
- 2025屆撫州市高一上數(shù)學(xué)期末綜合測試試題含解析
- 公司印章管理登記使用臺賬表
- 磚廠承包合同簽訂轉(zhuǎn)讓合同
- 思政課國內(nèi)外研究現(xiàn)狀分析
- 2023年公務(wù)員多省聯(lián)考《申論》題(廣西B卷)
評論
0/150
提交評論