#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#define MAX 128
void encrypt(char *str , char *toStr) ;
void decrypt(char *str , char *toStr) ;
int main()
{
char str[100] ;
char toStr[100] ;
char finStr[100] ;
printf("请输入一字符串:") ;
scanf("%s" , str) ;
thrice_Encrypt(str , toStr) ;
printf("加密后的字符串为:/n%s/n" , toStr) ;
thrice_Decrypt(toStr , finStr) ;
printf("解密后的字符串为:/n%s/n" , finStr) ;
system("pause") ;
}
void encrypt(char *str , char *toStr)
{
int add = strlen(str) % MAX ;
char str_1[100] ;
int i = 0 ;
int temp = 0 ;
while(str[i] != '/0')
{
temp = str[i] + add ;
if(temp >= MAX) /判断是否超出128 。。。
str_1[i] = str[i] + add - MAX + 1;
else str_1[i] = str[i] + add ;
i++ ;
}
str_1[i] = '/0' ;
strcpy(toStr , str_1) ;
}
void decrypt(char *str , char *toStr)
{
int sub = strlen(str) % MAX ;
char str_1[100] ;
int i = 0 ;
while(str[i] != '/0')
{
if(str[i] <= sub)
{
str_1[i] = str[i] + MAX - sub - 1;
}
else
str_1[i] = str[i] - sub ;
i++ ;
}
str_1[i] = '/0' ;
strcpy(toStr , str_1) ;
}