Computer Programming (I)

Practice Problems

Dec. 20, 2007 (Week 15)

 

1.     將上課投影片上小寫轉大寫(非英文字母的字元不變)的程式改寫成一個void function toUpperString(char s[])

2.     void function toLowerString(char s[])字串s中所有大寫字母轉為小寫,非英文字母的字元不變。

3.     function countOfX(char s[]), 回傳字串s中字元'X'出現的次數。

4.     function countOfChar(char c, char s[]), 回傳字串s中字元c出現的次數。

5.     function allLower(char s[]), 檢查字串s中是否全為小寫字母,如果全為小寫字母回傳true,否則回傳false

6.     function noLower(char s[]), 檢查字串s中是否出現小寫字母,如果沒有出現小寫字母回傳true,否則回傳false

7.     function allUpper(char s[]), 檢查字串s中是否全為大寫字母,如果全為大寫字母回傳true,否則回傳false

8.     function noUpper(char s[]), 檢查字串s中是否出現大寫字母,如果沒有出現大寫字母回傳true,否則回傳false

9.     function vowelToAsterisk(char s[]), 字串s中所有的小寫的母音字母(a, e, i, o, u)轉為星號('*'),其他字元不變。

10.  function myStrlen(char s[]), 回傳字串s的長度。你的函數應與library function中的strlen( )功能完全相同。(Hint. 用一loop由左至右找到null character,移動時順便記錄看到多少字元。)

11.  一個左右對稱的字串(例如civic, level, ABBA)叫做palindrome,寫function isPalindrome(char s[]), 檢查字串s是否為一palindrome,如果spalindrome回傳true,否則回傳false(Hint. 需先找到null character直接用strlen()也可以。)

12.  void function reverse(char s[]), 把字串s左右對調,例如字串原為"abcd#12xyz"則呼叫過reverse( )後變成"zyx21#dcba"(Hint. 需先找到null character直接用strlen()也可以。)

 

每題均需寫一main function測試你寫的function