首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,完成空出部分程序。函数fun(int n)的功能是实现对一个整数的加密,具体的加密方法是:一个四位长的整数,每位数字加上3然后除以9的余数代替该数字,再将第一位和第四位交换,
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,完成空出部分程序。函数fun(int n)的功能是实现对一个整数的加密,具体的加密方法是:一个四位长的整数,每位数字加上3然后除以9的余数代替该数字,再将第一位和第四位交换,
admin
2017-03-22
73
问题
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,完成空出部分程序。函数fun(int n)的功能是实现对一个整数的加密,具体的加密方法是:一个四位长的整数,每位数字加上3然后除以9的余数代替该数字,再将第一位和第四位交换,第二位和第三位交换,然后返回得到的密码。
程序输出:
7654
2108
注意:不能修改其他部分的代码。
#include
#include
int fun(int n)
{
}
int main()
{
int i=1234;
cout<
i=5678;
cout<
return 0;
}
选项
答案
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://www.kaotiyun.com/show/unAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
以下for语句中不是死循环的是
下列数据结构中,按先进后出原则组织数据的是
软件测试的常用方法通常可分为白盒测试和【】。前者是根据程序的内部逻辑来设计测试用例,后者是根据软件的规格说明来设计测试用例。
若有以下程序:#include<iostream>usingnamespacestd;#definePI3.14classPoint{private:intx
若有以下程序:#include<iostream>usingnamespacestd;classsample{private:intn;public:sample(){}
数据库设计包括两个方面的设计内容,它们是
下列说法中,不属于数据模型所描述的内容的是
对建立良好的程序设计风格,下面描述正确的是
有如下类定义:classSample{public:Sample();~Sample();private:staticintdata;};将静态数据成员data初始化为0的语句是【】。
有三个关系R,s和T如下:其中关系T由关系R和s通过某种操作得到,该操作为
随机试题
通行字的安全存储有哪些方法?
用于诱导麻醉的药物是
在双代号或单代号网络计划中,工作的最早开始时间应为其所有紧前工作( )。
渠道中线测量的主要内容有()等。
闭胸式的泥水加压盾构属于()盾构。
维果斯基的最近发展区指的是()
“五卅”运动
关于青少年牙周炎的叙述,以下正确的是()。
对于“代理人在代理权限范围内实施代理行为”的理解正确的是()
A、 B、 C、 B
最新回复
(
0
)