请使用“答题”菜单或使用VC6打开考生文件夹下的工程proj3,其中定义了Septinary类(七进制类),来表示一个七进制的数及其相关操作。和十进制的数“逢十进一”类似,七进制的数定义为“逢七进一”。 这里对Septinary类的数据成员做一下说

admin2015-07-24  26

问题 请使用“答题”菜单或使用VC6打开考生文件夹下的工程proj3,其中定义了Septinary类(七进制类),来表示一个七进制的数及其相关操作。和十进制的数“逢十进一”类似,七进制的数定义为“逢七进一”。
    这里对Septinary类的数据成员做一下说明:
    char*data;//存放七进制数的每一位数,data[0]为最高位。这里假设七进制的位数不超过99位。ereateSeptinary函数由构造函数调用,用于将作为参数传入的十进制数转化为七进制数,并将七进制数的每一位存入data数组中。请编写ereateSeptinary函数使程序可以正确运行。注意:Septinary类中提供了humberToChar成员函数,将一个[0,6]之间的数转化为对应的ASCII码值。在main函数中给出了一组测试数据,此情况下程序的输出应该是:
    243
    注意:只需在//********333********和//********666********之间填入所编写的若干语句,不要改动程序中的其他内容。
    #include"Septinary.h"
    Septinary::Septinary(int num){
    this->data=new char[100];
    this->createSeptinary(hum);
    }
    Septinary::一Septinary(){
    if(data!=NULL)
    delete[]data;
    }
    void Septinary::createSeptinary(int hum){
    //********333********
    //********666********
    }
    char Septinary::numberToChar(int Bum){
    if(Bum<0 || hum>7){
    cout<<"error number"<    return 0;
    }
    return(char)(num+(char)0);
    }
    void Septinary::show(){
    cout<    }
    int main(){
    Septinary S(129);
    s.show();
    writeToFile("c:\test\");
    return 0;
    }
    //proj3\Septinary.h
    #include
    #include
    using namespaee std;
    class Sepfinary{    //七进制类
    pfivate:
    char*data;
    public:   
    Septinary(int num);
    ~Septinary();
    void createSeptinary(int num);   
    char numberToChar(int hum);   
    void show();
    };   
    void writeToFile(eonst char*path);

选项

答案for(int i=count-1;i>=pes;i--) { elem[i+1]=elem[i]; } elem[pos]=data; count++:

解析 主要考查考生对对象处理的掌握,函数insert的功能是将一个指定的整数data插入到列表的指定位置pos处,原位置处的及其后的所有元素依次向后顺移一个位置。首先通过比较count.与MAx_SIZE判断存储空间是否已满,若存储空间已满,直接返回;然后判断插入的位置是否在当前数组最后元素之后,若是,则紧贴最后元素之后插入新元素即可;最后使用for循环,将pos位置及其之后的所有元素向后顺移一位,再将data插入pos位置,同时更新count的值。
转载请注明原文地址:https://kaotiyun.com/show/d0Np777K
0

最新回复(0)