?? message.h
字號:
#include"stdio.h"
#include"stdlib.h"
#include "time.h"
#define MAX 100
#define MIN 50
int randomN()
{
int a;
srand((int)time(0));
a = rand()%MAX; //rand()函數(shù)用于生成隨機(jī)數(shù)
return a;
}
void getkey(int key[],int m)
{
int i;
for(i=1;i<=7;i++)
{
//改變其種子數(shù) 使其每次產(chǎn)生的隨機(jī)數(shù)都不相同
srand((int)time(0));
*key=randomN()%MAX;
*(key+i)=(randomN()^key[i-1]%MAX+MIN)%MAX;
}
}
//將ASCLL碼裝換成二進(jìn)制碼
void inttfmbyte(int (*p1)[8],int p2[],int m)
{
int i,j;
for( i=0; i<m; i++)
for(j=0;j<m;j++)
{
p1[i][m-1-j]=p2[i]%2;
p2[i]/=2;
}
}
//將二進(jìn)制碼轉(zhuǎn)換成ASCLL碼
void bytetfmint(int (*p1)[8],int p2[],int m)
{
int i,j,k,n=0;
for(i=0;i<m;i++)
for(j=0;j<m;j++)
{
n=p1[i][j];
for(k=1;k<m-j;k++)
n=n*2;
p2[i]+=n;
}
}
//將明文轉(zhuǎn)換成密文
void mtoc(int (*p1)[8],int (*p2)[8],int (*p3)[8],int m)
{
int i,j;
for(i=0;i<m;i++)
for(j=0;j<m;j++)
p3[i][j]=(p1[i][j]+p2[i][j])%2;
}
//將密文轉(zhuǎn)換成明文
void ctom(int (*p1)[8],int (*p2)[8],int (*p3)[8],int m)
{
int i,j;
for(i=0;i<m;i++)
for(j=0;j<m;j++)
{
if(p1[i][j]==p2[i][j])
p3[i][j]=0;
else
p3[i][j]=1;
}
}
//將字符串轉(zhuǎn)換成其ASCALL 值
long chartfmint(char str)
{
long a;
a=(long)(str);
return a;
}
//將其ASCALL 值轉(zhuǎn)換成字符串
char inttfmchar(long i)
{
char str;
str=(char)(i);
return str;
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -