C語言作為一種簡潔、高效的語言,目前是絕大多數(shù)高校本科生學(xué)習(xí)程序設(shè)計的入門語言。
《C語言程序設(shè)計(第2版)/高等學(xué)校計算機基礎(chǔ)教育教材精選》所有作者均來自教學(xué)第一線,具有多年教學(xué)經(jīng)驗,本書概念清晰,注重實用,運用大量的例題和精選的習(xí)題,有助于學(xué)生快速掌握C語言程序設(shè)計的基本方法。
《C語言程序設(shè)計(第2版)/高等學(xué)校計算機基礎(chǔ)教育教材精選》共10章,內(nèi)容包括程序設(shè)計概述、基本數(shù)據(jù)類型、順序結(jié)構(gòu)程序設(shè)計、選擇結(jié)構(gòu)程序設(shè)計、循環(huán)結(jié)構(gòu)程序設(shè)計、函數(shù)、數(shù)組、指針、結(jié)構(gòu)體、聯(lián)合體和枚舉、文件。
本書可以作為高等學(xué)校非計算機專業(yè)學(xué)生的教材,也可以作為本科新生或C語言愛好者的自學(xué)教材。本書還配有輔助教材《C語言習(xí)題及實驗指導(dǎo)》(第2版)。
《C語言程序設(shè)計(第2版)/高等學(xué)校計算機基礎(chǔ)教育教材精選》主要是面向大學(xué)非計算機專業(yè)本科新生而寫,作者全部來自于教學(xué)一線,具有多年的C語言程序設(shè)計教學(xué)實際經(jīng)歷。
教材內(nèi)容不拘泥于語法,采用豐富的案例描述C語言的應(yīng)用,輔以精挑細選的常用考試題型的習(xí)題幫助讀者檢驗學(xué)習(xí)效果。因而特別適合作為大學(xué)新生學(xué)習(xí)C語言程序設(shè)計的教材或參考書,也可作為高職計算機專業(yè)的學(xué)生學(xué)習(xí)C語言程序設(shè)計的教材或參考書。
第2版前言
C語言程序設(shè)計(第2版)本教材第1版自出版以來,已經(jīng)過3次印刷,盡管在后兩次印刷時對個別內(nèi)容進行了修訂,但使用中仍發(fā)現(xiàn)有些內(nèi)容達不到一些專業(yè)的教學(xué)要求。第2版主要進行了如下的修訂:
。1) 增加了3.5節(jié)“位運算符”。
。2) 增加了9.6節(jié)“聯(lián)合體”和9.7節(jié)“枚舉類型”。
教學(xué)大綱中沒有以上內(nèi)容的專業(yè)在教學(xué)中可跳過以上內(nèi)容。
。3) 對各章后的習(xí)題進行了補充。
目前與本教材配套的網(wǎng)絡(luò)教學(xué)平臺——北京信息科技大學(xué)計算中心網(wǎng)絡(luò)教學(xué)平臺(http://cms.bistu.edu.cn)已經(jīng)開通,選擇本教材進行C語言程序設(shè)計教學(xué)的各學(xué)校主講教師可以享受在本平臺免費開課及資源共享,有意開課的老師請給作者發(fā)送郵件申請具體開課事宜。作者郵箱:wenjie_li@126.com或者wenjie_li@bistu.edu.cn。
由于作者水平和精力所限,本次修訂后仍可能有錯誤。如果發(fā)現(xiàn)錯誤,請給作者的郵箱發(fā)信,在此對大家的支持表示衷心感謝!
作者
2014年3月30日
第1版前言
C語言程序設(shè)計(第2版)大家對計算機都不陌生,但是會用計算機的人是否都懂得計算機是如何完成我們交給它的任務(wù)的,相信會有很多人不明白。這也是目前各高校無論對于計算機專業(yè)還是非計算機專業(yè),甚至文科專業(yè),都要開設(shè)程序設(shè)計這類課程的原因之一。C語言作為一種簡潔高效并且支持結(jié)構(gòu)化編程的程序設(shè)計語言,在講究效率的時代,對于幫助學(xué)習(xí)者掌握程序設(shè)計的基本思想和方法,進而更好地理解計算機的工作,會有極大的幫助。
本書雖然像傳統(tǒng)的教材那樣,按照知識學(xué)習(xí)的規(guī)律,順序介紹C語言的語法和用C語言解決實際問題的方法,但并不是一本C語言的語法書。本書完全是從應(yīng)用的角度出發(fā),對C語言的語法進行展開的,所以不要把本書作為語法大全。
本書的讀者對象是大學(xué)本科新生,尤其是非計算機專業(yè)的同學(xué),他們希望通過學(xué)習(xí)C語言程序設(shè)計來理解計算機的工作,盡管他們可能今后并不會成為程序員,但他們希望知道計算機能做什么以及如何做,以便當(dāng)他們在今后的工作中,需要向程序員提出他們的軟件需求時,能夠很好地與軟件開發(fā)人員進行溝通,這是非計算機專業(yè)本科生必備的能力。
程序設(shè)計是一項工作,程序就是這項工作的產(chǎn)品。如果我們要制造產(chǎn)品,必須有好的原材料,這些原材料對于程序來說就是程序設(shè)計語言的語法知識,以及各種問題的解決方法和步驟。所以本書在介紹C語言語法的同時,介紹了各種常見問題的解決方法和思路(算法),讀者通過這些內(nèi)容的積累,等到創(chuàng)造自己的作品(程序)時就會得心應(yīng)手。所以讀者一定要盡可能多地積累算法,真正做到熟能生巧。
本書第1章和第8章由李文杰編寫,第2章和第9章由徐英慧編寫,第3章由賈艷萍編寫,第4章由張良編寫,第5章由崇美英編寫,第6章由黃宏博編寫,第7章由李穎編寫,第10章由方煒煒編寫。全書由李文杰負責(zé)統(tǒng)稿,北京信息科技大學(xué)計算中心主任周長勝副教授主審。在書稿規(guī)劃和撰寫的各個階段,劉梅彥和劉亞輝老師多次提出了建設(shè)性的意見,清華大學(xué)出版社的白立軍編輯自始至終都毫無怨言地為作者提供各種方便,使本書得以及時出版。
本書的所有例程都是在Visual C++ 6.0集成開發(fā)環(huán)境調(diào)試的,所給出的程序運行情況也是在Windows XP+Visual C++ 6.0環(huán)境下得到的。本書配套的教學(xué)資源包括多媒體教學(xué)課件和所有范例程序的源代碼,可以從清華大學(xué)出版社網(wǎng)站獲取。因作者水平所限,書中難免會出現(xiàn)某些錯誤。歡迎讀者就書中內(nèi)容與作者進行交流。
作者
2010年5月于北京信息科技大學(xué)計算中心
第1章 程序設(shè)計概述
1.1 程序和程序設(shè)計
1.1.1 程序的概念
1.1.2 程序設(shè)計
1.1.3 程序設(shè)計語言
1.2 C語言概述
1.2.1 C語言簡介
1.2.2 C語言程序示例
1.2.3 為何要學(xué)C語言
1.3 算法及其描述
1.3.1 算法的概念
1.3.2 算法的特性
1.3.3 算法的描述
1.3.4 結(jié)構(gòu)化程序設(shè)計
1.4 C語言程序開發(fā)過程
1.4.1 使用計算機解題的過程
1.4.2 常用的C語言開發(fā)環(huán)境
習(xí)題1
第2章 基本數(shù)據(jù)類型
2.1 數(shù)據(jù)類型概述
2.2 標(biāo)識符、常量和變量
2.2.1 標(biāo)識符
2.2.2 常量
2.2.3 變量
2.3 整型數(shù)據(jù)
2.3.1 整型常量的表示
2.3.2 整型變量
2.3.3 整型常量的類型
2.4 實型數(shù)據(jù)
2.4.1 實型常量的表示
2.4.2 實型數(shù)據(jù)在內(nèi)存中的存放形式
2.4.3 實型變量
2.5 字符數(shù)據(jù)
2.5.1 字符在內(nèi)存中的存放形式
2.5.2 字符常量
2.5.3 字符變量
2.5.4 字符串常量
2.6 數(shù)據(jù)的輸入與輸出
2.6.1 字符數(shù)據(jù)的輸入和輸出
2.6.2 格式化輸入輸出
習(xí)題2
第3章 順序結(jié)構(gòu)程序設(shè)計
3.1 算術(shù)運算和算術(shù)表達式
3.1.1 整數(shù)算術(shù)運算
3.1.2 實數(shù)算術(shù)運算
3.1.3 混合算術(shù)運算
3.1.4 算術(shù)表達式
3.1.5 算術(shù)表達式的計算規(guī)則
3.2 賦值運算和賦值表達式
3.2.1 賦值運算符
3.2.2 賦值表達式
3.3 自增自減運算
3.4 優(yōu)先級和類型轉(zhuǎn)換
3.4.1 優(yōu)先級
3.4.2 類型轉(zhuǎn)換
3.5 位運算符
3.5.1 “按位與”運算符&
3.5.2 “按位或”運算符|
3.5.3 “按位異或”運算符^
3.5.4 “按位取反”運算符
3.5.5 “按位左移”運算符<<
3.5.6 “按位右移”運算符>>
3.5.7 位運算賦值運算符
……
第4章 選擇結(jié)構(gòu)程序設(shè)計
第5章 循環(huán)結(jié)構(gòu)程序設(shè)計
第6章 模塊化程序設(shè)計——函數(shù)
第7章 數(shù)組
第8章 指針
第9章 結(jié)構(gòu)體、聯(lián)合體和枚舉
第10章 文件