【程序52】题目:某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则如下:每位数字都加上5,然后用和除以10的余数代替该数字,再将第一位和第四位交换,第二位和第三位交换。通过程序进行加密和解密
分析: eg. 1234 -> 6789 ->交换–>加密后:9876
#include<stdio.h>
int addm(int t)
{
int a,b,c,d,a1,b1,c1,d1,t1;
a=t/1000;
b=t/100%10;
c=t/10%10;
d=t%10;
a1=(a+5)%10;
b1=(b+5)%10;
c1=(c+5)%10;
d1=(d+5)%10;
t1=d1*1000+c1*100+b1*10+a1;
return t1;
}
int jiem(int t)
{
int a,b,c,d,a1,b1,c1,d1,t1;
a=t/1000;
b=t/100%10;
c=t/10%10;
d=t%10;
a1=(a-5)%10;
b1=(b-5)%10;
c1=(c-5)%10;
d1=(d-5)%10;
t1=d1*1000+c1*100+b1*10+a1;
return t1;
}
int main()
{
int n;
scanf("%d",&n);
int n1=addm(n);
printf("加密后为:%d\n",n1);
int n2=addm(n1);
printf("解密后为:%d",n2);
return 0;
}