首页 新闻 会员 周边

c++密码的简单加密,不会找问题,求助。文件用法。

0
悬赏园豆:10 [待解决问题]

#include<stdio.h> #include<string.h> #include<ctype.h> #include<fstream> #include <iostream> using namespace std;

int main() {  int i=0;  char MingText[1024], MiText[1024];  printf("请输入明文:");  gets(MingText);

 while(MingText[i])  {  if(isupper(MingText[i]))  {  MiText[i]='Z'-(MingText[i]-'A');  }  else if(islower(MingText[i]))  {  MiText[i]='z'-(MingText[i]-'a');  }  else MiText[i]=MingText[i];  i++;  }  ofstream tfile("C://data.txt",ios::binary);  tfile.write((char* )& MiText,sizeof  MiText) ;  tfile.close();  MiText[i]=0;  printf("密文为:");  puts(MiText);

 ifstream is("C://data.txt");  if(is)  {   is.read((char *)&MiText,sizeof(MiText));  }  else  {   cout << "无法找到文件!" <<endl;  }

 while(MiText[i])  {   if(isupper(MingText[i]))  {   MingText[i]='Z'-MiText[i]+'A';  }  else if(islower(MingText[i]))  {   MingText[i]='z'-MiText[i]+'a';  }  else MingText[i]=MiText[i];  i++;  }  return 0; }

此夏、若空的主页 此夏、若空 | 初学一级 | 园豆:192
提问于:2016-06-03 10:50
< >
分享
所有回答(2)
0

什么错? 最好把错误贴出来

小刺猬001 | 园豆:660 (小虾三级) | 2016-06-03 11:18

运行没错误,就是结果不正确.

支持(0) 反对(0) 此夏、若空 | 园豆:192 (初学一级) | 2016-06-04 10:02

@此夏、若空: 结果不对 ,要么你代码里i这种边界判断出问题了,要么就是加密算法出问题了。

 

你的代码排版好乱,我这么懒,没耐心看啊~

支持(0) 反对(0) 小刺猬001 | 园豆:660 (小虾三级) | 2016-06-04 10:38
0

解密之前,需要初始化 i = 0; (加密之后 i = strlen(MingText))

Yip21st | 园豆:222 (菜鸟二级) | 2016-06-04 23:03
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册