1048. 数字加密(20)
2017-05-13 20:22
295 查看
#include<stdio.h> #include<string.h> void swap(char *a, char *b) { char temp=*a; *a = *b; *b = temp; } int main() { char A[200]={0},B[200]={'0'},temp=0; char password[13] = {'0','1','2','3','4','5','6','7','8','9','J','Q','K'}; int i=1,j=0,A_len,B_len,x=0; for(j=0; j<200; j++) B[j] = '0'; while((temp = getchar())!=' ') { A[i++] = temp; } A_len = i-1; i = 1; while((temp = getchar())!='\n') { B[i++] = temp; } B_len = i-1; for(j=1; j<=(A_len/2); j++) swap(&A[j],&A[A_len-j+1]); for(j=1; j<=(B_len/2); j++) swap(&B[j],&B[B_len-j+1]); for(j=1; j<=A_len; j++) { if(j%2==1) { x = (B[j] + A[j] - 2*'0')%13; B[j] = password[x]; } else { x = (B[j] - A[j]); if(x<0) x = x + 10; B[j] = password[x]; } } if(B_len>A_len) { for(j=B_len; j>=1; j--) printf("%c",B[j]); printf("\n"); } else { for(j=A_len; j>=1; j--) printf("%c",B[j]); printf("\n"); } return 0; }
相关文章推荐
- 1048. 数字加密(20) PAT乙级真题
- PAT乙级.1048. 数字加密(20)
- PAT乙级 1048. 数字加密(20)
- pat乙级1048. 数字加密(20)
- PAT-乙级-1048. 数字加密(20)
- 1048. 数字加密(20)
- PAT:B1048. 数字加密(16/20)
- PAT-B 1048. 数字加密(20)
- PAT 1048. 数字加密(20)
- PAT Basic 1048. 数字加密(20)(C语言实现)
- PAT1048数字加密(20)
- 1048. 数字加密(20)PAT乙级
- 1048. 数字加密(20)
- 1048. 数字加密(20)/YHF/2016.11.22
- PATB1048.数字加密(20)
- PAT乙级—1048. 数字加密(20)-native
- 1048. 数字加密(20)
- 1048. 数字加密(20)
- PAT (Basic Level) Practise (中文) 1048. 数字加密(20)
- 自己写的1048. 数字加密(20)