199-8-2計算機(jī)程序計-綜合程序設(shè)計1.ppt_第1頁
199-8-2計算機(jī)程序計-綜合程序設(shè)計1.ppt_第2頁
199-8-2計算機(jī)程序計-綜合程序設(shè)計1.ppt_第3頁
199-8-2計算機(jī)程序計-綜合程序設(shè)計1.ppt_第4頁
199-8-2計算機(jī)程序計-綜合程序設(shè)計1.ppt_第5頁
已閱讀5頁,還剩38頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

0 計算機(jī)程序設(shè)計 C 習(xí)題課 西安交通大學(xué)計算機(jī)教學(xué)實(shí)驗(yàn)中心 1 參考書 1 鄭莉 C 語言程序設(shè)計 第3版 清華大學(xué)出版社劉景 周玉龍 高級語言C 程序設(shè)計 第二版 高等教育出版社 2006 12 2 StanleyB LippmanBarbaraE MooJos eLaJoie著 李師賢等譯 C Primer中文版 第4版 人民郵電出版社 2006 3 H M Deitel 美 著 張引等譯 C 大學(xué)教程 第5版 電子工業(yè)出版社 2007 ISBN 9787121026577 4 AlStevens 美 著 林瑤 蔣曉紅 彭衛(wèi)寧譯 C 大學(xué)自學(xué)教程 電子工業(yè)出版社出版日期 2004 ISBN 7 5053 9260 3 5 林銳 高質(zhì)量C C編程指南 2001 網(wǎng)上電子版 2 第7章函數(shù)和指針 遞歸函數(shù)調(diào)用自身問題求解方法具有遞推關(guān)系有結(jié)束遞歸的基本形式函數(shù)的重載指針作參數(shù)和返回指針的函數(shù)char f1 char p int q 3 指向函數(shù)的指針double fp double fp max cout max A 帶參數(shù)的main 函數(shù)voidmain inta char argv 內(nèi)聯(lián)函數(shù)void 4 例4輸出英文月份名稱 教材函數(shù) 靜態(tài)變量 返回指針另外解法 1 不用函數(shù) 用數(shù)組 cout month i 2 char month intn char p charm 20 January February strcpy p m n returnp 5 例5通用積分函數(shù) Example7 5 用梯形積分法求解定積分的通用積分函數(shù) include includeusingnamespacestd doubleintegral doublea doubleb double fun double intn doubleh b a n doublesum fun a fun b 2 inti for i 1 i n i sum fun a i h sum h returnsum 6 測試用主函數(shù)intmain doublex1 x2 cout x1 x2 cout sin x 結(jié)果是 integral x1 x2 sin 1000 endl cout cos x 結(jié)果是 integral x1 x2 cos 1000 endl cout exp x 結(jié)果是 integral x1 x2 exp 1000 endl return0 7 習(xí)題6編寫用于去掉字符串尾部空格的函數(shù) 用遞歸實(shí)現(xiàn)char trimstr char p intl 0 char q p while q 0 l q returntrimstr1 p l char trimstr1 char p intl if p l 1 p l 1 0 trimstr1 p l 1 returnp 8 include includeusingnamespacestd voidmain chars 50 intn 0 while 1 cout Pleaseinputastringwithspaceatend endl cin getline s 50 cout s endl cout trimstr s endl 9 習(xí)題7編寫用于去掉字符串前面空格的函數(shù) 學(xué)習(xí)指導(dǎo)參考解答char myltrim char string char ptr string while ptr ptr strcpy string ptr returnstring 10 另一種解法char myltrim char string char ptr string char q while ptr ptr q string while ptr 0 q ptr q ptr q 0 returnstring 11 習(xí)題8數(shù)字轉(zhuǎn)換為英文單詞 Pleaseinputainteger 1234567890onebilliontwohundredthirtyfourmillionfivehundredsixtyseventhousandeighthundredninety 12 intmain inti cout i if i 0 cout zero intbillion i 1000000000 i i 1000000000 intmillion i 1000000 i i 1000000 intthousand i 1000 i i 1000 if billion trans999 billion cout billion if million trans999 million cout million if thousand trans999 thousand cout thousand trans999 i cout endl return0 13 voidtrans999 intn staticchar digit 10 one two three four five six seven eight nine staticchar teens 10 ten eleven twelve thirteen fourteen fifteen sixteen seventeen eighteen nineteen staticchar ties 10 twenty thirty forty fifty sixty seventy eighty ninety n n 1000 inti n 100 if i cout1 cout ties i digit j elseif i cout teens n 10 elsecout digit j 14 補(bǔ)充命令行求數(shù)據(jù)的和 plus1 12 23 34 411intmain intn char argv inti 1 doublesum 0 0 while i n 處理命令函數(shù)的多個參數(shù) sum sum atod argv i 字符串轉(zhuǎn)換為雙精度數(shù)并求和i cout sum endl return0 15 includeusingnamespacestd 將帶符號的字符串轉(zhuǎn)換為雙精度數(shù)doubleatod char str char s str doublesign 1 a 0 if s 處理符號 sign 1 s elseif s sign 1 s elsesign 1 處理整數(shù)部分while s 0 返回結(jié)果 16 第6章指針 地址變量的地址 數(shù)組的地址 函數(shù)的地址指針指針的運(yùn)算 算術(shù) 比較 下標(biāo)通過指針訪問數(shù)據(jù)指針作函數(shù)的參數(shù)動態(tài)存儲分配指針數(shù)組 17 例6 5編寫查找字典的函數(shù) 字典的存儲方法staticchar items 100 book dictionary university 單詞表staticchar explanation 100 n 書 n 詞典 n 大學(xué) 無此單詞 解釋表intN 3 單詞數(shù)量 18 includeusingnamespacestd 查找單詞char check char word staticchar items 100 book dictionary university 單詞表staticchar explanation 100 n 書 n 詞典 n 大學(xué) 無此單詞 解釋表intN 3 單詞數(shù)量inti 0 while i N 順序查找 if strcmp items i word 0 break 找到i i N時 沒有找到 對應(yīng) 無此單詞 returnexplanation i 返回解釋的指針 靜態(tài)變量 19 主函數(shù)intmain void charword 20 while 1 cout word cout word check word endl 打印單詞和解釋 return0 20 習(xí)題23位分節(jié)格式 while num 0 ptr num 10 0 num num 10 ptr k if k 3 0 ptr ptr k 0 21 第5章函數(shù) 函數(shù)的定義函數(shù)名 函數(shù)值類型 形式參數(shù) 函數(shù)體 函數(shù)頭參數(shù)缺省值 默認(rèn)值 無參數(shù) void 函數(shù)的調(diào)用實(shí)參 類型一致 位置一致 個數(shù)一致函數(shù)說明 聲明 先定義 后引用 函數(shù)間的參數(shù)傳遞值傳遞 引用傳遞函數(shù)與數(shù)組數(shù)組作參數(shù) 二維數(shù)組作參數(shù)局部變量和全局變量局部變量 全局變量 靜態(tài)變量 22 23 排序方法 冒泡排序 交換排序選擇排序插入排序 24 反轉(zhuǎn)字符串 char mystrrev char str intn 0 inti 0 while str n 0 求字符串的長度 n for i 0 i n 2 i n是字符串的長度 chartmp tmp str i 前后字符交換str i str n 1 i str n 1 i tmp returnstr 返回反轉(zhuǎn)后的字符串的指針 25 一元非線性方程 弦割法 二分法 牛頓法 牛頓迭代法 26 第4章數(shù)組與字符串 一維數(shù)組 二維數(shù)組 多維數(shù)組定義 初始化 使用 數(shù)值數(shù)組元素不能整體輸入和輸出下標(biāo)的范圍 大小為常量表達(dá)式按行存儲用一維數(shù)組array存放二維矩陣A N M 的元素M i j array i M j i j均從0開始字符串一維字符數(shù)組 二維字符數(shù)組字符數(shù)組元素可以整體輸入 輸出 結(jié)束符 0 27 例4 7計算大數(shù)的階乘 50 9 sc 進(jìn)位sum 和 去掉輸出結(jié)果前面的0 A A 28 例4 9字符串連接 intmain chardestination 81 abcdefghijklmnopqrstuvwxyz charsource ABCDEFGHIJKLMNOPQRSTUVWXYZ inti strlen destination 不使用該函數(shù)如何 intj 0 while source j 0 destination i source j destination i 0 cout Theresultis destination endl return0 29 字符串連接函數(shù)char strlink char str1 char str2 char p str1 保留起始地址while p 0 p 找到str1的末尾while str2 0 將sttr2放到str1的末尾 p str2 p str2 p 0 結(jié)束符returnstr1 返回起始地址 30 習(xí)題 成績統(tǒng)計 使用數(shù)組編寫一個統(tǒng)計學(xué)生課程平均分的程序 輸入6個學(xué)生的學(xué)號和3門課程的成績 整數(shù)形式 統(tǒng)計每個學(xué)生3門課程的平均分 整數(shù)形式 最后輸出統(tǒng)計結(jié)果 輸出格式 學(xué)號高數(shù)英語體育平均分 31 第3章控制結(jié)構(gòu) 順序 選擇 循環(huán)題目 級數(shù)求和和的初始值 通項(xiàng) 組合通項(xiàng) 逐步求和 32 例3 11 統(tǒng)計階乘n 的末尾中0的個數(shù) 對于任意給定的一個正整數(shù)n 統(tǒng)計其階乘n 的末尾中0的個數(shù) 10的因子 5 2有一對5和2 就有一個0n 中 因子2比因子5多 因此 5的個數(shù)決定了0的個數(shù) 從5開始 看N 中 5的因子的個數(shù) 33 一個數(shù)m中因子5的個數(shù) sum為因子5的個數(shù) 1 如果m 0ifm 5 0 則有一個因子5 sum 2 m m 5 轉(zhuǎn) 1 34 算法 1 5的個數(shù)sum 0 i 5 2 如果i N 轉(zhuǎn) 8 3 m i 4 若m等于0 轉(zhuǎn) 7 5 如果m 5 0 sum 6 m m 5 轉(zhuǎn) 4 7 i i 5 轉(zhuǎn) 2 8 打印N 末尾0的個數(shù)sum 35 includeusingnamespacestd intmain intn intsum 0 inti cout n for i 5 i n i i 5 只有5的倍數(shù)才含5的因子 intm i while m 0 if m 5 0 sum m m 5 cout Thenumberofzeroin n is sum endl return0 36 另一種方法sum 0 for i 5 i n i i 只有5的倍數(shù)才含5的因子 intm i while m 5 0 sum sum 1 m m 5 cout Thenumberofzeroin n is sum endl 37 includeusingnamespacestd intmain intn intsum 0 inti k cout n for i 5 i n i i 5 只有5的倍數(shù)才含5的因子 intm i for k 0 m 5 0 k m m 5 sum sum k cout Thenumberofzeroin n is sum endl return0 38 習(xí)題8分?jǐn)?shù)序列的和 有一分?jǐn)?shù)序列 即后一項(xiàng)的分母為前一項(xiàng)的分子 后項(xiàng)的分子為前一項(xiàng)分子與分母之和 求其前n項(xiàng)之和 a b 新的a b a a b b a tmp a a a b b tmp 39 習(xí)題9求和 求a aa aaa aaaa aa a n個 其中a為1 9之間的整數(shù) 例如 當(dāng)a 1 n 3時 求1 11 111

溫馨提示

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

最新文檔

評論

0/150

提交評論