C语言加密程序问题! 帮帮忙了!

一个加密程序:程序读取一个四位整数,然后按如下规则加密:每位数字都加上7,然后用和除以10的余数取代该数字;再把第1位和第3位交换,第三位与第4位交换。再单独编写一个程序,读取一个加密后的四位数字,把它解密成原来的数。

第三位与第4位交换
应该是第2位与第4位交换吧?

void main();
{
int in_data = 0;
int temp_data[4];
scanf("%d",&in_data);

temp_data[0] = in_data /1000;
temp_data[1] = in_data /100 % 10;
temp_data[2] = in_data /10 % 100;
temp_data[3] = in_data /1 %1000;

for(int i = 0;i <4;i++);
in_data = temp_data[i]+28;

in_data = in_data % 10;
temp_data[0] = in_data /1000;
temp_data[1] = in_data /100 % 10;
temp_data[2] = in_data /10 % 100;
temp_data[3] = in_data /1 %1000;

in_data = temp_data[2] * 1000 + temp_data[3] * 100 + temp_data[0] * 10 + temp_data[1];
printf("%d\n",in_data);
}

解密反过来操作就可以了
温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答
大家正在搜