首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用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
30
问题
使用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://jikaoti.com/ti/DHl0FFFM
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下程序:#includeusingnamespacestd;voidfun(int&a,______________){intc;c=a;a=b;b=c;}
若已经声明了函数"intfun(intx,inty=0);",则下列重载函数声明中,正确的是
如下函数模板:templateTsquare(Tx){returnx*x;}其中T是()。
必须用一对大括号括起来的程序段是()。
有如下4个语句:①cout
有如下类声明:classHow{intk;public:~How(){cout
下列叙述中正确的是
派生类的成员函数不能访问的基类成员是
常量4.2,4.2f,4L的数据类型分别是
有如下说明:inta[10]={1,2,3,4,5,6,7,8,9,10},*p=a;则数值为9的表达式是()。
随机试题
春秋时期,最早推行什伍制的诸侯国是()
Thisnewinstrumentisfarsuperior______theoldoneweboughtthreeyearsago.
患者把衣服泡在大水缸中,并解释说我要洗刷自己的耻辱,这一症状是()
外币专门借款本金及利息所产生的汇兑差额,均应当予以费用化计入财务费用。()
当事人采用合同书形式订立合同的,签订确认书时合同成立。()
()的现象属于联觉现象。(2004年12月三级真题)
正确的班集体舆论对每个成员都具有约束、感染、同化、激励的作用。()
甲、乙两人同时从相距2000米的两地相向而行,甲每分钟行55米,乙每分钟行45米,如果一只狗与甲同时同向而行,每分钟行120米,遇到乙后,立即回头向甲跑去,遇到甲再向乙跑去。这样不断地来回,直到甲和乙相遇为止,狗跑过的距离为()米。
人民币汇率升高()。
Adultstypicallyneedseventoninehoursofsleepeachnighttofeelfullyrestedandfunctionattheirbest.However,American
最新回复
(
0
)