首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用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
2019-01-19
85
问题
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,补充空出的代码。函数DecToBin(char*des,int n)的功能是将十进制数据n转换成二进制数据,并将转换结果存放在des中。
如:120的二进制数据为1111000
例:
DecToBin(char*des,120);
cout<<des<<end1;
输出为:1111000
注意:不能修改程序的其他部分,只能补充DecToBin(char*des,int n)函数。
1 #include<iostream.h>
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<<des<<end1;
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<i/2;j++) //将顺序倒过来 11 { 12 temp=des[j];//交换 13 des[j]=des[i-1-j]; 14 des[i-1-j]=temp; 15 }
解析
函数DecToBin(char*des,int n)的功能是实现十进制数转换成二进制数,可采用除2取余的方法来求得。由于要将最终的结果保存在字符数组中,因此在定义的函数中将将相除得到的数字0和1,再加上字符“0”的ASCII码从而实现将数字转换成ASCII码显示,考虑到除2取余得到的结果是倒序的,因此程序最后通过交换实现结果的正确显示。
(1)本题为将十进制数转换成二进制数,因此采用除2求余法,通过该方法最终可以将一个十进制数转换成一个只包含1和0的数组。
(2)除2求余法得到的是0和1的数值,不是“0”和“1”字符,还需将数字转化成字符,0和1通过加上“0”的ASCII码便可得到0和1的ASCII码字符。
(3)因为除2求余法得到的字符数组是从低位到高位保存的,因此需要先倒序后再输出,可利用循环方式将顺序调转过来。
转载请注明原文地址:https://kaotiyun.com/show/vgAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
详细设计的结果基本决定了程序最终的
派生类构造函数的执行顺序是先执行______的构造函数,然后执行成员对象的构造函数,最后执行______的构造函数。
有如下的程序:#include<cstring.h)#ingclude<iostream.h)usingnamespacestd;ClassMyString{public:MyString(const
下列叙述中正确的是()。
类中包含了一个静态成员函数,则main函数中和P.f1(P);语句具有同样功能的语句为______。#include<iostream.h>classM{public:M(intA){A=a;B+=a;}static
设有定义:classC{public:intvalue;…};intx,*p;则以下引用形式中,正确的是
一个函数功能不太复杂但要求被频繁调用,应选用
数据处理的最小单位是
数据结构分为逻辑结构和存储结构,循环队列属于______结构。
关于关键字class和typename,下列说法中正确的是
随机试题
美国现实主义文学的杰出代表是___________。他的第一个短篇小说是___________,代表作是___________。
某医院神经内科有床位42个,其中一级护理30人,二级护理12人,每名一级护理患者24小时所需的平均护理时效为5.5小时,每名二级护理患者24小时所需的平均护理时数为3小时,一天的护理项目所需时间为30小时,该科室平均护理时数为
口外弓-肌激动器矫治器中口外弓的主要作用是
对竞争性抑制作用描述错误的是
患者,男,48岁。因腰疾,服用舒筋丸,服后出现头痛、头晕,烦躁不安,面部肌肉紧张,吞咽困难,进而伸肌和屈肌同时出现极度收缩,发生典型士的宁惊厥、痉挛。诊断为服用含马钱子的舒筋丸的中毒反应。服用含马钱子类药物中毒,出现痉挛时,主要对症治疗方法是注射
在外科感染病人的护理措施中抬高患肢的意义是
关于按套内建筑面积或者建筑面积计价的面积误差的处理方式的表述,错误的是()。
持有公司资本的一定份额并享有股东权利的人称为()。
关于《开皇律》内容,下列说法错误的是
在考生文件夹下有一个数据库文件“samp3.accdb”,里面已经设计好表对象“tBorrow”、“tReader”和“tRook”,查询对象“qT”,窗体对象“fReader”,报表对象“rReader”和宏对象“rpt”。请在此基础上按以下要求补充设计
最新回复
(
0
)