首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC++6.0打开考生文件夹下的源程序文件2.cpp。阅读下列函数说明和代码,补充空出的代码。函数DecToBin(char*des,int n)的功能是将十进制数据n转换成二进制数据,并将转换结果存放在des中。 例如:58的二进制数据为11
使用VC++6.0打开考生文件夹下的源程序文件2.cpp。阅读下列函数说明和代码,补充空出的代码。函数DecToBin(char*des,int n)的功能是将十进制数据n转换成二进制数据,并将转换结果存放在des中。 例如:58的二进制数据为11
admin
2020-07-23
77
问题
使用VC++6.0打开考生文件夹下的源程序文件2.cpp。阅读下列函数说明和代码,补充空出的代码。函数DecToBin(char*des,int n)的功能是将十进制数据n转换成二进制数据,并将转换结果存放在des中。
例如:58的二进制数据为111010,则
DecToBin(char*des,58);
cout<
输出结果为:111010
注意:不能修改程序的其他部分,只能补充DecToBin(char*des,int n)函数。
试题程序:
#include
#define MAXLEN 1024
void DecToBin(char*des,int n)
{
}
void main()
{
char des[MAXLEN];
int n=58:
DecToBin(des,n);
cout<
return;
}
选项
答案
int j,i=0; char temp; while(n!=0) { des[i]=n%2+’0’; n=n/2; i++: } //转化结果为二进制最高位在des的下标最低处,顺序刚好相反 des[i]=NULL: for(j=0;j(i/2;j++) //将顺序倒过来 { temp=des[j];//交换 des[j]=des[i-1-j]; des[i-1-j]=temp: }
解析
本题为将十进制数转换成二进制数,因此采用除2求余法,通过该方法最终可以将一个十进制数转换成一个只包含1和。的数组。除2求余法得到的是。和1的数值,不是“0”和“1”字符,还需将数字转化成字符,0和1通过加上“0”的ASCII码便可得到0和1的ASCII码字符。因为除2求余法得到的字符数组是从低位到高位保存的,因此需要先倒序后再输出,可利用循环方式将顺序调转过来。
转载请注明原文地址:https://www.kaotiyun.com/show/39yp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
设循环队列为Q(1:m),其初始状态为front=rear=m。经过一系列入队与退队运算后,front=30,rear=10。现要在该循环队列中作顺序查找,最坏情况下需要比较的次数为
有如下类声明:classFin{public:Fin();//①Fin*pf;//②Finf;//③Fin&p;//④
在数据库系统中,数据模型包括概念模型、逻辑模型和
下列有关运算符重载的叙述中,正确的是()。
执行下列语句段后,输出字符"*"的个数是()。for(inti=50;i>1;i-=2)cout
下列关键字中,用来表示继承方式的是
p是指向ClassA类型对象的指针。执行deletep;时,系统自动调用
下列有关类成员的叙述中,错误的是
下列字符串中,不可以用做C++标识符的是()。
随机试题
法的规范作用不包括()。
简述亚里士多德的悲剧理论。
节律规则而强弱交替的脉搏称为
某机械(平稳负载长期工作时)相关参数为:负载转矩TL=1477N.m,启动过程中最大静阻转矩TLmax=562N.m,要求电动机转速n=2900~3000r/min,传动机械折算到电动机轴上的总飞轮力矩GD2=1962N.m2。初选笼型异步电动机,其参数为
金融市场中的赤字单位通常是指()。
某银行2009年3月20日向某商业企业发放短期贷款100万元,期限为6个月,假定该档次贷款月利率6‰。该企业在取得贷款后,没有提取现金,将该笔贷款全部转为单位活期存款,在2009年6月20前该笔活期存款没有发生任何存取行为.假定单位活期存款月利率2.25‰
下列有关收入确认的表述中,符合现行会计制度规定的是()。
“一朝被蛇咬,十年怕井绳”这属于条件作用的()。
Youaregoingtoreadalistofheadingsandatextabouthappiness.Choosethemostsuitableheadingfromthelistforeachnum
下列对于软件工程的基本原则描述中错误的是()。
最新回复
(
0
)