C語言概述

2022-12-09 04:18:04 字數 4744 閱讀 5069

§1.1 c語言出現的歷史背景

一、c語言作用

1、寫系統軟體

系統軟體一般用組合語言編寫,但表現出缺點:依賴於硬體、可讀性和可移植性差。

系統軟體若用高階語言編寫,也表現出缺點:不能對硬體進行操作,難以實現彙編評議的功能。

能否找到一種既具有高階語言特性又具有低階語言特性的語言,集它們的優點於一身。c語言產生。

2、寫應用軟體

二、c語言發展歷史

發明人:brian 和 dennis 合稱k&r,2023年出版《the c programming language》稱為標準c,1988年修訂了該書。

由b語言發展為c語言:c保持了b語言的優點又克服了缺點。

應用:unix作業系統就是用c編寫。

§1.2 c語言的特點

一、c語言主要特點

1、語言簡潔、緊湊,使用方便、靈活。

2、運算子豐富。

3、資料結構豐富,具有現代化語言的各種資料結構。

4、具有結構化的控制語句。

5、語法限制不太嚴格,程式設計自由度大。

6、c語言允許直接訪問實體地址,能進行位操作,能實現組合語言的大部分功能。

7、生成目標**質量高,程式執行效率高。

8、用c編制的程式可移植性好。

二、c語言與其它語言的比較

三、總結

c語言對程式設計師要求較高,使用c限制少,靈活度大,功能強,可編寫出任何型別程式。

§1.3 簡單的c程式介紹

一、例題分析

例1。1

main()

int a,b,sum

a=123 b=456

sum=a+b

printf ("sum is %d\n",sum)

例1.2

main ()

int a, b, c

scanf ("%d,%d",&a,&b)

c=max (a,b)

printf ("max=%d",c)

int max (x,y)

int x,y

int z

if (x>y) z=x

else z=y

return (z)

二、分析結論

1、c程式是由函式構成的

乙個c程式至少包含乙個函式學(main函式),也可以包含乙個main函式和若干個其它函式。因此,函式是c程式的基本單位。

2、乙個函式由兩部分組成:

⑴函式的說明部分。

函式名、函式型別、函式屬性、函式引數形參名、形式引數型別

⑵函式體

包括:變數定義、 執行部分

3、乙個c程式總是從main函式開始執行,而不論main函式在整個程式中的位置如何。

4、c程式書寫格式自由,一行內可以寫幾個語句,乙個語句可以分寫在多行上。

5、每個語句和資料定義的最後髮鬚有乙個分號。分號是c語句的必要組成部分。

6、c語言本身沒有輸入輸出語句。輸入輸出是由scanf和printf函式來完成。

7、可以用/*……*/對c程式中的任何部分作注釋,以增加可讀性。

§1.4 c程式的上機步驟

一、用turbo c 執行c程式步驟

turbo c 是由美國borland公司研製生產的,公司提供的turbo c系統是以壓縮檔案的形式存放在磁碟或光碟上的。使用者在使用turbo c之前,必須將廠商提供的turbo c系統按照要求合理地安排在使用者的磁碟上,建立乙個turbo c的使用環境,這項工作稱謂turbo c的安裝(install)。turbo c系統提供了乙個安裝程式只要將安裝程式插入驅動器,執行該驅動器上的程式,按照提示進行操作即可。

1、呼叫turbo c程式

tc 調出turbo c編譯環境(介紹turbo c編譯環境的具體使用)

2、編輯原始檔。根據需要輸入或修改源程式

3、編譯源程式。

按「f9「開始編譯,顯示有無錯誤和有幾個錯,按任意鍵後,游標停留在錯誤處,按提示修改,如此反覆進行到不出現錯誤為止。

4、執行程式。

按「f10「選擇「sun「按回車

5、退出turbo c環境

按「alt+x「或file下的exit命令

第二章資料型別、運算子和表示式

§2.1 c的資料型別

一、資料型別的引入

乙個程式包括兩方面的內容:

1、資料的描述。

2、操作步驟,即動作的描述。

據此著名計算機科學家活思(nikiklaus wirth)提出乙個分式:

資料結構+演算法=程式

程式=演算法+資料結構+程式設計方法+語言工具和環境

二、c語言提供的資料結構

§2.2 常量與變數

一、常量和符號常量

1、常量:在程式執行中其值不能被改變的量。

2、常量分類:

3、符號常量:用乙個識別符號代表乙個常量。

定義:#define 《識別符號》 《常量值》

注:1、不同於變數,值在作用域內不能改變,也不能被賦值。

如:privce=40;

2、習慣上,符號常量名用大寫,變數用小寫。

二、變數

1、變數:其值可以改變的量稱謂變數。

變數由變數名來表示,乙個變數佔據一定的儲存單元,在儲存單元中存放變數的值。

