首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用“答题”菜单或使用VC6打开考生文件夹下的工程proj3,其中定义了Septinary类(七进制类),来表示一个七进制的数及其相关操作。和十进制的数“逢十进一”类似,七进制的数定义为“逢七进一”。 这里对Septinary类的数据成员做一下说明: c
请使用“答题”菜单或使用VC6打开考生文件夹下的工程proj3,其中定义了Septinary类(七进制类),来表示一个七进制的数及其相关操作。和十进制的数“逢十进一”类似,七进制的数定义为“逢七进一”。 这里对Septinary类的数据成员做一下说明: c
admin
2019-03-05
82
问题
请使用“答题”菜单或使用VC6打开考生文件夹下的工程proj3,其中定义了Septinary类(七进制类),来表示一个七进制的数及其相关操作。和十进制的数“逢十进一”类似,七进制的数定义为“逢七进一”。
这里对Septinary类的数据成员做一下说明:
char*data;//存放七进制数的每一位数,data[0]为最高位。这里假设七进制的位数不超过99位。createSeptinary函数由构造函数调用,用于将作为参数传入的十进制数转化为七进制数,并将七进制数的每一位存入data数组中。请编写createSeptinary函数使程序可以正确运行。
注意:Septinary类中提供了numberToChar成员函数,将一个[0,6]之间的数转化为对应的ASCII码值。在main函数中给出了一组测试数据,此情况下程序的输出应该是:
243
注意:只需在//**********333**********//**********
666**********之间填入所编写的若干语句,不要改动程序中的其他内容。
#include"Septinary.h"
Septinary::Septinary(intnum){
this->data=newchar[100];
this->createSeptinary(num);
}
Septinary::~Septinary(){
if(data!=NULL)
delete[]data;
}
voidSeptinary::createSeptinary(int
num){
//**********333**********
//**********666**********
}
charSeptinary::numberToChar(int
num){
if(num<0||num>7){
cout<<"errornumber"<<
end1;
return0;
}
return(char)(num+(char)’0’);
}
voidSeptinary::show(){
cout<
}
intmain(){
SeptinaryS(129);
s.show();
writeToFile("c:\\test\\");
return0;
}
//proj3\Septinary.h
#include
#include
usingnamespacestd;
classSeptinary{//七进制类
private:
char*data;
public:
Septinary(intnum);
~Septinary();
voidcreateSeptinary(intnum);
charnumberToChar(intnum);
voidshow();
};
voidwriteToFile(constchar*path);
选项
答案
intindex=0; chartemp[i00]; while(num) { temp[index++]=numberToChar (num%7); num/=7; } data[index]=-\\’0’; inti=0; while(index) { data[--index]=temp[i++]; }
解析
主要考查考生对对象成员数据处理的掌握。函数createSeptinary的功能,是将参数十进制整数num转化为七进制数,并将七进制数的每一位存入data数组中。由于转换得到的数是逆序的,这里需要临时数组temp,用来暂时存放逆序的七进制数。首先nnm对7求余,通过成员函数numberToChar将余数转换为char类型,保存在temp中,num除以7后重新赋值为除数,继续执行求余操作,直到num为0,此时七进制数已经逆序保存在temp中,最后将temp翻转保存到data中。由于在成员函数show中,可以直接将数组data当字符串输出,所以需要在data末尾添加‘\0’,来标识字符串结束。
转载请注明原文地址:https://kaotiyun.com/show/dvAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
如果算符函数调用格式的表达式:x.operator-(operator++(y,0)中的“—”是作为成员函数重载的,“++”是作为友元函数重载的,那么该表达式还可以表示为:()
软件设计包括软件的结构、数据接口和过程设计,其中软件的过程设计是指()。
以下不属于构造函数特征的是
以下选项中与k=n++;完全等价的表达式是
下列叙述中正确的是
有如下类定义:classTest{public:Test(){a=0;C=0;t//①intf(intA)const{this->a=a;}//②staticintg(){retur
下列选项中不属于软件生命周期开发阶段任务的是
下列是重载为非成员函数的运算符函数原型,其中错误的是()。
如下程序定义了“单词”类word,类中重载了<运算符,用于比较“单词”的大小,返回相应的逻辑值。程序的输出结果为:AfterSorting:HappyWelcome,请将程序补充完整。#include<iostream>#inclu
在表达式x-y中,“-”是作为非成员函数重载的运算符。若使用显式的函数调用代替直接使用运算符“-”,这个表达式还可以表示为
随机试题
要查出东汉末年黄巾起义“岁在甲子,天下大吉”口号中“甲子”的中国历史纪年及公元纪年,一般可利用的工具书有()等。
气开阀在停仪表风后处于()。
男性,24岁,反复中上腹饥饿性痛10年,加剧1小时入院。体检:血压90/60mmHg,脉搏120次/分,全腹压痛、反跳痛。
石方路基进行压实项目的检测方法是灌砂法。()
图为某城市火车站地区局部的道路网布局方案示意,C-C为城市快速路,与主干道5-5交叉处已建有互通式立交,与火车站相通的南北轴线B/5-B/7为生活性干道。其他道路为城市主次干道。请你分析该方案存在的主要问题,并提出改进意见。
根据现行《企业会计准则》,下列交易事项中,应计入下期利润表的是()。
保险合同的变更应在保险合同有效期内( )。
根据以下情境材料,回答问题。孙某涉嫌殴打他人致人重伤,案发后的第二天,民警张某和王某去孙某家中对他进行了口头传唤,要求孙某去派出所接受调查。但是孙某提出没有书面传唤证,不接受传唤。因此,民警张某和王某对孙某采取了强制传唤的方法。孙某被强制传唤到派出所后,
下列有关租赁合同与融资租赁合同异同的表述,不正确的是()(2011年非法学基础课单选第40题)
Martin,whenyougotothemeetingtomorrow,______youriPadwithyou.
最新回复
(
0
)