《C語言程序設計習題解答及上機指導/普通高等學校計算機類規(guī)劃教材》以問題為驅(qū)動引領(lǐng)學生進入問題的研究性學習,以算法設計思路為主線,重點放在解決問題能力的培養(yǎng)上,包含理論和實驗教學內(nèi)容,敘述通俗易懂的C語言程序設計知識,將程序設計理論和實踐有機結(jié)合起來。以問題為驅(qū)動引領(lǐng)學生進入問題的研究性學習,以算法設計思路為主線,重點放在解決問題能力的培養(yǎng)上,包含理論和實驗教學內(nèi)容,敘述通俗易懂的C語言程序設計知識,將程序設計理論和實踐有機結(jié)合起來。
更多科學出版社服務,請掃碼獲取。
目錄
前言
實驗指導篇
第1章 C語言程序開發(fā)環(huán)境 2
1.1 運行C語言程序的步驟 2
1.2 運行C語言程序的方法 3
第2章 Visual C++ 6.0開發(fā)環(huán)境介紹 5
2.1 常規(guī)使用 5
2.2 VC 6.0的項目設置簡介 10
2.3 常見問題 11
第3章 用C語言編寫程序 13
3.1 知識要點 13
3.2 數(shù)據(jù)類型與數(shù)據(jù)的輸入輸出 14
第4章 選擇結(jié)構(gòu) 16
4.1 知識要點 16
4.2 【實驗】選擇結(jié)構(gòu)應用 16
第5章 循環(huán)結(jié)構(gòu) 18
5.1 知識要點 18
5.2 【實驗】統(tǒng)計并輸出學生的總分和平均分(基礎(chǔ)類) 18
5.3 【實驗】正整數(shù)分解質(zhì)因數(shù)(基礎(chǔ)類) 19
5.4 【實驗】指定圖形的打印(提高類) 20
第6章 數(shù)據(jù)組織 22
6.1 知識要點 22
6.2 【實驗】數(shù)組定義及數(shù)組元素引用(基礎(chǔ)類) 24
6.3 【實驗】兩個字符串的連接(基礎(chǔ)類) 25
6.4 【實驗】計算 5位同學成績總分及平均分(基礎(chǔ)類) 26
6.5 【實驗】螺旋方陣(提高類) 28
第7章 函數(shù)初步 31
7.1 知識要點 31
7.2 【實驗】用函數(shù)實現(xiàn)從 3個數(shù)中找出最大數(shù)(基礎(chǔ)類) 33
7.3 【實驗】用函數(shù)實現(xiàn)判斷一個數(shù)是否為素數(shù)(基礎(chǔ)類) 34
7.4 【實驗】用函數(shù)實現(xiàn)一個十進制數(shù)轉(zhuǎn)換二進制數(shù)(基礎(chǔ)類) 36
7.5 【實驗】靜態(tài)變量、全局變量的使用(基礎(chǔ)類) 37
7.6 【實驗】用函數(shù)實現(xiàn)學生成績管理(提高類) 38
第8章 指針初步 41
8.1 知識要點 41
8.2 【實驗】實現(xiàn)三者排序的swap函數(shù)設計(基礎(chǔ)類) 42
8.3 【實驗】兩端進行的冒泡排序法(基礎(chǔ)類) 43
8.4 【實驗】矩陣的操作基礎(chǔ)(基礎(chǔ)類) 45
8.5 【實驗】矩陣的操作進階(提高類) 47
8.6 【實驗】利用指針操作字符串(提高類) 48
第9章 函數(shù)與程序結(jié)構(gòu) 50
9.1 知識要點 50
9.2 【實驗】設計函數(shù)完成計算(基礎(chǔ)類) 52
9.3 【實驗】編程實現(xiàn)求F=(n+m)!+n!(基礎(chǔ)類) 53
9.4 【實驗】用函數(shù)實現(xiàn)mn(基礎(chǔ)類) 54
9.5 【實驗】編譯預處理(基礎(chǔ)類) 55
9.6 【實驗】多文件程序的編譯與連接(提高類) 56
第10章 動態(tài)數(shù)據(jù)組織 59
10.1 知識要點 59
10.2 【實驗】通訊錄管理程序設計(基礎(chǔ)類) 61
第11章 文件 68
11.1 相關(guān)知識 68
11.2 【實驗】模擬命令提示符下的type命令(基礎(chǔ)類) 69
11.3 【實驗】將字符信息寫入磁盤(基礎(chǔ)類) 71
11.4 【實驗】結(jié)構(gòu)體信息的讀寫(基礎(chǔ)類) 72
11.5 【實驗】隨機文件的讀寫(提高類) 74
第12章 指針進階 76
12.1 知識要點 76
12.2 【實驗】姓名排序(基礎(chǔ)類) 77
12.3 【實驗】函數(shù)指針數(shù)組應用(提高類) 79
第13章 位運算 81
13.1 知識要點 81
13.2 【實驗】將特定位翻轉(zhuǎn)(基礎(chǔ)類) 82
13.3 【實驗】保留數(shù)中高位,清零其他位(基礎(chǔ)類) 84
13.4 【實驗】判斷一個數(shù)的特定位是 1還是 0(提高類) 84
第14章 綜合程序設計 86
14.1 學生成績管理系統(tǒng) 86
14.2 圖書信息管理系統(tǒng) 99
14.3 設計題目參考 110
習題解答篇
第1章 緒論 114
第2章 算法 119
第3章 用C語言編寫程序 126
第4章 選擇結(jié)構(gòu) 133
第5章 循環(huán)結(jié)構(gòu) 142
第6章 數(shù)據(jù)組織 152
第7章 函數(shù)初步 159
第8章 指針初步 170
第9章 函數(shù)與程序結(jié)構(gòu) 177
第10章 動態(tài)數(shù)據(jù)組織 187
第11章 文件 199
第12章 指針進階 209
第13章 位運算 219
全國計算機等級考試二級C語言資料篇
2014年計算機等級考試《二級C語言程序設計》測試卷(1) 228
2014年計算機等級考試《二級C語言程序設計》測試卷(1)答案及解析 238
2014年計算機等級考試《二級C語言程序設計》測試卷(2) 243
2014年計算機等級考試《二級C語言程序設計》測試卷(2)答案及解析 253
2014年計算機等級考試《二級C語言程序設計》測試卷(3) 258
2014年計算機等級考試《二級C語言程序設計》測試卷(3)答案及解析 267
參考文獻 272
《C語言程序設計習題解答及上機指導/普通高等學校計算機類規(guī)劃教材》:
第1章 C 語言程序開發(fā)環(huán)境
1.1 運行C 語言程序的步驟
C 語言是高級語言,用其編寫的源程序不能在計算機上直接運行,必須通過編譯程序?qū)⑵浞g為機器語言的程序。一個實際問題從分析到最后在計算機上順利運行,是一個包含一系列步驟的過程。該過程可簡單描述為:需求分析(Analysis)→設計(Design)→編碼(Coding)→編輯(Edit)→編譯(Compile)→連接(Link)→運行(Run)→調(diào)試(Debug)。該過程中的部分步驟在調(diào)試過程中可能需要反復進行,直到得到一個滿足需求分析的可執(zhí)行文件為止。圖1.1 直觀說明了C 程序的處理過程。其中“編輯”→ →得到“結(jié)果”主要涉及集成開發(fā)環(huán)境(IDE)的使用。
圖1.1 C 程序的處理過程示意圖
實線:表示處理的操作流程;虛線:表示處理過程中輸入輸出的文件
1.2 運行C 語言程序的方法
程序的集成開發(fā)環(huán)境(IDE)合成了編輯、處理、跟蹤、調(diào)試、執(zhí)行等各項功能,不同的程序設計語言都有各自的集成開發(fā)環(huán)境所支持。支持C 語言的環(huán)境很多,它們的區(qū)別主要在于使用的編譯系統(tǒng)不同。目前較流行的C 語言編譯系統(tǒng)主要有以下幾類:
(1)Borland Turbo C 或稱 Turbo C;
。2)Microsoft C 或稱 MS C;
(3)GNU Compiler Collection 或稱 GCC。
這些C 語言版本不僅實現(xiàn)了ANSI C 標準,而且在此基礎(chǔ)上各自作了一些擴充,使之更加方便、完美。
1.Turbo C
Turbo C 是美國Borland 公司的產(chǎn)品。Borland 公司是一家專門從事軟件開發(fā)、研制的大公司。該公司相繼推出了一套 Turbo 系列軟件,如Turbo BASIC、Turbo Pascal、Turbo Prolog,這些軟件很受用戶歡迎。該公司在1987 年首次推出Turbo C 1.0 產(chǎn)品,其中使用了全然一新的集成開發(fā)環(huán)境,即使用了一系列下拉式菜單,將文本編輯、程序編譯、連接以及程序運行一體化,大大方便了程序的開發(fā)。1988 年,Borland 公司又推出Turbo C 1.5 版本,增加了圖形庫和文本窗口函數(shù)庫等,而Turbo C 2.0 則是該公司1989 年出版的。Turbo C 2.0 在原來集成開發(fā)環(huán)境的基礎(chǔ)上增加了查錯功能,并可以在Tiny 模式下直接生成.COM (數(shù)據(jù)、代碼、堆棧處在同一64KB 內(nèi)存中)文件。還可對數(shù)學協(xié)處理器(支持8087/80287/80387 等)進行仿真。Turbo C 主要是基于DOS 環(huán)境的,也可以在Windows 平臺上使用,并且能與中文環(huán)境緊密集成。
Turbo C 2.0 是最經(jīng)典的C 語言編譯器,系統(tǒng)體積小,簡單易學,容易上手,而且很多前
人或書籍的程序均基于該編譯器,是學習C 語言的首選。不過它不支持鼠標,如果掌握幾個快捷鍵,操作時對鼠標可能就不怎么需要了。
Turbo C 3.0 是目前比較不錯的C/C++語言編譯器,支持鼠標,語法著色,多文檔,錯誤跟蹤也很好,操作與Turbo C 2.0 有很多類似。缺點是以前很多代碼是用Turbo C 2.0 設計的,而由于Turbo C 3.0 語法要求的嚴格性,如要求函數(shù)必須定義類型,所以向下存在一定的兼容性問題。
2.Microsoft C/C++ 或 MS Visual C/C++
Microsoft Visual C++是Microsoft 公司推出的Win 32 環(huán)境程序,面向?qū)ο蟮目梢暬删幊滔到y(tǒng)。它不但具有程序框架自動生成、靈活方便的類管理、代碼編寫和界面設計集成交互操作、可開發(fā)多種程序等優(yōu)點,而且通過簡單的設置就可使其生成的程序框架支持數(shù)據(jù)庫接口、OLE2、WinSock 網(wǎng)絡、3D 控制界面。
它以擁有“語法高亮”,IntelliSense(自動完成功能)以及高級除錯功能而著稱。比如,它允許用戶進行遠程調(diào)試,單步執(zhí)行等。還允許用戶在調(diào)試期間重新編譯被修改的代碼,而不必重新啟動正在調(diào)試的程序。其編譯系統(tǒng)以預編譯頭文件、最小重建功能及累加連接著稱。這些特征明顯縮短程序編輯、編譯及連接花費的時間,在大型軟件開發(fā)上表現(xiàn)尤其顯著。
自Microsoft Visual C++ 1.0 推出后,到現(xiàn)在已經(jīng)更新了若干版本,雖然后來MicrosoftVisual C++被整合在Visual Studio 之中,但仍可單獨安裝使用。其中Microsoft Visual C++ 6.0是很受歡迎的一版C/C++語言編譯器,它包含強大的類和內(nèi)嵌Win API 的MFC,具有可視化的編程界面,向下兼容Turbo C,是作為C 語言過渡到Windows 平臺編程的首選工具。
3.GNU Compiler Collection 或稱GCC
GCC(GNU Compiler Collection,GNU 編譯器集合),是一套由 GNU 開發(fā)的編程語言編譯器。它是一套GNU 編譯器套裝,以GPL 許可證所發(fā)行的自由軟件,也是 GNU 計劃的關(guān)鍵部分。GCC 原本作為GNU 操作系統(tǒng)的官方編譯器,現(xiàn)已被大多數(shù)類Unix 操作系統(tǒng)(如Linux、BSD、Mac OS X 等)采納為標準的編譯器。GCC 在微軟Windows 下的移植版本叫MinGW。
GCC 原名為 GNU C 語言編譯器(GNU C Compiler),因為它原本只能處理 C 語言。GCC很快地擴展,變得可處理 C++,之后被擴展可處理 Fortran、Pascal、Objective-C、Java、Ada等其他語言。
事實上,選用何種編譯系統(tǒng)都不是很重要的問題,主要是能否滿足自己的軟件開發(fā)需求,因為不同的編譯系統(tǒng),對同一程序的編譯結(jié)果可能會有些差異。
第2 章 Visual C++ 6.0 開發(fā)環(huán)境介紹
Visual C++ 6.0 為用戶開發(fā)C 程序提供了一個集成環(huán)境,這個集成環(huán)境包括:源程序的輸入和編輯,源程序的編譯和連接,程序運行時的調(diào)試和跟蹤,項目的自動管理,為程序的開發(fā)提供各種工具,并具有窗口管理和聯(lián)機幫助等功能。
使用Visual C++ 6.0 集成環(huán)境上機調(diào)試程序可分成如下幾個步驟:啟動Visual C++ 6.0 集成環(huán)境;生成項目;生成和編輯源程序,把一個或多個源程序送到各自的文件中;將源程序文件加入到項目中;根據(jù)需要改變項目的設置;最后編輯、連接和運行程序。下面詳細介紹一下Visual C++ 6.0 的上機操作方法。
2.1 常規(guī)使用
2.1.1 啟動Visual C++ 6.0
當在桌面上建立了VC++ 6.0 圖標后,可通過鼠標雙擊該圖標啟動VC++ 6.0;若沒有建立相應的圖標,則可以通過菜單方式啟動VC++ 6.0,即單擊“開始”菜單,選擇“程序”→Microsoft Visual Studio 6.0→Microsoft Visual C++ 6.0 啟動VC++ 6.0。VC++啟動成功后,產(chǎn)生如圖2.1 所示的VC++ 6.0 集成環(huán)境。
圖2.1 VC++ 6.0 集成環(huán)境
VC++ 6.0 集成環(huán)境是一個組合窗口。窗口的第1 部分為標題欄;第2 部分為菜單欄,其中包括File(文件)、Edit(編輯)、View(視圖)、Insert(插入)、Project(項目)、Build(編譯、連接和運行)、Tools(工具)、Windows(窗口)、Help(幫助)等菜單。第3 部分為工具欄,其中包括常用的工具按鈕;第4 部分為狀態(tài)欄。還有幾個子窗口。
……