ZZULIOJ 1164 字串加密

2021-10-02 14:31:55 字數 624 閱讀 6996

輸入一串字元(長度不超過100)和乙個正整數k,將其中的英文本母加密並輸出加密後的字串,非英文本母不變。加密思想:將每個字母c加乙個序數k,即用它後面的第k個字母代替,變換公式:c=c+k。如果字母為z,則後乙個字母是a,也就是字母字元形成乙個圓。

輸入第一行是若干字元,以回車結束。輸入第二行是乙個整數k,k是int範圍內的正整數;

輸出加密後的字串。

12kjsdzjk

280

12edmxtde
注意,即使通過模運算把k控制在小於26的範圍內,依然要考慮char型別溢位的問題,如'z' + 10也會超出char的表示範圍。但慶幸的是,我們只需要考慮向記憶體儲存時的char型別溢位,而在計算過程中不會溢位,因為計算過程中char會被提公升為int型別。

tips:

1 字元與數字進行運算時,運算結果會自動變成int

2   判斷此時的結果是否超出 'z'  或  'z'

#include#includeint main()

else

} else if (buf[i]>='a'&&buf[i]<='z')

else

}} puts(buf);

}

1164 字串加密

題目描述 輸入一串字元 長度不超過100 和乙個正整數k,將其中的英文本母加密並輸出加密後的字串,非英文本母不變。加密思想 將每個字母c加乙個序數k,即用它後面的第k個字母代替,變換公式 c c k。如果字母為z,則後乙個字母是a,也就是字母字元形成乙個圓。輸入 輸入第一行是若干字元,以回車結束。輸...

1164 字串加密

void memset void s,int ch,size t n 函式解釋 將s中當前位置後面的n個位元組 typedef unsigned int size t 用 ch 替換並返回 s memset 作用是在一段記憶體塊中填充某個給定的值,它是對較大的結構體或陣列進行清零操作的一種最快方法 ...

1164 字串加密

題目描述 輸入一串字元 長度不超過100 和乙個正整數k,將其中的英文本母加密並輸出加密後的字串,非英文本母不變。加密思想 將每個字母c加乙個序數k,即用它後面的第k個字母代替,變換公式 c c k。如果字母為z,則後乙個字母是a,也就是字母字元形成乙個圓。輸入輸入第一行是若干字元,以回車結束。輸入...