問題 C 金鑰加密法(指標應用)

2021-09-12 20:05:13 字數 877 閱讀 4080

時間限制: 1 sec  記憶體限制: 128 mb

提交: 339  解決: 252

[提交][狀態][討論版]

有一種方式是使用金鑰進行加密的方法,就是對明文的每個字元使用金鑰上對應的密碼進行加密,最終得到密文

例如明文是abcde,金鑰是234,那麼加密方法就是a對應金鑰的2,也就是a偏移2位轉化為c;明文b對應金鑰的3,就是b偏移3位轉化為e,同理c偏移4位轉化為g。這時候金鑰已經使用完,那麼又重頭開始使用。因此明文的d對應金鑰的2,轉化為f,明文的e對應金鑰的3轉化為h。所以明文abcde,金鑰234,經過加密後得到密文是cegfh。

如果字母偏移的位數超過26個字母範圍,則迴圈偏移,例如字母z偏移2位,就是轉化為b,同理字母x偏移5位就是轉化為c

要求:使用三個指標p、q、s分別指向明文、金鑰和密文,然後使用指標p和q來訪問每個位置的字元,進行加密得到密文儲存在指標s指向的位置。

除了變數定義和輸入資料,其他過程都不能使用陣列下標法,必須使用三個指標來訪問明文、金鑰和密文。

第一行輸入t表示有t個測試例項

第二行輸入乙個字串,表示第乙個例項的明文

第三行輸入乙個數字串,表示第乙個例項的金鑰

依次輸入t個例項

每行輸出加密後的密文

abcde

xenos

cegfh

cksux

#include#includeusing namespace std;

void decrypt(char *p1,int len1,char *p2,int len2)

else

}cout << endl;

}int main()

return 0;

}

金鑰加密法(指標應用)

題目描述 有一種方式是使用金鑰進行加密的方法,就是對明文的每個字元使用金鑰上對應的密碼進行加密,最終得到密文 例如明文是abcde,金鑰是234,那麼加密方法就是a對應金鑰的2,也就是a偏移2位轉化為c 明文b對應金鑰的3,就是b偏移3位轉化為e,同理c偏移4位轉化為g。這時候金鑰已經使用完,那麼又...

金鑰加密法(指標應用)

有一種方式是使用金鑰進行加密的方法,就是對明文的每個字元使用金鑰上對應的密碼進行加密,最終得到密文 例如明文是abcde,金鑰是234,那麼加密方法就是a對應金鑰的2,也就是a偏移2位轉化為c 明文b對應金鑰的3,就是b偏移3位轉化為e,同理c偏移4位轉化為g。這時候金鑰已經使用完,那麼又重頭開始使...

金鑰加密法(指標應用)

題目描述 有一種方式是使用金鑰進行加密的方法,就是對明文的每個字元使用金鑰上對應的密碼進行加密,最終得到密文 例如明文是abcde,金鑰是234,那麼加密方法就是a對應金鑰的2,也就是a偏移2位轉化為c 明文b對應金鑰的3,就是b偏移3位轉化為e,同理c偏移4位轉化為g。這時候金鑰已經使用完,那麼又...