| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1845 人关注过本帖
标题:[求助]关于C语言的数据加密问题求助.
只看楼主 加入收藏
rejoice007
Rank: 1
等 级:新手上路
帖 子:47
专家分:0
注 册:2006-4-21
收藏
 问题点数:0 回复次数:9 
[求助]关于C语言的数据加密问题求助.

某个公司采用公用电话传递数据信息,数据是小于8位的整数.为了确保安全,在传递过程中需要加密.加密规则如下:
首先将数据倒序,然后将每位数字加上5,再用和除以10的余数代替该数字,最后将第一位和最后一位数字交换.要求通过实现数据加密的过程.

搜索更多相关主题的帖子: C语言 数据 
2006-06-04 19:30
soft_wind
Rank: 3Rank: 3
等 级:新手上路
威 望:8
帖 子:1430
专家分:0
注 册:2006-4-5
收藏
得分:0 
#include <stdio.h>
#include <string.h>
int main()
{
char str[8]={'\x0'};
int i=0,j,temp;
short *memo=NULL;
long word;
printf("Please input the digital information:");
gets(str);
memo=(short *)malloc(sizeof(short)*strlen(str));
if(memo==NULL)
exit(1);
word=atol(str);
while(word>0)
{
memo[i++]=word%10;
word/=10;
}
for(j=0;j<i;j++)
{
memo[j]+=5;
memo[j]%=10;
}
temp=memo[0];
memo[0]=memo[i-1];
memo[i-1]=temp;
j=0;
while(j<i)
str[j++]=memo[j]+48;
str[j]='\0';
puts(str);
free(memo);
getch();

忘了释放空间,重新编辑了下。
}

[此贴子已经被作者于2006-6-4 20:06:15编辑过]


对不礼貌的女生收钱......
2006-06-04 20:05
soft_wind
Rank: 3Rank: 3
等 级:新手上路
威 望:8
帖 子:1430
专家分:0
注 册:2006-4-5
收藏
得分:0 
晕,头文件还要再加上#include <stdlib.h>才行。
我原本还以为在string.h里头,查了下才知道,

对不礼貌的女生收钱......
2006-06-04 20:19
rejoice007
Rank: 1
等 级:新手上路
帖 子:47
专家分:0
注 册:2006-4-21
收藏
得分:0 

若只有用数组及循环如何完成加密的程序任务.谢谢.

2006-06-04 22:33
feng1256
Rank: 4
等 级:贵宾
威 望:14
帖 子:2899
专家分:0
注 册:2005-11-24
收藏
得分:0 
那就把数字都放一个数组里慢慢操作吧! 要是不会操作数组那就看点书

叁蓙大山:工謪、稅務、嗣發 抱歉:不回答女人的问题
2006-06-04 22:35
rejoice007
Rank: 1
等 级:新手上路
帖 子:47
专家分:0
注 册:2006-4-21
收藏
得分:0 
求助关于数据加密的问题
以下是引用rejoice007在2006-6-4 19:30:00的发言:

某个公司采用公用电话传递数据信息,数据是小于8位的整数.为了确保安全,在传递过程中需要加密.加密规则如下:
首先将数据倒序,然后将每位数字加上5,再用和除以10的余数代替该数字,最后将第一位和最后一位数字交换.要求通过实现数据加密的过程.

若只有用数组及循环如何完成加密的程序任务.谢谢.

2006-06-06 22:29
rejoice007
Rank: 1
等 级:新手上路
帖 子:47
专家分:0
注 册:2006-4-21
收藏
得分:0 
2006-06-06 22:40
rejoice007
Rank: 1
等 级:新手上路
帖 子:47
专家分:0
注 册:2006-4-21
收藏
得分:0 
怎么没人理我呀/////???????????
2006-06-06 22:41
rejoice007
Rank: 1
等 级:新手上路
帖 子:47
专家分:0
注 册:2006-4-21
收藏
得分:0 

我刚学数组与指针.请问各位大侠数组的使用方法与指针方法主要是用来做什么的.

2006-06-06 22:49
無雙隱士
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2006-9-26
收藏
得分:0 

/*用數組方法實現密碼加密*/
#include <stdio.h>
#define n 8
void main()
{
int a[n] ;
int i=0,j,ys ,t,c=0;
printf("請輸入小於數字8位的密碼");
scanf("%d",&j);

/*密码输入拆分为单个数并倒序存入数组并存入数组*/
do
{
ys=j%10;
j=j/10;

a[i]=ys;
// printf("%d",a[i]);
i++;
c++;


} while(j%10>0&&i<n);

/*密码加密轉換*/
for(i=0;i<c;i++)
{
a[i]=(a[i]+5)%10;

t=a[0];
a[0]=a[c-1];
a[c-1]=t;


}

printf("經過加密后的密碼為:");

for(i=0;i<c;i++)
{
printf("%d",a[i]);

}

printf("\n");

}

2006-09-26 04:35
快速回复:[求助]关于C语言的数据加密问题求助.
数据加载中...
 
   



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

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