| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 963 人关注过本帖
标题:[求助]数据加密题。
只看楼主 加入收藏
neverTheSame
Rank: 3Rank: 3
来 自:江西农业大学
等 级:新手上路
威 望:9
帖 子:1511
专家分:0
注 册:2006-11-24
收藏
得分:0 
我想问一下,2楼的同志,
为什么要有“-‘0’” “+‘0’”?

wap酷禾网(http://wap.),提供免费的、优质的、快捷的wap资源下载服务。
2006-12-29 13:28
jojo8342
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2006-12-5
收藏
得分:0 

再次谢谢你们




自己的.

#include <stdio.h>
#include <stdlib.h>
#define N 5

void main()
{
int arr[N]={0};
int i=0;
int temp=0;
/*===========程序开始========================*/

printf("请输入%d¸个数\n" ,N);

for(i=0;i<N;i++)
{
printf("第%d¸个为: ",i+1);
scanf("%3d",&arr[i]);
fflush(stdin);
}
for(i=0;i<N/2;i++)
{
// 逆序值公式
temp=arr[i];
arr[i]=arr[N-i-1];
arr[N-1-i]=temp;
}
system("cls"); // 清屏
printf("原数据为:");

for(i=0;i<=N-1;i++)
{
printf("%3d",arr[i]);
}
printf("\n");

/*============加密程序=====================*/


printf("加密后的数据为:");

// 交换值公式
temp=arr[0];
arr[0]=arr[N-1];
arr[N-1]=temp;

for(i=0;i<N;i++)
{

// 加5再除以10取余数的公式
arr[i]=(arr[i]+5)%10;
printf("%3d",arr[i]);

}


printf("\n");

}




[此贴子已经被作者于2006-12-29 16:58:07编辑过]


2006-12-29 16:44
hujian100
Rank: 1
等 级:新手上路
帖 子:69
专家分:0
注 册:2006-9-14
收藏
得分:0 
我编的 可以根据你输入的任何号码按照上述要求加密:
#include <stdio.h>
void reverse(char *str,int);
void addmod(char *str,int);
void headtail(char *str,int);
void main()
{
int i=0;
char data[8];
gets(data);
printf("The original message is:");
puts(data);
reverse(data,8);
addmod(data,8);
headtail(data,8);
printf("The encrypted message is:");
puts(data);
}
void reverse(char *str,int n)
{
int i,j;
char temp;
for(i=0,j=n-1;i<j;i++,j--)
{
temp=str[i];
str[i]=str[j];
str[j]=temp;
}
}
void addmod(char *str,int n)
{
int i;
for(i=0;i<n;i++)
str[i]=(str[i]-'0'+5)%10+'0';
}
void headtail(char *str,int n)
{
char temp;
temp=str[0];
str[0]=str[n-1];
str[n-1]=temp;
}

2006-12-29 21:35
neverTheSame
Rank: 3Rank: 3
来 自:江西农业大学
等 级:新手上路
威 望:9
帖 子:1511
专家分:0
注 册:2006-11-24
收藏
得分:0 

我现在知道了为什么要- '0' / + '0'
因为,他们定义的数组是字符类型的,
而输入的也是字符类型的。
例如:'1' - '0'=1


wap酷禾网(http://wap.),提供免费的、优质的、快捷的wap资源下载服务。
2006-12-30 00:04
yupeng
Rank: 1
等 级:新手上路
帖 子:35
专家分:0
注 册:2006-12-28
收藏
得分:0 

14楼是对的!


理解 *高效* 自信
2006-12-30 10:36
剑风曲
Rank: 1
等 级:新手上路
帖 子:69
专家分:0
注 册:2006-11-16
收藏
得分:0 
[QUOTE]

/*
加密是可以,但
我想这个解密有一点麻烦吧*/

[/QUOTE]

好象这种对称加密的解密貌似很简单的说.
只要把密码再加密一次就变明码了.

很基础的对称加密.
例子
加密
1.7654321-->2109876
2.6109872
解密
1.6109872-->1654327
2.7654321
2006-12-30 11:47
neverTheSame
Rank: 3Rank: 3
来 自:江西农业大学
等 级:新手上路
威 望:9
帖 子:1511
专家分:0
注 册:2006-11-24
收藏
得分:0 

哦,是没有问题。
16楼说得对,
但如果不是单个的数字,解密就不行了。
例如:
23%10=3
33%10=3


wap酷禾网(http://wap.),提供免费的、优质的、快捷的wap资源下载服务。
2006-12-30 14:24
lijian3256
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2006-12-29
收藏
得分:0 
...数字0和字符0
2006-12-30 20:47
剑风曲
Rank: 1
等 级:新手上路
帖 子:69
专家分:0
注 册:2006-11-16
收藏
得分:0 
17楼的说法也许是对的,但是第一.楼主的加密方法是单个数字的,
第二,一个好的加密方法,必须具备可还原性,你说的这个可能只会出现在不成熟的加密方法里面,因为显然,你给出的例子是不可还原的.也可以说成,密文和明文并不是一一对应的,这显然是加密的大忌.
2006-12-30 20:54
mn51pj
Rank: 1
等 级:新手上路
帖 子:47
专家分:0
注 册:2006-12-1
收藏
得分:0 
看不懂
2006-12-30 22:31
快速回复:[求助]数据加密题。
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.046857 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved