任意給定乙個字串,與兩個編碼表,要求對該字串進行加密。字串中只包含大寫字母與小寫字母。編碼表是字母表的乙個重新排列,第乙個編碼表為大寫字母編碼表,第二個編碼表為小寫字母編碼表。
例如:字母表為:
(大寫字母表:abcdefghijklmnopqrstuvwxyz)
(小寫字母表:abcdefghijklmnopqrstuvwxyz)
編碼表為:
(大寫字母編碼表: jklmqryzabcistnopdghxefuvw)
(小寫字母編碼表: bcljakfxpdqweozrsthiymnguv)
編碼表的功能是根據字母在字母表中的序號,把該字母替換成編碼表中相應序號上的字母。
例如,字母『a』在字母表中序號為1,而大寫字母編碼表中序號為1的是字母『j』,因此『a』被編碼為『j』,而字串「acdza」將編碼為「jlmvb」。
字串加密過程:
首先把待加密字串中所有的字母改寫成該字母的下乙個字母,字母如果為『z』或『z』則分別改寫成字母『a』或『a』。然後將新得到的字串根據兩個編碼表進行編碼。編碼後的字串即為結果字串。
輸入與輸出要求: 輸入三個字串,第乙個字串為非空的待加密的字串,長度不大於100,該字串中只可能出現大寫字母與小寫字母。第二個字串為大寫字母編碼表,即26個大寫字母,每個大寫字母只能出現一次。第三個字串為小寫字母編碼表,即26個小寫字母,每個小寫字母只能出現一次。輸出結果字串,佔一行。
三個字串,第乙個字串為非空的待加密的字串,長度不大於100,該字串中只可能出現大寫字母與小寫字母。第二個字串為大寫字母編碼表,即26個大寫字母,每個大寫字母只能出現一次。第三個字串為小寫字母編碼表,即26個小寫字母,每個小寫字母只能出現一次。
結果字串,佔一行。
ilovelanguagecopdghstabnryzc**klmixefuvw
hpzaeongxrbcljwtskfymdqiuv
nltqolpwgdpgog
#include
#include
intmain()
if(islower
(a[i]))
}printf
("%s"
,a);
return0;
}
u為大寫字母編碼表,l為小寫字母編碼表。注意整形與字元型的轉換。 1077 字串加密
time limit 1 sec memory limit 128 mb submit 5589 solved 2760 submit status web board 輸入一串字元 長度不超過100 和乙個正整數k,將其中的英文本母加密並輸出加密後的字串,非英文本母不變。加密思想 將每個字母c加乙...
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 作用是在一段記憶體塊中填充某個給定的值,它是對較大的結構體或陣列進行清零操作的一種最快方法 ...