1048 數字加密 20分

2022-08-18 02:12:13 字數 1039 閱讀 5150

1048 數字加密 (20分)

本題要求實現一種數字加密方法。首先固定乙個加密用正整數 a,對任一正整數 b,將其每 1 位數字與 a 的對應位置上的數字進行以下運算:對奇數字,對應位的數字相加後對 13 取餘——這裡用 j 代表 10、q 代表 11、k 代表 12;對偶數字,用 b 的數字減去 a 的數字,若結果為負數,則再加 10。這裡令個位為第 1 位。

輸入在一行中依次給出 a 和 b,均為不超過 100 位的正整數,其間以空格分隔。

在一行中輸出加密後的結果。

1234567 368782971

3695q8118

**講解:這題很坑爹啊,一看看上去感覺很容易,寫了**之後,總有倆個過不去,我就試驗了

幾種情況,終於讓我試驗通過了,原來當它b字串較小的時候,還是要繼續算的。。。這種只能

通過試驗去發現,算埋伏的乙個坑吧

#include

#include

int main()

;char b[201]=;

scanf("%s %s",a,b);

int count=0;

int i,j,k;

int temp;

int str_lena=strlen(a);

int str_lenb=strlen(b);

int str_len=str_lena>str_lenb?str_lena:str_lenb;

char  c[str_len+1];

for(k=str_len-1,i=str_lena-1,j=str_lenb-1;k>=0;k--,i--,j--)

else

c[k]=temp;

}for(i=str_len-1;i>=0;i--)

}c[str_len]=0;

printf("%s",c);

printf("\n");

return 0;

}

1048 數字加密(20 分)

本題要求實現一種數字加密方法。首先固定乙個加密用正整數 a,對任一正整數 b,將其每 1 位數字與 a 的對應位置上的數字進行以下運算 對奇數字,對應位的數字相加後對 13 取餘 這裡用 j 代表 10 q 代表 11 k 代表 12 對偶數字,用 b 的數字減去 a 的數字,若結果為負數,則再加 ...

1048 數字加密(20 分)

1048 數字加密 20 分 本題要求實現一種數字加密方法。首先固定乙個加密用正整數 a,對任一正整數 b,將其每 1 位數字與 a 的對應位置上的數字進行以下運算 對奇數字,對應位的數字相加後對 13 取餘 這裡用 j 代表 10 q 代表 11 k 代表 12 對偶數字,用 b 的數字減去 a ...

1048 數字加密 (20 分)

1048 數字加密 20 分 本題要求實現一種數字加密方法。首先固定乙個加密用正整數 a,對任一正整數 b,將其每 1 位數字與 a 的對應位置上的數字進行以下運算 對奇數字,對應位的數字相加後對 13 取餘 這裡用 j 代表 10 q 代表 11 k 代表 12 對偶數字,用 b 的數字減去 a ...