字符串加密和解密

本加密 的方式是将字符串中每个字符加上它在字符中的位置和一个偏移值10,以字符串“mrsoft”为例,第一个字符‘m’在字符串的位置是0,

那么它对应的密文是  m+0+10

#include "stdafx.h"

bool jiami(char yuanwen[],int inlen,char mwen[],int outlen)
{
      if(inlen<=0||outlen<inlen)
          return false;
      char temp;
      for(int i=0;i<inlen;i++)
      {
         mwen[i]=yuanwen[i]+10+i;
      }
      mwen[i]='\0';                                      //字符串结束                                     
      return true;
}

bool jiemi(char mwen[],int inlen,char yuanwen[],int outlen)
{
    if(inlen<0||outlen<inlen)
        return false;
    for(int i=0;i<inlen;i++)
        yuanwen[i]=mwen[i]-10-i;
    yuanwen[i]='\0';
    return true;
}
int main(int argc, char* argv[])
{
    char yuanwen[]="mrsoft";                                 //定义yuanwen为原字符串
    char mwen[sizeof(yuanwen)]={0};                          //定义mwen为加密后的字符串
    char jwen[sizeof(yuanwen)]={0};                          //定义jwen为解密后的字符串
    if(jiami(yuanwen,sizeof(yuanwen),mwen,sizeof(yuanwen)))  //加密函数
    {
       printf("%s的密文是%s",yuanwen,mwen);
    }
    if(jiemi(mwen,sizeof(mwen),jwen,sizeof(jwen)))           //解密函数
    {
        printf("\n%s的原文是%s\n",mwen,jwen);
    }

    printf("%d",sizeof(int));
    return 0;
}

 

posted on 2013-03-18 14:43  mrheyao  阅读(254)  评论(0编辑  收藏  举报