2、識別符號:用來標識變數名、符號常量名、函式名、陣列名、型別名、檔名的有效字串序列。

3、命名規定:只能由字母、數字、下劃線三種字元組成,且第乙個字元必須為字母、下劃線。長度無統一規定,隨系統而定,許多取8個,turbo c放寬到256個。

4、使用注意:①大寫字母和小寫字母是兩個不同的識別符號。習慣變數用小寫表示。如:sum 和sum

見名知意,選取有含義的英文單詞作為識別符號。

變數「先定義,後使用「。

a、凡未被定義的,不作為變數名,這樣做保證程式中變數名使用的正確。

b、變數被定義時被指定為一確定型別。在編譯時就能為其分配相應的儲存單元。

c、每一變數屬於乙個型別,就便於在編譯時據此檢查該變數所進行的運算是否合法。

§2.3 整型資料

一、整型常量

整型常量即整常數。表示用以下三種

1、十進位制

2、八進位制

3、十六進製制 :以0x開頭的數是16進製數 0x123=(123)16 -0x12=(12)16

二、整型變數

1、整型變數的分類

a、基本型 int

b、短整型 short int或short

c、長整型 long int或long

d、無符號型:儲存單元中全部二進位制位用作存放數本身而不包括符號位。unsignet int unsignet short unsignet long 表示

2、整型變數的定義

格式:型別識別符號變數名;

注意:1、放在函式開頭部分也可放在程式中間

不同型別的整型資料可以進行算術運算

三、整型常量的型別

將乙個整型常量賦給上述幾種類別的整型量時注意:

1、乙個整常量,如其值在內,認為它是int型可以賦給int或 long int變數

2、乙個整常量在-2147483648--2147483647範圍內則認為它是long int 可以賦給long int變數

3、如果乙個計算機系統c版本規定short int 和int在記憶體中佔據的長度相同,則short int 和int等價,使用相同

4、常量中unsignet型,非負值整常量可以賦給unsignet變數

5、整常量後加l則認為是long int 常量。

§2.4 實型資料

一、實型常量(浮點型)

1、十進位制數表示形式:數字,小數點,+-號

2、指數形式:123e3=123*103

二、實型變數

單精度型(float)

雙精度型 (double)

注意:1、對實型變數使用前加以定義

實型常量不分float和 double,乙個實型常量可賦給float和 double 變數

§2.5 字元型資料

一、字元常量

普通字元常量:單引號括起來的乙個字元。'a', 'a'

特殊形式字元常量:以\開頭字串行。\稱為轉義符。

二、字元變數

定義形式:char c1,c2;

注意:1、字元變數只能放乙個字元,不可放字串

在記憶體中佔乙個位元組

三、字元資料在記憶體中的儲存形式及使用方法

在c語言中,字元資料和int資料之間可通用,乙個字元資料即可以字元形式輸出,也可以整數形式輸出

四、字串常量

用一對雙引號括起來的字串行。"how do you do"

注意:1、不能把字串賦給字元變數

在記憶體中字串存放時有乙個字串結束符\0

在寫字串時不必加\0,\0是系統自動加上的。

語言中沒有專門的串變數。用字元陣列來存放字串.。

§2.6 變數賦初值

一、方法

1、在定義變數的同時使變數初始化

int a=3

float b=3.4

char c='a'

2、可以使被定義的一部分初始化

int a,b,c=5;

3、若幾個變數賦相同的初值

int a=5,b=5,c=5;

int a=b=c=5 (錯)

§2.7 各類數值型資料間的混合運算

一、整型、實型、字元型資料可混合運算

例:10+'a'+1.5-8765.1234*'b' (合法)

運算規則:不同型別的資料轉換成同一型別,然後進行運算。

第1章C語言概述

新疆農業大學 語言程式設計課程教案 一 教學目的和要求 了解c語言產生的歷史背景,c語言的特點及發展過程,c語言程式的組成,turbo c環境的基本操作執行乙個c程式的方法。二 講授內容提要 第1章c語言概述 1.1 c語言產生的歷史背景 1.2 c語言的特點 1.3 c程式的基本組成 1.4 如何...

C語言基礎知識點概述

總結 c程式的主要結構特點如下 所有的c程式都是由乙個或多個函式組成的程式模組構成的。在程式中,可以包含任意多個不同名的函式,但必須有且僅有乙個main 主函式。c程式總是從主函式main 開始執行的。c語言程式是由語句組成,使用 作為語句的中止符或分隔符。一行中可以有多個語句,一條語句也可以占用任...

2 C語言之結構體概述

1 c語言中的2種型別 原生型別和自定義型別。1 結構體定義時需要先定義結構體型別,然後再用型別來定義變數。2 也可以在定義結構體型別的同時定義結構體變數。定義型別 struct people 定義型別的同時定義變數。struct student s1 將型別struct student重新命名為s...