第1章 程序設計和C語言_第1頁
第1章 程序設計和C語言_第2頁
第1章 程序設計和C語言_第3頁
第1章 程序設計和C語言_第4頁
第1章 程序設計和C語言_第5頁
已閱讀5頁,還剩56頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、1.1 什么是計算機程序1.2 什么是計算機語言1.3 C語言的發(fā)展及其特點1.4 最簡單的C語言程序1.5 運行C程序的步驟與方法1.6 程序設計的任務1.1 什么是計算機程序 程序:一組計算機能識別和執(zhí)行的指令 只要讓計算機執(zhí)行這個程序,計算機就會自動地、有條不紊地進行工作 計算機的一切操作都是由程序控制的,離開程序,計算機將一事無成1.2 什么是計算機語言 計算機語言:人和計算機交流信息的、計算機和人都能識別的語言1.2 什么是計算機語言 計算機語言發(fā)展階段: 機器語言(由0和1組成的指令) 符號語言(用英文字母和數(shù)字表示指令) 高級語言(接近于人的自然語言和數(shù)學語言) 面向過程的語言

2、(非結構化的語言、結構化語言) 面向對象的語言低級語言低級語言1.3 C語言的發(fā)展及其特點 C語言是國際上廣泛流行的計算機高級語言。 C語言的發(fā)展:BCPL語言語言B語言語言C語言語言精練精練、接近硬件接近硬件,但,但過于簡單過于簡單, 無數(shù)據(jù)類型無數(shù)據(jù)類型具有多種數(shù)據(jù)類型具有多種數(shù)據(jù)類型1.3 C語言的發(fā)展及其特點 最初的C語言只是為描述和實現(xiàn)UNIX操作系統(tǒng)提供一種工作語言而設計的。1.3 C語言的發(fā)展及其特點 1983年,美國國家標準協(xié)會(ANSI)成立了一個委員會,根據(jù)C語言問世以來各種版本對C語言的發(fā)展和擴充,制定了第一個C語言標準草案(83 ANSI C)。1.3 C語言的發(fā)展及其

3、特點 1989年,ANSI公布了一個完整的C語言標準ANSI X3.159-1989(常稱ANSI C,或C89)。1.3 C語言的發(fā)展及其特點 1990年,國際標準化組織ISO(International Standard Organization) 接受C89作為國際標準ISO/IEC 9899:1990,它和ANSI的C89基本上是相同的。1.3 C語言的發(fā)展及其特點 1995年,ISO對C90作了一些修訂,1999年,ISO又對C語言標準進行修訂,在基本保留原來的C語言特征的基礎上,針對應用的需要,增加了一些功能,尤其是C+中的一些功能,命名為ISO/IEC 9899:1999。1.3

4、 C語言的發(fā)展及其特點 2001、2004年先后進行了兩次技術修正(TC1和TC2)。 ISO/IEC 9899:1999(及其技術修正)被稱為 C99。 C99是C89(及1995基準增補1)的擴充。1.3 C語言的發(fā)展及其特點 本書的敘述以C99標準為依據(jù)(對C99新增加的功能作特別的說明)。 目前不同軟件公司提供的各C語言編譯系統(tǒng)多數(shù)并未完全實現(xiàn)C99建議的功能 本書中程序基本上都可以在目前所用的編譯系統(tǒng)(如VC+ 6.0,Turbo C+ 3.0,GCC)上編譯和運行。1.3 C語言的發(fā)展及其特點 C語言是一種用途廣泛、功能強大、使用靈活的過程性(procedural)編程語言,既可用

5、于編寫應用軟件,又能用于編寫系統(tǒng)軟件。因此C語言問世以后得到迅速推廣。1.3 C語言的發(fā)展及其特點 C語言主要特點: 語言簡潔、緊湊,使用方便、靈活。 只有37個關鍵字、9種控制語句 程序書寫形式自由,源程序短1.3 C語言的發(fā)展及其特點 C語言主要特點: 運算符豐富。 有34種運算符 把括號、賦值、強制類型轉換等都作為運算符處理 表達式類型多樣化1.3 C語言的發(fā)展及其特點 C語言主要特點: 數(shù)據(jù)類型豐富。 包括:整型、浮點型、字符型、數(shù)組類型、指針類型、結構體類型、共用體類型 C99又擴充了復數(shù)浮點類型、超長整型(long long)、布爾類型(bool) 指針類型數(shù)據(jù),能用來實現(xiàn)各種復雜

