首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,完成空出部分程序。函数convert(char*strOct)的功能是将八进制转换为十进制。 提示:要每一位转换,然后把转换后得到的数累加起来即可。 注意:不
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,完成空出部分程序。函数convert(char*strOct)的功能是将八进制转换为十进制。 提示:要每一位转换,然后把转换后得到的数累加起来即可。 注意:不
admin
2018-10-23
37
问题
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,完成空出部分程序。函数convert(char*strOct)的功能是将八进制转换为十进制。
提示:要每一位转换,然后把转换后得到的数累加起来即可。
注意:不能修改其他部分的代码。
1 #include<iostream.h>
2 #include<cmath>
3 int convert(char* strOct)
4 {
5
6 }
7 int main()
8 {
9 cout<<convert(’’7’’)<<end1;
10 cout<<convert(’’10’’)<<end1;
11 cout<<convert(’’1234’’)<<end1;
12 return 0;
13 }
选项
答案
1 int re=0; 2 while (*strOct) 3 { 4 re = re*8 +(*strOct) - ’0’; 5 strOct++; 6 } 7 return re;
解析
函数convert(char*strOct)的功能是将八进制转换为十进制,将八进制转换成十进制的方法是按权展开,即八进制数第0位的权值为8的0次方,第1位权值为8的1次方,第2位权值为8的2次方,依次将各位数乘上其权值,然后求和即得到相应的十进制数。
(1)定义整型变量re,re记录求得的10进制数。
(2)convert(char*strOct)的输入参数为字符指针,而不是整形数据指针,因此需要将ASCII码转换成相应的数字量,即(*strOct)-’0’。
(3)按权展开可采用循环迭代的方法,如:(123)8=((1×8)+2)×8+3,即迭代过程为上一次运算得到的结果再乘以8加现在的元素值,即re=re*8+(*strOct)-’0’。
转载请注明原文地址:https://kaotiyun.com/show/vwAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
如果使用数组名称为函数参数,形实结合时,传递的是______。
以下定义数组中错误的是
下列函数中对调用它的函数没有起到任何作用的是()。
有下列语句序列:intk=0;do{k+=5;cout<<’$’;}while(k<19);while(k-->0)cout<<’*’;执行上面的语句序列输出字符“$”和“*”的个数
如果类A被说明成类B的友元,则()。
如下程序编译时发生错误,错误的原因是show函数实现语句错误,则正确的语句应该为______。#include<iostream.h>classtest{private:inthum;public
若类A和类B的定义如下classA{inti,j;public:intgeti(){returni;}};classB:publicA{
以下不能正确创建输出文件对象并使其与磁盘文件相关联的语句是()。
将一个函数声明为一个类的友元函数必须使用关键字______。
随机试题
南宋爱国词人陈亮的词集是【】
房地产合作开发
具有麻醉药品处方权的执业医师超剂量开具麻醉药品的
按保险责任,健康保险有()。
下列关于信赖过度风险的说法中,正确的是()。
近代自然科学诞生的标志是:
低碳经济是以低能耗、低污染、低排放为基础的经济模式,其实质是提高能源利用效率和清洁能源比重,核心是能源技术创新、制度创新和人类生存发展观念的根本性转变。根据上述定义,下列属于低碳经济的是()。
许多孕妇都出现了维生素缺乏的症状,但这通常不是由于孕妇的饮食中缺乏维生素,而是由于腹内婴儿的生长使她们比其他人对维生素有更高的需求。为了评价上述结论的确切程度,以下哪项操作最为重要?
下列关于运算符重载的叙述中,错误的是()。
文成公主是西藏历史(Tibetanhistory)上最受人爱戴的皇后之一。这位美丽聪明的唐朝(theTangDynasty)公主于640年离开长安到西藏和亲(marriageofstate)。除了大量的珠宝(jewellery),文成公主还给当地带
最新回复
(
0
)