当前位置:编程学习 > 网站相关 >>

数字加密

某个公司采用公共用电话传递数据,数据是4位的整数,在传递工程中是加密的,加密的规则如下:每位的数字都加上5,然后用和除以10的余数代替该数字,再将第一位和第四位交换,第二位和第三位交换。请输入数据,并求出加密的数。
 
 
 
 
 
经过分析,程序如下所示:
 
 
[cpp] view plaincopy
#include<stdio.h> 
 
int main() 

 
    int num; //要输入的数据 
    int i; 
    int aa[4];//存放结果的数组 
 
    int t; 
 
    printf("请输入数据\n"); 
    scanf("%d",&num); 
 
    aa[0] = num%10; 
    aa[1] = num%100/10; 
    aa[2] = num%1000/100;  //将数据进行分离 
    aa[3] = num/1000; 
 
 
    for( i =0; i< 4;i++) 
    { 
     
        aa[i] += 5; 
        aa[i] %= 10; 
    } 
 
    for(i = 0 ;i <= 3/2;i++)//进行交换 
    { 
     
        t = aa[i]; 
        aa[i] = aa[3-i]; 
        aa[3-i] = t; 
    } 
 
    for(i = 3; i>= 0;i--)//打印输出 
        printf("%d",aa[i]); 
 
        printf("\n"); 
 
 
 
    return 0; 

 
 
 
 
执行的结果如下

\
补充:综合编程 , 安全编程 ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,