6、的數(shù)據(jù)結構(如鏈表、樹、棧等)的運算。1.3 C語言的發(fā)展及其特點 C語言主要特點: 具有結構化的控制語句 如ifelse語句、while語句、dowhile語句、switch語句、for語句 用函數(shù)作為程序的模塊單位,便于實現(xiàn)程序的模塊化 C語言是完全模塊化和結構化的語言1.3 C語言的發(fā)展及其特點 C語言主要特點: 語法限制不太嚴格,程序設計自由度大。 對數(shù)組下標越界不做檢查 對變量的類型使用比較靈活,例如,整型量與字符型數(shù)據(jù)可以通用 C語言允許程序編寫者有較大的自由度,因此放寬了語法檢查1.3 C語言的發(fā)展及其特點 C語言主要特點: 允許直接訪問物理地址,能進行位操作,可以直接對硬件進行

7、操作 C語言具有高級語言的功能和低級語言的許多功能,可用來編寫系統(tǒng)軟件 這種雙重性,使它既是成功的系統(tǒng)描述語言,又是通用的程序設計語言1.3 C語言的發(fā)展及其特點 C語言主要特點: 用C語言編寫的程序可移植性好。 C的編譯系統(tǒng)簡潔,很容易移植到新系統(tǒng) 在新系統(tǒng)上運行時,可直接編譯“標準鏈接庫”中的大部分功能,不需要修改源代碼 幾乎所有計算機系統(tǒng)都可以使用C語言1.3 C語言的發(fā)展及其特點 C語言主要特點: 生成目標代碼質量高,程序執(zhí)行效率高。 1.4最簡單的C語言程序1.4.1 最簡單的C語言程序舉例1.4.2 C語言程序的結構1.4.1 最簡單的C語言程序舉例例1.1 要求在屏幕上輸出以下一

8、行信息。 This is a C program.解題思路:解題思路: 在主函數(shù)中用在主函數(shù)中用printf函數(shù)原樣輸出以上函數(shù)原樣輸出以上文字。文字。1.4.1 最簡單的C語言程序舉例#include int main( ) printf (”This is a C program.n”); return 0; 函數(shù)的名字,表示函數(shù)的名字,表示主函數(shù)主函數(shù)C程序必須有一個程序必須有一個 main 函數(shù)函數(shù)1.4.1 最簡單的C語言程序舉例#include int main( ) printf (”This is a C program.n”); return 0; 主函數(shù)主函數(shù)類型類型1.4

9、.1 最簡單的C語言程序舉例#include int main( ) printf (”This is a C program.n”); return 0; 函數(shù)體函數(shù)體1.4.1 最簡單的C語言程序舉例#include int main( ) printf (”This is a C program.n”); return 0; 輸出函數(shù)輸出函數(shù)輸出語句輸出語句1.4.1 最簡單的C語言程序舉例#include int main( ) printf (”This is a C program.n”); return 0; 輸出語句輸出語句1.4.1 最簡單的C語言程序舉例#include i

10、nt main( ) printf (”This is a C program.n”); return 0; 換行符換行符1.4.1 最簡單的C語言程序舉例#include int main( ) printf (”This is a C program.n”); return 0; 當當main函數(shù)執(zhí)行結束前函數(shù)執(zhí)行結束前將整數(shù)將整數(shù)0作為函數(shù)值作為函數(shù)值1.4.1 最簡單的C語言程序舉例#include int main( ) printf (”This is a C program.n”); return 0; 表示語句結束表示語句結束用到函數(shù)庫中的輸入輸出函數(shù)用到函數(shù)庫中的輸入輸出函數(shù)

