c語言教程

c語言教程

本書是一本優秀的C程式設計語言教材,完整描述了ANSIC語言及其語法特性,並對C語言的高級特性和套用作了深入闡述,介紹了從C到C++和Java過渡的相關知識。本書的一個鮮明特色就是結合大量示例描述c語言的重要特徵,並對很多工作代碼給出了逐步的分析,以這種獨特的教學方法向讀者解釋新接觸的編程元素及一些慣用法。 本書系統、完整,可作為C語言的參考手冊,也非常適合作為學習C語言的入門和高級課程教材。從這裡,你會愛上編程·

基本信息

作者簡介

IraPohl是美國加州大學聖克魯茲分校計算機科學技術系教授,具有20多年和C++語言有關的經典著作(其中,《C++精碎》和《C語言解析教程》已經由機械工業出版社翻譯出版)。他曾為多家機構提供技術諮詢服務,包括DFC公司、蘋果公司、斯坦福線形加速器研究中心、Xylin和Gupta公司等。

目錄信息

c語言教程c語言教程

第0章從零開始

0.1為什麼要用C

0.2ANSIC標準

0.3從C到C++

0.4從C和C++到Java

第1章C語言概述

第1章C語言概述

1.1C語言發展簡史

1.2C語言的特點

1.3簡單C語言程式舉例

1.4C語言程式的組成與結構

1.5C語言程式的開發步驟

小結

習題

第2章算法與程式設計基礎

2.1算法概述

2.1.1算法的概念

2.1.2算法的特徵

2.2算法的常用表示方法

2.2.1自然語言

2.2.2流程圖

2.2.3N—S流程圖

2.3程式設計典型算法

2.4結構化程式設計方法

小結

習題

第3章數據類型、運算符與表達式

3.1C語言的基本符號

3.1.1標識符

3.1.2常量

3.1.3變數

3.1.4關鍵字

3.2C語言的數據類型

3.2.1整型數據

3.2.2實型數據

3.2.3字元型數據

3.3運算符和表達式

3.3.1算術運算符和算術表達式

3.3.2賦值運算符和賦值表達式

3.3.3逗號運算符和逗號表達式

3.4數據類型轉換

3.4.1不同數據類型的數據間的混合運算

3.4.2強制類型轉換

3.5自增運算和自減運算

3.6位運算

小結

習題

第4章數據的輸入和輸出

4.1數據的輸出

4.1.1格式輸出函式printf

4.1.2字元輸出函式putchar

4.2數據的輸入

4.2.1格式輸入函式scanf

4.2.2字元輸入函式getchar

4.3套用舉例

小結

習題

第5章選擇結構

5.1關係運算符和關係表達式

5.1.1關係運算符

5.1.2關係表達式

5.2邏輯運算符和邏輯表達式

5.2.1邏輯運算符

5.2.2邏輯表達式

5.3選擇語句

5.3.1if語句

5.3.2if語句的嵌套

5.3.3switch語句

5.4條件運算符和條件表達式

5.5套用舉例

小結

習題

第6章循環結構

6.1goto語句與標號

……

第7章數組

第8章函式

第9章指針

第10章結構體與共用體

第11章檔案

第12章面向對象程式設計與C++基礎

第13章數據結構基礎

附錄AC語言的關鍵字

附錄B雙目算術運算中兩邊運算類型轉換規律

附錄C運算符的優先權和結合性

附錄D常用字元與ASCII碼對照表

附錄E常用庫函式

參考文獻

基礎教程

函式的遞歸調用

Turbo C2.0允許函式自己調用自己,即函式的遞歸調用,遞歸調用可以使程式簡潔、代碼緊湊,但要犧牲記憶體空間作處理時的堆疊。

如要求一個n!(n的階乘)的值可用下面遞歸調用:

例8:

#include

unsigned ling mul(int n);

int main()

{

int m;

puts("Calculate n! n=?\n");

scanf("%d", &m); /*鍵盤輸入數據*/

printf("%d!=%ld\n", m, mul(m));/*調用子程式計算並輸出*/

getch();

retun 0;

}

unsigned long mul(int n)

{

unsigned long p;

if(n>1)

p=n*mul(n-1); /*遞歸調用計算n!*/

else

p=1L;

return(p); /*返回結果*/

}

運行結果:

calculate n! n=?

輸入5時結果為:

5!=120

偉人辭世

昨日,在眾多的國際互動論壇上,計算機愛好者們以特有的方式紀念這位程式語言的重要奠基人。許多網友的發帖中沒有片言隻字,

僅僅留下一個分號“;”。在C語言中,分號標誌著一行指令語句的結束,網友們以此來悼念“C語言之父”,美國著名計算機專家丹尼斯·里奇(Dennis Ritchie)所引領的時代悄然遠去。

在日益紛繁複雜的程式設計語言王國中,C語言因其簡潔、有效、通用的特性而始終占據一席之地。被譽為“C語言之父”,同時也是作業系統Unix之父的C語言發明人之一——丹尼斯·里奇10月9日以70歲之齡辭世。

生於1941年9月9日的丹尼斯·里奇曾在哈佛大學學習物理學和套用數學,1967年他進入貝爾實驗室,並曾經擔任朗訊技術公司系統軟體研究部門的領導人。

1983年,美國計算機協會將當年的圖靈獎破例頒給了作為軟體工程師的肯·湯普遜與里奇,獲獎原因是他們“研究發展了通用的作業系統理論,尤其是實現了Unix作業系統”。並且,美國計算機協會當年還決定新設立一個獎項——軟體系統獎,以獎勵那些優秀的軟體開發者,首個軟體系統獎當然也是非他們兩人莫屬。

儘管通過Unix拿獎拿到手軟,但令里奇引起最大關注和反響的則是C語言的問世。1999年,里奇和湯普遜為發展C語言和Unix作業系統一起獲得了美國國家技術獎章。

雖然在C語言之後,C++、Java等各式各樣計算機高級語言層出不窮,但不少程式設計師仍舊認為,C語言簡潔、高效、靈活的特性令其具有獨特魅力。“現在的程式編寫朝著越來越冗長龐大的方向發展,而C語言雖然屬於相對‘低級’的程式語言,但它的簡潔之美是無可替代的。”一位電腦程式員道出了自己格外青睞C語言的原因。

和里奇所創造的C語言一樣,Unix系統也同樣具有簡潔、樸素、小巧的特性。但正如里奇自己所說的那樣,“Unix系統是一個簡單基本的作業系統,但學會欣賞簡潔需要天賦。”而里奇本人,儘管在軟體發展史上占有舉足輕重的地位,也同樣在從事的領域辛勤而低調地耕耘近40年。

相關詞條

相關搜尋

熱門詞條

聯絡我們