全国计算机等级考试题库二级C操作题100套(第62套)
第62套:
給定程序中,函數fun的功能是:把形參s所指字符串中下標為奇數的字符右移到下一個奇數位置,最右邊被移出字符串的字符繞回放到第一個奇數位置,下標為偶數的字符不動(注:字符串的長度大于等于2)。例如,形參s所指的字符串為:abcdefgh,執行結果為:ahcbedgf。
請在程序的下劃線處填入正確的內容并把下劃線刪除,使程序得出正確的結果。
注意:源程序存放在考生文件夾下的BLANK1.C中。
不得增行或刪行,也不得更改程序的結構!
給定源程序:
解題思路:
第一處:首先判斷字符串的長度是奇數還是偶數,如果是奇數,則k=n-1,所以應填:1。
第二處:取字符串最后一個奇數位的字符,并由變量c保存,所以應填:s[k]。
第三處:第1位奇數位用最一個奇數位字符替換,所以應填:c。
給定程序MODI1.C中 fun 函數的功能是:求 s = aa… aa - … - aaa - aa - a (此處 aa… aa 表示 n 個 a, a 和 n 的值在 1 至 9 之間)
例如 a = 3, n = 6, 則以上表達式為:
s = 333333 - 33333 - 3333 - 333 - 33 - 3
其值是:296298 a 和 n 是 fun 函數的形參,表達式的值作為函數值傳回 main函數。
請改正程序中的錯誤,使它能計算出正確的結果。
注意: 不要改動 main 函數,不得增行或刪行,也不得更改程序的結構!
給定源程序:
解題思路:
第一處:根據for循環計算t的值可知,變量t的初值不正確,應為0。
第二處:每次循環都是取t除以10的值,而不是取余數,所以應改t=t/10;。
請編寫一個函數 void fun(char *tt, int pp[]),統計在tt所指字符串中 ‘a’ 到 ‘z’ 26個小寫字母各自出現的次數,并依次放在pp所指數組中。 例如,當輸入字符串:abcdefgabcdeabc 后,程序的輸出結果應該是: 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
注意: 部分源程序在文件PROG1.C中。
請勿改動主函數main和其它函數中的任何內容,僅在函數fun的花括號中填入你編寫的若干語句。
給定源程序:
解題思路:
本題是考察考生在給定的字符串中統計出26個小寫字母的次數并存入到指定的數組中且由形參返回。其中數組下標的位置可以通過某一個字符的ASCII值減去97或直接減’a’也可以,就可以得出該字符出現次數存放的位置。例如:字符為b,那么位置為’b’-‘a’=1,就是實際存放的位置。
參考答案:
總結
以上是生活随笔為你收集整理的全国计算机等级考试题库二级C操作题100套(第62套)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 好用的代码加密软件,编程,编译数据安全
- 下一篇: linux c截断文件