11、時時1.4.1 最簡單的C語言程序舉例C語言允許用兩種注釋方式: /:單行注釋 可單獨占一行 可出現(xiàn)在一行中其他內容的右側 /*/:塊式注釋 可包含多行例1.2 求兩個整數(shù)之和。解題思路:解題思路:u設置設置3個變量個變量ua和和b用來存放兩個整數(shù)用來存放兩個整數(shù)usum用來存放和數(shù)用來存放和數(shù)u用賦值運算符用賦值運算符“=”把結果傳送給把結果傳送給sum#include int main( ) int a,b,sum; a = 123; b = 456; sum = a + b; printf(”sum is %dn”,sum); return 0; 定義整型變量定義整型變量a,b,sum對

12、變量對變量a,b賦值賦值將將a與與b的的和賦給和賦給sum#include int main( ) int a,b,sum; a = 123; b = 456; sum = a + b; printf(”sum is %dn”,sum); return 0; 用用sum的值的值替代替代希望輸出的字符希望輸出的字符例1.3求兩個整數(shù)中的較大者。解題思路:解題思路:u用一個函數(shù)實現(xiàn)求兩個整數(shù)中的較大者用一個函數(shù)實現(xiàn)求兩個整數(shù)中的較大者u在主函數(shù)中調用此函數(shù)并輸出結果在主函數(shù)中調用此函數(shù)并輸出結果#include int main( ) int max(int x,int y); int a,b,c

13、; 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ù)max函數(shù)函數(shù)#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)

14、z = x; else z = y; return(z);將將x和和y中較大者中較大者值值返回給主函數(shù)返回給主函數(shù)#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);#include int main( ) int max(int x,int y); int a,b,c; scanf

15、(”%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函數(shù)的定義函數(shù)的定義在在main函數(shù)之后函數(shù)之后,需聲明,需聲明#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)

16、 int z; if (x y) z = x; else z = y; return(z);輸入函數(shù)輸入函數(shù)#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);輸入語句輸入語句#include int main( ) int max(int x,int y); int a,b,c;

17、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ù)據(jù)輸入的數(shù)據(jù)放到放到a,b中中輸入格式輸入格式a的地址的地址#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

18、y) int z; if (x y) z = x; else z = y; return(z);調用調用max函數(shù)函數(shù)#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);8588#include int main( ) int max(int x,int y); int a,b,c;

19、 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);8588#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; els

20、e z = y; return(z);實際參數(shù)實際參數(shù)形式參數(shù)形式參數(shù)1.4.2 C語言程序的結構C語言程序的結構特點:1.一個程序由一個或多個源程序文件組成 小程序往往只包括一個源程序文件 例1.1,例1.2只有一個函數(shù) 例1.3有兩個函數(shù)只包括一個源程序文件只包括一個源程序文件1.4.2 C語言程序的結構C語言程序的結構特點: 一個源程序文件中可以包括三個部分: 預處理指令 全局聲明 函數(shù)定義#include 等等在函數(shù)之外進行的數(shù)據(jù)聲明在函數(shù)之外進行的數(shù)據(jù)聲明每個函數(shù)用來實現(xiàn)一定的功能每個函數(shù)用來實現(xiàn)一定的功能1.4.2 C語言程序的結構C語言程序的結構特點:2.函數(shù)是C程序的主要組成部

21、分 一個C程序是由一個或多個函數(shù)組成的 必須包含一個main函數(shù)(只能有一個) 每個函數(shù)都用來實現(xiàn)一個或幾個特定功能 被調用的函數(shù)可以是庫函數(shù),也可以是自己編制設計的函數(shù)1.4.2 C語言程序的結構C語言程序的結構特點:3.一個函數(shù)包括兩個部分: 函數(shù)首部int max ( int x, int y )函數(shù)的第函數(shù)的第1行行函數(shù)類型函數(shù)類型函數(shù)名函數(shù)名參數(shù)類型參數(shù)類型參數(shù)參數(shù)名名1.4.2 C語言程序的結構C語言程序的結構特點:3.一個函數(shù)包括兩個部分: 函數(shù)首部int max ( int x, int y )若函數(shù)無參,在括弧中寫void或空括弧int main( void) 或或 int main()1.4.2 C語言程序的結構C語言程序的結構特點:3.一個函數(shù)包括兩個部分: 函數(shù)體 聲明部分定義在本函數(shù)中所用到的變量對本函數(shù)所調用函數(shù)進行聲明 執(zhí)行部分:由若干個語句組成,指定在函

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論