#include <stdio.h>
// 整型 ----> 数组
int Int_To_Array(int num, int array[])
{
int i = 0;
int len=0;
while (num)
{
array[i] = num % 10;//将数字一个一个从后到前给数组
num /= 10;
++i; //i++
++len;
}
return len;
}
// 数组 ---> 整型
int Array_To_Int(int array[], int len )
{
int num=0;
int i ;
for(i = 0; i < len; i++ )
num = num*10+array[i];//num=num*10+array[i];
return num;
}
//加密
int JiaMi(int array[], int len)
{
int i;
int temp;
for (i = 0; i < len; ++i)
array[i] = (array[i]+5) % 10;//加密规则
temp = array[len-1];
array[len-1] = array[0];
array[0] = temp;
}
//解密
int JieMi(int array[],int len)
{
int temp;
int i;
temp = array[len-1];
array[len-1] = array[0];
array[0] = temp;
for (i = 0; i < len; ++i)
array[i] = (array[i] + 5) % 10;
}
int main()
{
int num = 12345678;
int array[8]={0};
int i;
int len=Int_To_Array(num, array);
for(i = 0; i < len; i++)
printf("%d",array[i]);
printf("\n-------------\n");
JiaMi(array, len);
for(i = 0; i < len; i++)
printf("%d",array[i]);
printf("\n-------------\n");
JieMi(array,len);
for(i = 0; i < len; i++)
printf("%d",array[i]);
printf("\n-------------\n");
num=Array_To_Int(array, len);
printf("%d",num);
printf("\n-------------\n");
return 0;
}
运行结果