




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、第1章 程序設計和C言語1.1 什么是計算機程序1.2 什么是計算機言語1.3 C言語的開展及其特點1.4 最簡單的C言語程序1.5 運轉C程序的步驟與方法1.6 程序設計的義務11.1 什么是計算機程序計算機能干什么?程序:一組計算機能識別和執(zhí)行的指令計算機的本質:程序的機器(軟件運轉在硬件上)21.2 什么是計算機言語計算機言語:人和計算機交流信息的、計算機和人都能識別的言語人和人之間的交流需求經過言語,人和計算機之間的交流同樣需求言語。 石的奇觀(The pattern on the Stone)。31.2 什么是計算機言語計算機言語開展階段:機器言語由0和1組成的機器指令,二進制數串符
2、號(匯編)言語用英文字母和數字表示指令高級言語接近于人的自然言語和數學言語面向過程的言語 非構造化的言語Fortran、構造化言語C面向對象的言語 C+、C#、Java面向方面Aspect的言語等低級言語41.3 C言語的開展及其特點5254565860626466687072747678808284868890929496AdaALGOL60ALGOL68PascalModula-2CPLBCPLBCC+JavaLISPPROLOGCOBOLFORTRAN77FORTRANPL/1Simula 67Smalltalk 80BASICANSI-BASICQBASICVBFORTRAN9051.
3、3 C言語的開展及其特點61.3 C言語的開展及其特點1983年,美國國家規(guī)范協會(ANSI)成立了一個委員會,根據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年先后進展了兩次技術修正TC1和TC2。 ISO/IEC 9899:1999(及其技術修正)被稱為 C99。C99是C89(及1995基準增補1)的擴展。111.3 C言語的開展及其特點本書的表達以C99規(guī)范為根據對C99新添加的功能作特別的闡明。目前不同軟件公司提供的各C言語編譯系統多數并未完全實現C99建議的功能本書
5、中程序根本上都可以在目前所用的編譯系統(如VC+ 6.0,Turbo C+ 3.0,GCC)上編譯和運轉。121.3 C言語的開展及其特點C言語是一種用途廣泛、功能強大、運用靈敏的過程性(procedural)編程言語,既可用于編寫運用軟件,又能用于編寫系統軟件。因此C言語問世以后得到迅速推行。131.3 C言語的開展及其特點C言語主要特點:言語簡約、緊湊,運用方便、靈敏。 只需37個關鍵字(附錄C)、9種控制語句 程序書寫方式自在,源程序短 C編譯系統簡捷,以庫函數的方式提供多種功能141.3 C言語的開展及其特點C言語主要特點:運算符豐富。有34種運算符(附錄D)把括號、賦值、強迫類型轉換
6、等都作為運算符處置表達式類型多樣化(關系、邏輯、賦值等)151.3 C言語的開展及其特點C言語主要特點:數據類型豐富。包括:整型、浮點型、字符型、數組類型、指針類型、構造體類型、共用體類型C99又擴展了復數浮點類型、超長整型(long long)、布爾類型(bool)指針類型數據,能用來實現各種復雜的數據構造(如鏈表、樹、棧等)的運算。161.3 C言語的開展及其特點C言語主要特點:具有構造化的控制語句如ifelse語句、while語句、dowhile語句、switch語句、for語句用函數作為程序的模塊單位,便于實現程序的模塊化171.3 C言語的開展及其特點C言語主要特點:語法限制不太嚴厲
7、,程序設計自在度大。對數組下標越界不做檢查對變量的類型運用比較靈敏,例如,整型量與字符型數據可以通用隱式類型轉換等181.3 C言語的開展及其特點C言語主要特點:允許直接訪問物理地址,能進展位操作,可以直接對硬件進展操作C言語具有高級言語的功能和低級言語的許多功能,可用來編寫系統軟件這種雙重性,使它既是勝利的系統描畫言語,又是通用的程序設計言語(SystemC)191.3 C言語的開展及其特點C言語主要特點:用C言語編寫的程序可移植性好。C的編譯系統簡約,很容易移植到新系統在新系統上運轉時,可直接編譯“規(guī)范鏈接庫中的大部分功能,不需求修正源代碼幾乎一切計算機系統都可以運用C言語201.3 C言
8、語的開展及其特點C言語主要特點:生成目的代碼質量高,程序執(zhí)行效率高。(依賴于C言語的編譯器,VC+、BorlandC+、GCC等) 211.4 最簡單的C言語程序1.4.1 最簡單的C言語程序舉例1.4.2 C言語程序的構造221.4.1 最簡單的C言語程序舉例例1.1 要求在屏幕上輸出以下一行信息。 This is a C program.解題思緒: 在主函數中用printf函數原樣輸出以上文字。231.4.1 最簡單的C言語程序舉例#include int main( ) printf (This is a C program.n); return 0; 函數的名字,表示主函數C程序必需有
9、一個 main 函數241.4.1 最簡單的C言語程序舉例#include int main( ) printf (This is a C program.n); return 0; 主函數前往值的類型,簡稱主函數類型251.4.1 最簡單的C言語程序舉例#include int main( ) printf (This is a C program.n); return 0; 函數體261.4.1 最簡單的C言語程序舉例#include int main( ) printf (This is a C program.n); return 0; 輸出函數輸出語句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; 當main函數執(zhí)行終了前將整數0作為函數值301.4.1 最簡單的C言語程序舉例#include int main( ) pr
11、intf (This is a C program.n); return 0; 表示語句終了用到函數庫中的輸入輸出函數時standard input & output311.4.1 最簡單的C言語程序舉例C言語允許用兩種注釋方式:/:單行注釋可單獨占一行可出如今一行中其他內容的右側/*/:塊式注釋可包含多行注:出如今字符串中保管本身含義32例1.2 求兩個整數之和。解題思緒:設置3個變量a和b用來存放兩個整數sum用來存放和數用賦值運算符“=把結果傳送給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求兩個整數中的較大者,用主函數調用子函數的方式實現。解題思緒:用一個函數實現求兩個整數中的較大者在主函數中調用此函數并輸出結果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);主函數max函數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中較大者值前往給主函數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函數的定義在main函數之后,需聲明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);輸入函數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);輸入的數據放到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);調用max函
18、數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);實踐參數方式參數471.4.2 C言語程序的構造C言語程序的構造特點:1.一個
20、程序由一個或多個源程序文件組成小程序往往只包括一個源程序文件例1.1,例1.2只需一個函數例1.3有兩個函數只包括一個源程序文件481.4.2 C言語程序的構造C言語程序的構造特點:一個源程序文件中可以包括三個部分:預處置指令全局聲明函數定義#include 等在函數之外進展的數據聲明每個函數用來實現一定的功能注:函數不能嵌套定義。491.4.2 C言語程序的構造C言語程序的構造特點:2.函數是C程序的主要組成部分一個C程序是由一個或多個函數組成的必需包含一個main函數只能有一個每個函數都用來實現一個或幾個特定功能被調用的函數可以是庫函數,也可以是本人編制設計的函數501.4.2 C言語程序
21、的構造C言語程序的構造特點:3.一個函數包括兩個部分:函數首部int max ( int x, int y )函數的第1行函數類型函數名參數類型參數名511.4.2 C言語程序的構造C言語程序的構造特點:3.一個函數包括兩個部分:函數首部int max ( int x, int y )假設函數無參,在括弧中寫void或空括弧int main( void) 或 int main()521.4.2 C言語程序的構造C言語程序的構造特點:3.一個函數包括兩個部分:函數體聲明部分定義在本函數中所用到的變量對本函數所調用函數進展聲明執(zhí)行部分:由假設干個語句組成,指定在函數中所進展的操作(執(zhí)行語句)可以沒
22、有聲明部分可以沒有執(zhí)行部分531.4.2 C言語程序的構造C言語程序的構造特點:3.一個函數包括兩個部分:函數體void dump ( ) 可以是空函數541.4.2 C言語程序的構造C言語程序的構造特點:4. 程序總是從main函數開場執(zhí)行5. C程序對計算機的操作由C語句完成C程序書寫格式是比較自在的一行內可以寫幾個語句一個語句可以分寫在多行上為明晰起見,習慣上每行只寫一個語句551.4.2 C言語程序的構造C言語程序的構造特點:4. 程序總是從main函數開場執(zhí)行5. C程序對計算機的操作由C語句完成6. 數據(變量、函數)聲明和語句最后必需有分號7. C言語本身不提供輸入輸出語句8.
23、程序該當包含注釋,添加可讀性561.5 運轉C程序的步驟與方法1.上機輸入和編輯源程序.c文件2.對源程序進展編譯.obj文件3.進展鏈接處置.exe文件4.運轉可執(zhí)行程序,得到運轉結果闡明:以上過程參見教材中圖1.2書 附錄A中有Visual C+ 6.0中編輯、 編譯、銜接和運轉C程序的方法571.6 程序設計的義務1.問題分析建模對于接手的義務要進展仔細的分析研討所給定的條件分析最后應到達的目的找出處理問題的規(guī)律選擇解題的方法581.6 程序設計的義務1.問題分析2.設計算法設計出解題的方法和詳細步驟591.6 程序設計的義務1.問題分析2.設計算法3.編寫程序4.對源程序進展編輯、編譯和銜接5.運轉程序,分析結果(調試與測試)結果錯了,程序一定錯結果對了,程序未必對601.6 程序設計的義務1.問題分析2.設計算法3.編寫程序4.對源程序進展編輯、編譯和銜接5.運轉程序,分析結果6.編寫程序文檔616237個關鍵字:(由系統定義,不能重作其它定義)auto break case char constcontinue default do double elseenum exter
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030中國牛呼吸道疾病治療行業(yè)市場發(fā)展趨勢與前景展望戰(zhàn)略研究報告
- 2025-2030中國燃料電池電動客車行業(yè)市場現狀分析及競爭格局與投資發(fā)展研究報告
- 2025-2030中國煙道行業(yè)市場現狀供需分析及投資評估規(guī)劃分析研究報告
- 2025-2030中國炭化木行業(yè)市場發(fā)展分析及競爭格局與投資前景研究報告
- 2025-2030中國液體紙板行業(yè)市場現狀供需分析及投資評估規(guī)劃分析研究報告
- 2025-2030中國海鮮行業(yè)市場現狀供需分析及投資評估規(guī)劃分析研究報告
- 挑戰(zhàn)公共衛(wèi)生執(zhí)業(yè)醫(yī)師考試試題及答案
- 提升系統架構設計師考試成績試題及答案
- 2025-2030中國洗手液市場銷售模式與競爭前景分析研究報告
- 備考育嬰師考試的常見問題試題及答案
- 招標投標法培訓課件
- 中鐵員工內退管理辦法
- 皮膚科玫瑰痤瘡的臨床表現和診斷學習培訓課件
- 高考日語復習:日語形容詞用法專項課件
- 馬克思主義與社會科學方法論概述(課件)
- 城市道路養(yǎng)護技術規(guī)程
- 新生兒發(fā)熱護理查房課件
- 第四節(jié)土石壩的穩(wěn)定分析
- 2023年國家藥監(jiān)局直屬單位公開招聘筆試參考題庫(共500題)答案詳解版
- JGT116-2012 聚碳酸酯(PC)中空板
- 重癥血液凈化血管通路的建立與應用中國專家共識(2023版)
評論
0/150
提交評論