教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 互联网资料 >

C++ 上机实验答案 类的定义与应用(2)

来源:网络收集 时间:2026-08-10
导读: { n = A.m*n + A.n*m; m = A.m*m; simple(); } void Rational::R_sub(Rational m = A.m*m; simple(); } void Rational::R_mul(Rational m *= A.m; simple(); } void Rational::R_div(Rational m *= A.n; simple();

{ n = A.m*n + A.n*m; m = A.m*m; simple(); }

void Rational::R_sub(Rational &A) { n = A.m*n - A.n*m; m = A.m*m; simple(); }

void Rational::R_mul(Rational &A) { n *= A.n; m *= A.m; simple(); }

void Rational::R_div(Rational &A) { n *= A.m; m *= A.n; simple(); }

void Rational::simple() { int num = 1; for(int i = 1;i<=n;i++ ) { if(n%i ==0 && m%i == 0 &&i>=num) num = i; } n = n/num; m = m/num; }

void Rational::print() { cout<

void main() { Rational R1(1,1); Rational R2(5,10); R1.R_mul(R2); R1.print();

}

(5) 定义一个类包含一个整型数的指针变量,在构造函数中用new分配10个整型数的内存空间,在析构函数中用delete释放内存空间,并编写给内存空间赋值和输出的成员函数。

#include using namespace std; class Pointer {

public:

Pointer(); ~Pointer(); private:

int *ptr; };

Pointer::Pointer() {

ptr =new int [10];

for(int i = 0;i<10;i++) cin>>ptr[i]; }

Pointer::~Pointer() {

delete ptr; }

(6) 完成String类

class String {

public:

String(const char *str = NULL); //普通构造函数 String(const String &other); //拷贝构造函数 ~ String(); //析构函数 private:

char *m_data; // 用于保存字符串 };

完成String 的3个成员函数,并编写一个主函数,在主函数中对所编写的成员函数进行测试。

/* 完成String 的3个成员函数,并编写一个主函数,在主函数中对所编写的成员函数进行测试。

*/

#include using namespace std; class String

{ public:

String(const char *str = NULL); //普通构造函数 String(const String &other); //拷贝构造函数 void display();

~ String(); //析构函数 private:

char *m_data; // 用于保存字符串 };

String::String(const char *str) { }

String::String(const String &other) {

if(other.m_data == NULL) { }

m_data = new char [1]; m_data = '\\0'; if(str = NULL) { } else {

int length = strlen(str); m_data = new char [length +1]; strcpy(m_data,str); }

m_data = new char [1]; m_data = '\\0';

else {

int length = strlen(other.m_data); m_data = new char [length +1]; strcpy(m_data,other.m_data); }

}

String::~String() { delete[] m_data;

}

void String::display() { cout<<*m_data<

void main() { const char *str = \ String string1(str); string1.display(); String string2(string1); string1.~String(); string2.display(); string2.~String(); }

7)完成Array类

class Array {

public: Array(); //所有数组元素初始化为0

int& getData(int i); //返回下标为i的数组元素的引用 void print(); //打印出所有数组元素的值 void input(); //对所有数组元素进行输入 private: int m_data[10]; };

完成Array 的成员函数,并编写一个主函数,在主函数中对所编写的成员函数进行测试。

#include using namespace std; class Array { public:

Array(); //所有数组元素初始化为0

int& getData(int i); //返回下标为i的数组元素的引用 void print(); //打印出所有数组元素的值 void input(); //对所有数组元素进行输入 private:

int m_data[10]; };

Array::Array() {

for(int num=0;num<10;num++) m_data[num] = 0; }

int& Array::getData(int i) {

return m_data[i]; }

void Array::input() {

for(int num=0;num<10;num++) cin>>m_data[num]; }

void Array::print() {

for(int num=0;num<10;num++) cout<

void main() {

Array arr; arr.print(); arr.input();

…… 此处隐藏:373字,全部文档内容请下载后查看。喜欢就下载吧 ……
C++ 上机实验答案 类的定义与应用(2).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/443373.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)