首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,补充空出的代码。函数DecToBin(char*des,int n)的功能是将十进制数据n转换成二进制数据,并将转换结果存放在des中。 如:120的二进制数据为11
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,补充空出的代码。函数DecToBin(char*des,int n)的功能是将十进制数据n转换成二进制数据,并将转换结果存放在des中。 如:120的二进制数据为11
admin
2021-09-05
77
问题
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,补充空出的代码。函数DecToBin(char*des,int n)的功能是将十进制数据n转换成二进制数据,并将转换结果存放在des中。
如:120的二进制数据为1111000
例:
DecToBin(char*des,120);
cOut<
输出为:1111000
注意:不能修改程序的其他部分,只能补充DecToBin(char*des,int n)函数。
1 #include
2 #define MAXLEN 1024
3 void DecToBin(char*des,int n)
4 {
5
6 }
7 void main()
8 {
9 char des[MAXLEN];
10 int n=120 ;
11 DecToBin(deS,n);
12 cout<
13 return;
14 }
选项
答案
1 int j,i=0 ; 2 char temp; 3 while(n!=0) 4 { 5 des[i]=n%2+’0’; 6 n=n/2 ; 7 i++; 8 } //转化结果为2进制最高位在des的下标最低处,顺序刚好反了 9 des[i]=NULL; 10 for(j=0 ; j
解析
函数DecToBin(char*des,int n)的功能是实现十进制数转换成二进制数,可采用除2取余的方法来求得。由于要将最终的结果保存在字符数组中,因此在定义的函数中将将相除得到的数字0和l,再加上字符“0”的ASCII码从而实现将数字转换成ASCII码显示,考虑到除2取余得到的结果是倒序的,因此程序最后通过交换实现结果的正确显示。
[解题思路]
(1)本题为将十进制数转换成二进制数,因此采用除2求余法,通过该方法最终可以将一个十进制数转换成一个只包含1和0的数组。
(2)除2求余法得到的是0和1的数值,不是“0”和“1”字符,还需将数字转化成字符,0和1通过加上“0”的ASCII码便可得到0和l的ASCII码字符。
(3)因为除2求余法得到的字符数组是从低位到高位保存的,因此需要先倒序后再输出,可利用循环方式将顺序调转过来。
转载请注明原文地址:https://kaotiyun.com/show/cz5p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
请打开考生文件夹下的解决方案文件proj2,其中有两个类:一是销售类(sale),用于表示按照一件商品的基本价格进行销售;另一个是打折销售类(DiscountSale),用于表示在基本价格基础上按一个折扣比例进行销售。DiscountSale类继承了sal
下列关于类定义的说法中,正确的是()。
下列叙述中正确的是()。
数据库设计的四个阶段是:需求分析、概念设计、逻辑设计和()。
有如下程序:#includeusingnamespacestd;classBase{public:voidfun(){cout
下列关于栈的叙述中,正确的是
在语句“cout
下列链表中,其逻辑结构属于非线性结构的是()。
有如下语句序列:ifstreaminfile("DATA.DAT");iffinfile.good())cout
下面是一个模板声明的开始部分:templutedouble__由此可知()。
随机试题
审美形态的历史性,主要表现在【】
人眼能感觉到的光称为可见光,其波长范围是
某公司期初资产总额为300000元,当期期末负债总额比期初减少20000元,期末所有者权益比期初增加80000元。该企业期末权益总额为()元。
根据企业所得税法律制度的规定,下列各项中,关于收入确认时间的表述,不正确的有()。
新人警的小胡按公安派出所所长的要求,去街面、社区、单位进行调查研究,熟悉相关情况。下列属于治安状况调查的是()。
什么是保险利益?保险利益的构成条件有哪些?
设某次考试的学生成绩服从正态分布,从中随机地抽取36位考生的成绩,算得平均成绩为66.5分,标准差为15分。问在显著性水平0.05下,是否可以认为这次考试全体考生的平均成绩为70分?并给出检验过程。附:t分布表P{t(n)≤tp(n)}=P
使用VC++6.0打开考生文件夹下的源程序文件1.cpp,该程序运行时有错误,请补充程序中的丢失部分,使得程序运行。可以在修改处增加或者删除一条语句。本程序完成以下功能:(1)获得输入的两个数字d1,d2(d1=6,d2=1)。
【B1】【B10】
[A]soldier[B]hospital[C]cook[D]school[E]cinema[F]restaurant[G]driverHe/Shemakesfoodforyou.
最新回复
(
0
)