大學(xué)生C語言程序設(shè)計(第四版譚洪強(qiáng))實驗6答案參考_第1頁
大學(xué)生C語言程序設(shè)計(第四版譚洪強(qiáng))實驗6答案參考_第2頁
大學(xué)生C語言程序設(shè)計(第四版譚洪強(qiáng))實驗6答案參考_第3頁
大學(xué)生C語言程序設(shè)計(第四版譚洪強(qiáng))實驗6答案參考_第4頁
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡介

1、文檔供參考,可復(fù)制、編制,期待您的好評與關(guān)注! 實驗六 參考答案(參考答案)(1) 設(shè)計程序sy6-1.c,輸入一個字符串,將其中的大寫字母都改為對應(yīng)的小寫字母,其他字符不變。例如,若輸入Ab,cD,則輸出ab,cd。算法分析:使用for循環(huán)遍歷字符串,在遍歷的過程中,如果該元素是大寫字母時,能過stri=stri+32把大寫字母置換成相應(yīng)小寫字母參考答案:#include#includevoid main()char str100;int i;printf(請輸入一個字符串:);gets(str);for(i=0;stri!=0;i+) if(stri=A&stri=Z) stri=stri

2、+32;printf(輸出轉(zhuǎn)換后的字符串:);puts(str);運行結(jié)果:(2) 設(shè)計程序sy6-2.c,輸入一個字符串,刪除其中所有的小寫字母c。例如,若輸入字符串a(chǎn)c abc bcdef,則應(yīng)輸出字符串 a ab bdef算法分析: 在原字符數(shù)組中刪除指定字符時,當(dāng)遍歷的字符不等于要刪除的字符時,在原數(shù)組中賦值。注意在賦值的時候,元素下標(biāo)不同步,所以用j做為刪除后的下標(biāo),并且是賦一個值,其下標(biāo)自動加1,所以最后j的值為數(shù)組的長度,另外為了保證字符數(shù)組能正確輸出,所以在最后要人為加一個0參考答案:#include#includevoid main()int i,j=0;char str20

3、;printf(請輸入一個字符:);gets(str);for(i=0;stri!=0;i+) if(stri!=c)strj+=stri; /將指定字符c刪除strj= 0;printf(請輸入一個字符:);puts(str);運行結(jié)果:(3) 設(shè)計程序sy6-3.c,輸入一個字符串,統(tǒng)計其中 a 到 z 26 個英文小寫字母各自出現(xiàn)的次數(shù)。 例如運行時輸入字符串:abcdefgabcdeabc 后,則輸出的結(jié)果應(yīng)該是:3 3 3 2 2 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0算法分析: 用a數(shù)組的a0(其中0下標(biāo)是a-a)存放a字符的個數(shù),a1(

4、其中1下標(biāo)是b-a)存放b字符的個數(shù),astri-a(其中stri-a下標(biāo)是stri字符對應(yīng)存儲個數(shù)的下標(biāo))存放stri字符的個數(shù)。因此在程序中只需用stri-a作為a下標(biāo)的元素進(jìn)行自加即可。參考答案:#includevoid main()char str100;int i,a26=0; /分別統(tǒng)計26小寫字母的個數(shù),初始時都為0個printf(請輸入一個字符串:);gets(str);for(i=0;stri!=0;i+) if(stri=a&stri=z) /是小寫字母才統(tǒng)計 astri-a+; /stri-a作為a數(shù)組下標(biāo)的元素進(jìn)行自加,/即可使相應(yīng)統(tǒng)計個數(shù)的元素值加一for(i=0;i

5、26;i+) /輸出統(tǒng)計結(jié)果 printf(%c:%-3d,a+i,ai);運行結(jié)果:(4) 設(shè)計程序sy6-4.c,將一個數(shù)字字符串轉(zhuǎn)換為一個整數(shù)(不得調(diào)用 C 語言提供的將字符串轉(zhuǎn)換為整數(shù)的函數(shù))。例如,若輸入字符串-1234,則函數(shù)把它轉(zhuǎn)換為整數(shù)值 -1234。算法分析:將數(shù)字字符轉(zhuǎn)換成數(shù)字的做法是,將該數(shù)字字符減去0字符,在轉(zhuǎn)換時需要逐個字符判斷為數(shù)字字符才轉(zhuǎn)換,不是不轉(zhuǎn)換。為了保證轉(zhuǎn)換的數(shù)字為一個原順序的整數(shù),則把s*10后再把轉(zhuǎn)換后的數(shù)字累加入s中。最后再對字符串中的第一個字符進(jìn)行判斷看是否是-;如果是,則把s置成-s即可參考答案:#includevoid main()char s

6、tr100;int i,s=0;printf(請輸入一個字符串:);gets(str);for(i=0;stri!=0;i+) /逐一把每個數(shù)字字符轉(zhuǎn)換累加到數(shù)s中 if(stri=0&stri=9) s=s*10+stri-0;if(str0=-) s=-s; /判斷符號位printf(result=%dn,s);運行結(jié)果:(5) 設(shè)計程序sy6-6.c,將放在字符串?dāng)?shù)組中的 M 個字符串(每串的長度不超過 N),按順序合并組成一個新的字符串。 例如,字符串?dāng)?shù)組中的 M 個字符串為: AAAA BBBBBBB CC 則合并后的字符串的內(nèi)容應(yīng)是:AAAABBBBBBBCC。算法分析: 首先對p串初始化為0再將s中的每個字符串連接在p串的后邊。但要注意將string.h包含在程序中參考答案:#include #include #define M 3 #define N 80 main() char sMN=AAAA,BBBB

溫馨提示

  • 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

提交評論