C語(yǔ)言是在當(dāng)今軟件開(kāi)發(fā)領(lǐng)域中應(yīng)用十分廣泛的一種語(yǔ)言。本書全面介紹C語(yǔ)的基本概念、數(shù)據(jù)類型、語(yǔ)句及結(jié)構(gòu)特點(diǎn),系統(tǒng)地講述C語(yǔ)言程序設(shè)計(jì)的基本思想和方法。為配合C語(yǔ)言上機(jī)操作學(xué)習(xí),書后附錄中提供各章節(jié)的實(shí)驗(yàn)內(nèi)容,并提供VC 2010編程環(huán)境的上機(jī)使用圖例,同時(shí)還在出版社的網(wǎng)站上提供電子版教學(xué)資料。全書選材先進(jìn),內(nèi)容豐富,講述力求理論聯(lián)系實(shí)際、深入淺出、循序漸進(jìn),注重培養(yǎng)讀者的程序設(shè)計(jì)能力及良好的程序設(shè)計(jì)風(fēng)格與習(xí)慣。
前 言<br/>C語(yǔ)言概念簡(jiǎn)潔,數(shù)據(jù)類型豐富,表達(dá)能力強(qiáng),運(yùn)算符多而靈活,程序結(jié)構(gòu)性和可讀性好,有利于培養(yǎng)良好的編程風(fēng)格,易于體現(xiàn)結(jié)構(gòu)化程序設(shè)計(jì)思想。C語(yǔ)言既具有高級(jí)語(yǔ)言程序設(shè)計(jì)的特點(diǎn),又具有匯編語(yǔ)言的功能;既能有效地進(jìn)行算法描述,又能對(duì)硬件直接進(jìn)行操作;既適合于編寫應(yīng)用程序,又適合于開(kāi)發(fā)系統(tǒng)軟件,是當(dāng)今世界上應(yīng)用最廣泛、最具影響力的程序設(shè)計(jì)語(yǔ)言之一。C語(yǔ)言本身還具有整個(gè)語(yǔ)言緊湊整齊、設(shè)計(jì)精巧、編輯方便、編譯與目標(biāo)代碼運(yùn)行效率高、操作簡(jiǎn)便、使用靈活等許多鮮明的特點(diǎn),其擴(kuò)充的圖形、彩色、窗口等功能及高效的集成開(kāi)發(fā)環(huán)境尤其贏得了廣大用戶的喜愛(ài),得到了廣泛應(yīng)用。<br/>本書全面介紹C語(yǔ)言的概念、特性和結(jié)構(gòu)化程序設(shè)計(jì)方法。全書共分13章。第1章介紹C語(yǔ)言程序設(shè)計(jì)的基本知識(shí);第2章介紹C語(yǔ)言的基本數(shù)據(jù)類型、常量和變量;第3章介紹C語(yǔ)言的運(yùn)算符與表達(dá)式;第4章、第5章、第6章介紹使用C語(yǔ)言進(jìn)行結(jié)構(gòu)化程序設(shè)計(jì)的基本方法,包括順序結(jié)構(gòu)、分支結(jié)構(gòu)、循環(huán)結(jié)構(gòu)及其設(shè)計(jì)方法;第7章、第8章介紹C語(yǔ)言中數(shù)組和函數(shù)的使用;第9章、第10章介紹編譯預(yù)處理、指針;第11章詳細(xì)介紹結(jié)構(gòu)體、共用體;第12章介紹C語(yǔ)言的文件操作;第13章介紹位運(yùn)算。附錄A提供10個(gè)實(shí)驗(yàn)內(nèi)容及VC 2010版C語(yǔ)言編程環(huán)境的使用方法(全國(guó)計(jì)算機(jī)等級(jí)考試使用該環(huán)境,方便考生參加計(jì)算機(jī)等級(jí)考試);附錄B介紹全國(guó)計(jì)算機(jī)二級(jí)考試公共基礎(chǔ)知識(shí)要點(diǎn);附錄C介紹C語(yǔ)言庫(kù)函數(shù);附錄D介紹字符的ASCII碼表。<br/>需要說(shuō)明的是,由于C語(yǔ)言課程的學(xué)時(shí)較少,書中加星號(hào)的章節(jié),請(qǐng)讀者自學(xué)。<br/>本書是作者根據(jù)多年來(lái)從事C語(yǔ)言及計(jì)算機(jī)專業(yè)相關(guān)課程的教學(xué)實(shí)踐,在多次編寫講義、教材的基礎(chǔ)上編寫而成的,內(nèi)容充實(shí),循序漸進(jìn),選材上注重系統(tǒng)性、先進(jìn)性、實(shí)用性。全書精選大量例題,且都用漢字注釋,所有例題均已上機(jī)通過(guò),可直接引用;書中的例題提供了非常直觀的操作和運(yùn)行結(jié)果,為C語(yǔ)言上機(jī)操作提供方便。<br/>本書由吉林建筑大學(xué)電氣與計(jì)算機(jī)學(xué)院郭秀娟、于全通擔(dān)任主編,王抵修擔(dān)任副主編。在本書的寫作過(guò)程中,得到了多位一線授課教師的大力支持和幫助,在此表示衷心感謝。<br/>由于作者水平有限,加之時(shí)間倉(cāng)促,書中錯(cuò)誤和不當(dāng)之處在所難免,敬請(qǐng)讀者批評(píng)指正。<br/><br/><br/>編者 <br/>2019年3月 <br/>
郭秀娟,女,吉林建筑大學(xué)教授,本科畢業(yè)于長(zhǎng)春地質(zhì)學(xué)院應(yīng)用地球物理系,博士畢業(yè)于吉林大學(xué)地球探測(cè)與信息技術(shù)學(xué)院,長(zhǎng)期從事計(jì)算機(jī)專業(yè)的教學(xué)與研究工作。
目 錄<br/>第1章 C語(yǔ)言概述1<br/>1.1 C語(yǔ)言的發(fā)展與特點(diǎn)1<br/>1.1.1 C語(yǔ)言的發(fā)展1<br/>1.1.2 C語(yǔ)言的特點(diǎn)2<br/>1.2 C語(yǔ)言的字符集與標(biāo)識(shí)符3<br/>1.3 程序舉例4<br/>1.4 本章小結(jié)7<br/>習(xí)題8<br/>第2章 C語(yǔ)言數(shù)據(jù)類型9<br/>2.1 數(shù)據(jù)類型9<br/>2.2 常量9<br/>2.2.1 整型常量9<br/>2.2.2 實(shí)型常量10<br/>2.2.3 字符常量11<br/>2.2.4 字符串常量12<br/>2.2.5 符號(hào)常量13<br/>2.3 變量13<br/>2.3.1 整型變量14<br/>2.3.2 實(shí)型變量17<br/>2.3.3 字符變量18<br/>2.3.4 變量賦初值20<br/>2.4 本章小結(jié)20<br/>習(xí)題21<br/>第3章 C語(yǔ)言的運(yùn)算符與表達(dá)式22<br/>3.1 C運(yùn)算符簡(jiǎn)介22<br/>3.1.1 C運(yùn)算符的種類22<br/>3.1.2 C語(yǔ)言運(yùn)算符的優(yōu)先級(jí)及結(jié)合性23<br/>3.2 算術(shù)運(yùn)算24<br/>3.2.1 算術(shù)運(yùn)算符24<br/>3.2.2 自增、自減運(yùn)算符25<br/>3.3 不同類型數(shù)據(jù)間的混合運(yùn)算與類型轉(zhuǎn)換27<br/>3.4 賦值運(yùn)算符和賦值表達(dá)式29<br/>3.5 逗號(hào)運(yùn)算符和逗號(hào)表達(dá)式31<br/>3.6 本章小結(jié)31<br/>習(xí)題32<br/>第4章 順序結(jié)構(gòu)程序設(shè)計(jì)33<br/>4.1 C程序中的語(yǔ)句33<br/>4.2 賦值語(yǔ)句35<br/>4.3 數(shù)據(jù)的輸入/輸出36<br/>4.3.1 字符數(shù)據(jù)的輸入/輸出36<br/>4.3.2 格式輸出函數(shù)38<br/>4.3.3 格式輸入函數(shù)41<br/>4.4 程序舉例46<br/>4.5 本章小結(jié)48<br/>習(xí)題48<br/>第5章 分支結(jié)構(gòu)程序設(shè)計(jì)50<br/>5.1 關(guān)系運(yùn)算符和表達(dá)式50<br/>5.1.1 關(guān)系運(yùn)算符及其優(yōu)先次序50<br/>5.1.2 關(guān)系表達(dá)式50<br/>5.2 邏輯運(yùn)算符和表達(dá)式51<br/>5.2.1 邏輯運(yùn)算符及其優(yōu)先次序51<br/>5.2.2 邏輯運(yùn)算的值52<br/>5.2.3 邏輯表達(dá)式52<br/>5.3 if語(yǔ)句53<br/>5.3.1 if語(yǔ)句的三種基本形式53<br/>5.3.2 if語(yǔ)句的嵌套57<br/>5.3.3 條件運(yùn)算符和條件表達(dá)式59<br/>5.4 switch語(yǔ)句60<br/>5.5 程序舉例62<br/>5.6 本章小結(jié)64<br/>習(xí)題64<br/>第6章 循環(huán)結(jié)構(gòu)程序設(shè)計(jì)66<br/>6.1 while語(yǔ)句66<br/>6.2 do-while語(yǔ)句68<br/>6.3 for語(yǔ)句70<br/>6.4 循環(huán)的嵌套72<br/>6.5 break和continue語(yǔ)句74<br/>6.5.1 break語(yǔ)句74<br/>6.5.2 continue語(yǔ)句74<br/>6.6 程序舉例76<br/>6.7 本章小結(jié)78<br/>習(xí)題78<br/>第7章 數(shù)組82<br/>7.1 一維數(shù)組82<br/>7.1.1 一維數(shù)組的定義及初始化83<br/>7.1.2 一維數(shù)組元素的引用85<br/>7.1.3 一維數(shù)組程序舉例86<br/>7.2 二維數(shù)組88<br/>7.2.1 二維數(shù)組的定義及初始化88<br/>7.2.2 二維數(shù)組元素的引用90<br/>7.2.3 二維數(shù)組程序舉例90<br/>7.3 字符數(shù)組91<br/>7.3.1 字符數(shù)組的定義及初始化91<br/>7.3.2 字符數(shù)組的引用92<br/>7.3.3 字符串和字符串結(jié)束標(biāo)志92<br/>7.3.4 字符數(shù)組的輸入/輸出93<br/>7.3.5 字符串處理函數(shù)94<br/>7.4 程序舉例97<br/>7.5 本章小結(jié)102<br/>習(xí)題102<br/>第8章 函數(shù)104<br/>8.1 概述104<br/>8.2 函數(shù)定義的一般形式105<br/>8.3 函數(shù)參數(shù)與函數(shù)值107<br/>8.3.1 形參變量和實(shí)際參數(shù)107<br/>8.3.2 函數(shù)的返回值108<br/>8.4 函數(shù)的調(diào)用109<br/>8.4.1 函數(shù)調(diào)用的一般形式109<br/>8.4.2 函數(shù)調(diào)用的方式109<br/>8.4.3 函數(shù)調(diào)用的聲明110<br/>8.4.4 函數(shù)的嵌套調(diào)用111<br/>8.4.5 函數(shù)的遞歸調(diào)用113<br/>8.5 數(shù)組作為函數(shù)參數(shù)*114<br/>8.6 變量的作用域119<br/>8.6.1 局部變量119<br/>8.6.2 全局變量121<br/>8.7 變量的存儲(chǔ)類型*122<br/>8.7.1 變量的靜態(tài)和動(dòng)態(tài)存儲(chǔ)方式122<br/>8.7.2 局部變量的存儲(chǔ)類型123<br/>8.7.3 全局變量的存儲(chǔ)類型124<br/>8.8 內(nèi)部函數(shù)與外部函數(shù)*126<br/>8.9 本章小結(jié)126<br/>習(xí)題127<br/>第9章 預(yù)處理命令*129<br/>9.1 概述129<br/>9.2 宏定義129<br/>9.2.1 無(wú)參宏定義129<br/>9.2.2 帶參宏定義132<br/>9.3 文件包含134<br/>9.4 條件編譯135<br/>9.5 本章小結(jié)137<br/>習(xí)題137<br/>第10章 指針*140<br/>10.1 地址和指針的基本概念140<br/>10.1.1 指針變量的定義與初始化141<br/>10.1.2 指針運(yùn)算143<br/>10.1.3 多級(jí)指針147<br/>10.2 指針與函數(shù)148<br/>10.2.1 指針作為函數(shù)參數(shù)148<br/>10.2.2 指針函數(shù)151<br/>10.2.3 指向函數(shù)的指針152<br/>10.3 指針與數(shù)組155<br/>10.3.1 指向一維數(shù)組的指針156<br/>10.3.2 二維數(shù)組與多維數(shù)組的指針表示法159<br/>10.4 指針與字符串164<br/>10.4.1 字符串的指針表示法164<br/>10.4.2 字符串?dāng)?shù)組167<br/>10.5 指針數(shù)組與命令行參數(shù)167<br/>10.5.1 指針數(shù)組167<br/>10.5.2 指針數(shù)組與命令行參數(shù)169<br/>10.6 程序舉例171<br/>10.7 本章小結(jié)175<br/>習(xí)題176<br/>第11章 結(jié)構(gòu)體與共用體*178<br/>11.1 定義一個(gè)結(jié)構(gòu)的一般形式178<br/>11.2 結(jié)構(gòu)類型變量的說(shuō)明178<br/>11.3 結(jié)構(gòu)變量成員的表示方法181<br/>11.4 結(jié)構(gòu)變量的賦值181<br/>11.5 結(jié)構(gòu)變量的初始化182<br/>11.6 結(jié)構(gòu)數(shù)組的定義182<br/>11.7 結(jié)構(gòu)指針變量的說(shuō)明和使用185<br/>11.7.1 指向結(jié)構(gòu)變量的指針185<br/>11.7.2 指向結(jié)構(gòu)數(shù)組的指針187<br/>11.7.3 結(jié)構(gòu)指針變量作為函數(shù)參數(shù)188<br/>11.8 動(dòng)態(tài)存儲(chǔ)分配189<br/>11.9 鏈表的概念191<br/>11.10 枚舉類型193<br/>11.10.1 枚舉類型的定義和枚舉變量的說(shuō)明193<br/>11.10.2 枚舉類型變量的賦值和使用194<br/>11.11 類型定義符typedef195<br/>11.12 本章小結(jié)196<br/>習(xí)題197<br/>第12章 文件*199<br/>12.1 C文件概述199<br/>12.2 文件指針199<br/>12.3 文件的打開(kāi)與關(guān)閉200<br/>12.3.1 文件的打開(kāi)(fopen函數(shù))200<br/>12.3.2 文件關(guān)閉函數(shù)(fclose函數(shù))202<br/>12.4 文件的讀寫202<br/>12.4.1 字符讀寫函數(shù)fgetc和fputc202<br/>12.4.2 字符串讀寫函數(shù)fgets和fputs205<br/>12.4.3 數(shù)據(jù)塊讀寫函數(shù)fread和fwtrite207<br/>12.4.4 格式化讀寫函數(shù)fscanf和fprintf208<br/>12.5 文件的隨機(jī)讀寫209<br/>12.5.1 文件定位210<br/>12.5.2 文件的隨機(jī)讀寫210<br/>12.6 文件檢測(cè)函數(shù)211<br/>12.6.1 文件結(jié)束檢測(cè)函數(shù)feof211<br/>12.6.2 讀寫文件出錯(cuò)檢測(cè)函數(shù)ferror211<br/>12.6.3 文件出錯(cuò)標(biāo)志和文件結(jié)束標(biāo)志置0函數(shù)clearerr211<br/>12.7 本章小結(jié)212<br/>習(xí)題212<br/>第13章 位運(yùn)算*213<br/>13.1 位運(yùn)算符213<br/>13.1.1 按位與運(yùn)算213<br/>13.1.2 按位或運(yùn)算214<br/>13.1.3 按位異或運(yùn)算214<br/>13.1.4 按位取反運(yùn)算215<br/>13.1.5 左移運(yùn)算215<br/>13.1.6 右移運(yùn)算215<br/>13.2 位域(位段)216<br/>13.3 本章小結(jié)219<br/>習(xí)題219<br/>附錄A C語(yǔ)言上機(jī)實(shí)驗(yàn)及作業(yè)220<br/>附錄B 全國(guó)計(jì)算機(jī)二級(jí)考試公共基礎(chǔ)知識(shí)要點(diǎn)259<br/>附錄C C語(yǔ)言庫(kù)函數(shù)287<br/>附錄D 字符的ASCII碼表292<br/>參考文獻(xiàn)293<br/><br/><br/>