【考點(diǎn)分析】 本題考查對(duì)字符串中字符的替換?疾榈闹R(shí)點(diǎn)主要包括:字符串?dāng)?shù)組的訪問,字符之間的比較和替換,if判斷結(jié)構(gòu)以及邏輯表達(dá)式。
【解題思路】 此題屬于字符替換題型,分析題干要求,可以歸納出2個(gè)關(guān)鍵點(diǎn):關(guān)鍵點(diǎn)1如何實(shí)現(xiàn)對(duì)字符數(shù)組的元素逐一訪問;關(guān)鍵點(diǎn)2如何根據(jù)條件"把所有的小寫字母改寫成該字母的下一個(gè)字母"對(duì)字符進(jìn)行替換。
接著分析具體的解決方法,首先通過字符串處理函數(shù)strlen獲取字符串的長度,根據(jù)獲得的長度使用下標(biāo)法對(duì)字符數(shù)組的元素逐一訪問,判斷每個(gè)字符是否小寫字符,直接將字符替換為其下一個(gè)字符,其中對(duì)于小寫字母"z",要將其替換成小寫字母"a",這些可以通過if判斷結(jié)構(gòu)和邏輯表達(dá)式來完成。
【參考答案】
void ConvertCharA(void)
{
int i,j; /*定義循環(huán)控制變量*/
int str; /*存儲(chǔ)字符串的長度*/
for(i=0;i { str=strlen(xx[i]); /*求得當(dāng)前行的字符串的長度*/ for(j=0;j if(xx[i][j]>='a' && xx[i][j]<='z') /*如果是小寫字母*/ if(xx[i][j]=='z') xx[i][j]='a'; /*如果是小寫字母z,則改寫成字母a*/ else xx[i][j]+=1; /*其他的小寫字母則改寫為該字母的下一個(gè)字母*/ } } 【易錯(cuò)提示】 對(duì)字符數(shù)組進(jìn)行逐元素訪問;if判斷語句中邏輯表達(dá)式。 相關(guān)推薦: 2014年計(jì)算機(jī)等級(jí)考試過關(guān)技巧
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |