§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...