使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,完成空出部分程序。函数fun(int n)的功能是实现对一个整数的加密,具体的加密方法是:一个四位长的整数,每位数字加上3然后除以9的余数代替该数字,再将第一位和第四位交换,

admin2019-05-29  30

问题 使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,完成空出部分程序。函数fun(int n)的功能是实现对一个整数的加密,具体的加密方法是:一个四位长的整数,每位数字加上3然后除以9的余数代替该数字,再将第一位和第四位交换,第二位和第三位交换,然后返回得到的密码。
程序输出:
7654
2108
注意:不能修改其他部分的代码。
#include<iostream.h>
#include<cmath>
int fun(int n)
{

}
int main()
{
int i=1234;
cout<<fun(i)<<endl;
i=5678;
cout<<fun(i)<<endl;
return0;
}

选项

答案int i,a[4],t; a[0]=n%10;//取整型n的第一位数字 a[1]=n%100/10;//取整型n的第2位数字 a[2]=n%1000/100;//取整型n的第3位数字 a[3]=n/1000;//取整型n的第4位数字 for(i=0;i<=3;i++)//每位数字加3,取余 { a[i]+=3; a[i]%=9; } t=a[0];//根据加密算法交换 a[0]=a[3]; a[3]=t; t=a[1]; a[1]=a[2]; a[2]=t; return a[3]*1000+a[2]*100+a[1]*10+a[0];//重组,返回加密数字

解析 (1)首先取得要加密整数的每一位数字,并存入数组。
(2)根据加密算法,首先利用循环实现每位数字加3,除以9取余。
(3)然后根据加密算法进行数字交换,最后重组,返回密码。
转载请注明原文地址:https://jikaoti.com/ti/LXA0FFFM
0

相关试题推荐
最新回复(0)