《C程序設計教程(第2版)》課后習題_第1頁
《C程序設計教程(第2版)》課后習題_第2頁
《C程序設計教程(第2版)》課后習題_第3頁
《C程序設計教程(第2版)》課后習題_第4頁
《C程序設計教程(第2版)》課后習題_第5頁
已閱讀5頁,還剩7頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、第 章C+言簡介修改例 Hello World!程序其夠在計算機屏幕上顯示 am a I like 修改例 加法計算器程序,編寫一個乘法計算器程序。修改例 生日卡程序,使其能夠輸入和顯示日期。參考例 使用梯形法計算下式定積分的值。1 x x ) dx其中積分區(qū)域等分數(shù)可取為 200,并將計算結果和手算結果相比. 提示:e 用準數(shù)學函數(shù)庫 cmath 中的庫函數(shù) (x表示。 仿照例 ,編寫一個計算矩形面積的程序。第 章基本數(shù)據(jù)類型 為 加數(shù)據(jù)檢驗部分。給出三邊長,檢驗其是否能構成一個三角形的方法是 檢查是否任意兩邊和均大于第三邊。如果檢驗不合格,輸出信“Error Data! 輸兩個角度值 xy

2、,計算如下式子的值 x | y cos(| y 編一個程,要求完成以下要求:提示用戶輸入任意的 小數(shù);顯示這三個小數(shù);將這三個小數(shù)相加,并顯示其結果; 將結果按四舍五入方法轉換成整數(shù)并顯示。 從盤輸入任意個整然后輸出這三個數(shù)并計算其平均值。 編一個程序,字符串”譯成密碼,譯碼方法采用替換加密法,其加密規(guī) 則是:將原來的字母用字母表中其面的第 3 個字母的來替換字母 就 f 來 換,字母 y 來替換。提示:分別用 個符變量存L、ov和,利用 ASCII 表字母的列關系, 按照譯碼方法對各個變量進行運算后輸出即.0 1 n n n0 1 n n n第 3 章 制結構 編寫計算階乘 的程序。 計算

3、!+3!+4!。 .+1010i i ! 編寫程序求斐波那契數(shù)列的第 n 項前 項之和。斐波那契數(shù)列是形如 , , 1, 2, 3, 5, , 。.其通項為F ;F ;F F +F . 編程求x 1 (2n)! x 2 n arcsin x ( n!) n 其中 。提示:結束條件可用 u 其 u 通項,為預先給定的精度要求. 用牛頓迭代法求方程2x34x十 3x 60 在 1。 近的根。提示迭代公式xn x nf ( )n f ( x )n結束迭代過程的條件(f ( xn ) )與(n n)同時成,中 為先給定的精度要求。 求解猴子吃桃問.猴子在第一天摘下若干個桃子即吃了一半又覺不過癮于 是就

4、多吃了一個。以后每天如此,到第1 天想吃時發(fā)現(xiàn)就只剩下了一個桃子.編程計 算第一天猴子摘的桃子個數(shù)。 編寫一個程序用戶輸入的幾個整數(shù)中的最小并假定用戶輸入的第一個數(shù)值指定 后面要輸入的數(shù)值個數(shù)例當戶輸入數(shù)列為: 5 20 15 300 9 時程序應該能夠 找到最小數(shù) 9 有一分數(shù)序列2 3 5 , , , , ,.1 2 5 13(即后一項的分母為前一項的分子,后項的分子為前一項分子與分母之和前 n 項 和。 求 。 .。 個中 為 19 之的整數(shù)。例如:當 a = n 3 時求 1+11+111 和;當 = , n = 7 ,求 5 之。10. 猜數(shù)由系統(tǒng)隨機給出個數(shù)字(即幻,讓游戲者猜,如

5、果猜則打印成功 5 提示;否則,打印出錯提示,并提游戲者選擇下一步動作,最多可以猜 次。 第 4 章 組與字符串使用數(shù)組來求斐波那挈數(shù)列的第 項前 項之和。編寫程序將 4 階方陣轉置,如下所。 9 3 1 16 8 5 16 7 15 轉置前方陣 A轉置后方陣 A使用數(shù)組編寫一個統(tǒng)計學生課程平均分的程序:輸入 個學生的學號和 3 門程的成(整數(shù)形式計每個學生 門課程的平均分(整 數(shù)形式后出統(tǒng)計結果輸出格式:學高英體平分- - - - - - - - - - 。 編寫一個程序,要求用戶輸入一個十進制正整數(shù),然后分別轉換為二進制數(shù)、八進制 數(shù)和十六進制數(shù)輸出.輸入 個符到一維字符數(shù)組 中將字符串置

6、. s0與 互換,與互 換 5換,出置逆后的數(shù)組 s。替換加密(愷撒加密法):加密規(guī)則是:將原來的小寫字母用字母表中其后面的第 3 個母的大寫形式來替,大 寫字母按同樣規(guī)則用小寫字母替換對于字母表中最后的三個字母,可將字母表看成是首未 銜接的如字母 c 就用 來換字母 用 B 來換。請將字符串I ”譯成第 章函數(shù)編寫字符串反轉函數(shù) ( ),函數(shù)的功能為將指定字符串中的字符順序 倒排列。然后再編寫主函數(shù)驗證之。函數(shù)聲明為:void (char )該函數(shù)無需返回值。提示:求字符串長度可以直接調(diào)用庫函數(shù)strlen ( 但在程序首部應加上 includecstring編寫一組求數(shù)組中最大最小元素的函

7、數(shù)。該組函數(shù)的原型為int ( , int count); int imin(int , int count/ 求整型數(shù)組的最大元素 / 求整型數(shù)組的最小元素其中參數(shù) count 為考察的數(shù)組中的元素個,函的返回值即為求得的最大或最小元素之 值。要求同時編寫出主函數(shù)進行驗證。編寫函數(shù) isprime(int a用來判斷變量 a 是為素數(shù),若是素數(shù),函數(shù)返回 1否則返回 。調(diào)用該函數(shù)找出任意給定的 n 個數(shù)中的素數(shù)。打印出以下的楊輝三角形(要求打印出 行) 1 2 3 4 1 5 10 5 1 提示:打印楊輝三角形有兩種方法: ) 楊 輝 三 角 形 表 現(xiàn) 的 是 二 式( )n的 展 開 式

8、 的 系 數(shù) 例 如 ,(a )2a2 ab 2 故輝三角的第三行(對應 )為 2 一般地,二項 ) 的展開式為0na n b01na n 1 na n b nna 0 bn其中第 C m nn m!( )!。)可直接根據(jù)楊輝三角形的形式來推出每項的值。由下面的楊輝三角形可以看出, 輝三角形每行的第一個數(shù)和最后一個數(shù)均為 1一外,行中間的各數(shù)等于上一行位于該數(shù)左上方和正上方的兩數(shù)之和,即n Cn n。用弦截法求一元方程f ( x 0在區(qū)間 x0 1。提示考當區(qū)間 x0 1足夠小在區(qū)間中方程f ( x) 0僅有一個單根的情況如下圖所示。2 2 2 2 1 0 2 2 2 0 2 2 0 0 2

9、2 1 12 2 2 2 1 0 2 2 2 0 2 2 0 0 2 2 1 1此時如f ( x ) f ( x ) 1圖 弦截法求方程的解異號則可用兩點間直線公式求出 : x 1f ( x ) f ( x ) 1f ( x )然后用 x 代原式求出 )斷 f ) 和 f )的哪一個同號用 和 f(x ) 代替之,即如果 ( )和 f(x 同號,就用 x 和 ( )代替 x 和 f( 之用 和 f ) 代替 x 和 f( ),然后再繼續(xù)上述過程直(x)小給定的誤差控制.第 章指針使用指針編寫一個對整型數(shù)組進行排序的函,排序方法使用例 46 的換排序法(冒 泡排序法。編寫程,將某一個輸入的位數(shù)不

10、確定的正整按照標準的三位分節(jié)格式輸出,例如,當 用戶輸入 時程序應該輸出 82,668,。編寫程序,把 個整數(shù) 1、10 賦某個 int 型組,然后用 int 型針輸出該數(shù) 組元素的值。用指針編寫一個程序,當輸入一個字符串后,要求不僅能夠統(tǒng)計其中字符的個數(shù)還能 分別指出其中大、小寫字母、數(shù)字以及其他字符的個數(shù)。提示要輸入包含空格的字符串借助輸入流對象的 成函數(shù) cin(str ; 語句就能將從鍵盤輸入的前 99 字可出現(xiàn)在其中的任意個)存入到字符數(shù)組 中去,若用戶輸入字符數(shù)少于 99則以回車換行表示輸入結束。編寫一個函數(shù), 用于將一個字符串轉換為整型數(shù)值。其原型:int atoi( *stri

11、ng);其中參數(shù) 為轉換的字符串(其中包括正、負號和數(shù)字值為轉換結 編寫一個函數(shù),用于生成一個空白字符,其原型為: *mystrspc(char int n);其中參數(shù) 為字符串 為白字符串的長度 空格符的個數(shù)為指向 string 的指針。第 7 章函數(shù)與指針使用遞歸算法編寫如下程:對于任意給定的實數(shù) X 和數(shù) ,計算 X Ackermann 函 (,)由以下遞歸定義:ack( )=n+1ack( 0)=ack(m 1, n(, ack(m, n-1) 編寫一個計算此函數(shù)的遞歸程序。其中 使用遞歸算法編寫求斐波那契數(shù)列的第 n 的函數(shù),并編出主函數(shù)進行驗證。編一個求立方函數(shù) cube并重載它之

12、可以對輸入的整型量和實型量數(shù)值求立方。 重載判斷兩個數(shù)值大小的函數(shù) max這些數(shù)值可能是整型數(shù)、實型數(shù)和字符型,函數(shù)的 返回值為兩個數(shù)值中的最大值。編寫一個函數(shù),用于去掉字符串尾部的空格符,其原型為: 其中參數(shù) 為字符串,返回值為指向 string 的指針。編寫一個函數(shù),用于去掉字符串前面的空格,其原型為: ( )其中參數(shù) 為字符串,返回值為指向 string 的針編寫一個程序當輸入一個整數(shù)以后,可以轉成相應的英文單詞輸出。如 轉換成 hundred twenty 。 用牛法或者分法編寫一個求方程 (x)=0 在a,b中實根的函, 其型為: (func) a, , double eps 其中參

13、數(shù) 和 b 分為根函數(shù)和區(qū)間兩端, eps 為精度。第 章結構化設計方輸入某小組 5 個的名、性別、出生年份等信息,統(tǒng)計男女人數(shù)以1988 以后(含 年)出生的人數(shù)。定義一個名為 Circle()的結構體其數(shù)據(jù)成員是圓的外接矩形的左上角和右下角兩點的 坐標,計算該圓的面積。讀入 個戶的姓名和電話號碼,按姓名的字典順序排列后,輸出每個用戶的姓名和電 話號碼口袋中有紅、黃、藍、白、黑五種顏色的小球若干個。如果每次都從口袋中取出 個不 同顏色的小球共多少種組合打印出每種組合的 種顏色要求使用枚舉類型表示 小球的顏色.用自頂向下、逐步求精的程序設計方法找出 210000 之內(nèi)的所有完全數(shù)(所謂完全數(shù),

14、 即其各因子之和正好等于本身的數(shù)。如 ,所以 , 都完全數(shù))第 章類和對象)定義一個 Dog 類,包含 name、weight 等性以及對這些屬性操作的方法。實 現(xiàn)并測試這個類.設計并測試一個名為 Ellipse 的圓類,屬性為外接矩形的左上角與右下角兩個點的坐 標,并能計算出橢圓的面仿照 類計一個 Time 類按各種可能的格式輸出時間。第 類和對象(2定義一個 Dog 類包含 name、sexweight 屬性,設計一個構造函數(shù),可以對這 些屬性進行初始化。實現(xiàn)并測試這個類。計測試一個名為 Ellipse 的圓類屬為其圓心坐標以及半長軸和半短軸的長度。 設計一個構造函數(shù)對這些屬性進行初始化,

15、并通過成員函數(shù)計算出橢圓的面積。仿照 Date 類計一個 Time 類設計多個重載的構造函數(shù),可以設置時間、進行時間的 加減運算、按各種可能的格式輸出時間。合并 Date 類 Time 類一個 DateAndTime ,修改相應的成員函數(shù),當時間遞增到新 的一天時,應能夠修改日期值。第 章繼承從類 中派生出一個教師類,新增的屬性有:專業(yè)、職稱和主講課程(一 為這些屬性定義相應的方許多研究生既有學生的屬性,又有教師的屬性。試通過多重繼承說明一個研究生。 修改例 115從 類中派生出一個 類. 類增一個數(shù)據(jù)成員 EndPoint,算 線的長度。試比較一下與直接使用 Point 類構造 類不同之.從

16、 Date 類 Time 類派生一個 DateAndTime 類修改相應的成員數(shù),當時間遞增到新 的一天時,應能夠修改日期值第 多態(tài)性定一個類 Base類含有虛函數(shù) 后定義它的兩個派生類 FirstB SecondB, 這兩個派生類均含有公有成員函數(shù) display程中指向基類 的指針變量 , 并分別定義 、FirstBSecondB 的象 、, ptr 分指向 b1、s1 起始 地址,然后執(zhí)行這些對象的成員函數(shù) 。擴充例 ,從中派生出一個正方形類和圓柱體類,寫一個測試程序,輸出正方形的面 積和圓柱體的體積。提示:正方形數(shù)據(jù)成員:一個頂點和邊長;圓柱體數(shù)據(jù)成:圓和高擴充實例編程中的日期類, 類

17、加一個成員函數(shù),可以判斷一個日期是否是系統(tǒng) 當前日期.鍵盤輸入你的生日,如果今天是你的生日則顯:“Happy Birthday!否則顯示 “還有 xx 天你的生日“你的生日已經(jīng)過去了 天明年的生日要再等 yy ”.第 模板與異常處編寫一個求絕對值的函數(shù)模板并測試。請將例 的冒泡排序法改寫成為模板函數(shù)并編寫一個程序進行測試。 例 中定義的通用棧類實際上是不完善的,如無法根據(jù)用戶需求改變棧 的大小沒有提供棧滿溢出無法壓入和空棧無法彈出提示等,請改進該程序。 中數(shù)組類型比較簡,的下標只能從 開始沒有負數(shù)下標,而且沒有數(shù) 組越界檢查。請用類模板設計一個 newArray 類,該類的對象可以是整型、浮點

18、 型、字符型等任何元素類型的數(shù)組,而且當訪問數(shù)組成員如果下標越界,程 序可以報錯并終止。如下是一些例:newArray int A1(3) /同傳統(tǒng)類型的型數(shù)組/包含 個元素的浮點型數(shù)組員 A2-2 1, newArray float A2(-2, 3)請編寫一個測試程序。例 5-1 給出的求階乘 n!的函數(shù)當戶的輸入太大時(如 50),會出現(xiàn)錯誤,請 編寫一個程序,使用異常處理機制來解決這一問.第 章標準庫和輸入出流編寫一個程序,分別用不同的域寬)打印出整數(shù) 12345 和點數(shù) 。察當 域寬小于數(shù)值的實際需要的域寬時會發(fā)生什么情.編寫一個程序,將華氏溫度 0 度 度換為浮點型攝氏溫浮點數(shù)精度為 。轉換 公式如下: 5.0 / 9。0 * (Fahrenheit

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論